6

How do FindGeneratingFunction and FindSequenceFunction work?

How might one implement similar functionality from scratch in Mathematica? I am looking for a description of a reasonable algorithm, not necessarily code. I am more interested in any computer algebra methods to solve this problem than in the specifics of the particular implementation Mathematica uses.

J. M.'s missing motivation
  • 124,525
  • 11
  • 401
  • 574
Szabolcs
  • 234,956
  • 30
  • 623
  • 1,263

1 Answers1

2

In Mathematica,some function is classified as kernel function,such as Sin,UnitStep or Abs and so on.We can use System`Private`HasAnyCodesQ to judge it is kernel function or not,I have metioned it in this post this answer recently.If the function is not a kernel function.Since they all are not,we can use GeneralUtilities`PrintDefinitions to get some some information of what you want.

<<GeneralUtilities`;GeneralUtilities`PrintDefinitions[FindGeneratingFunction]

http://o8aucf9ny.bkt.clouddn.com/2016-12-13-07-03-03.png

We can see the work fuction is call a name of findGeneratingFunctionParser,click on it.You will get its page of definition,then you will see findGeneratingFunctionDispatcher,findGeneratingFunctionPoints and iFunctionSpace.We can know it find generation function in 5 case: http://o8aucf9ny.bkt.clouddn.com/2016-12-13-07-09-55.png

You can use same method to find some information for FindSequenceFunction.Those information is more useful to you maybe.It's very clear.

yode
  • 26,686
  • 4
  • 62
  • 167