DifferenceRoot
A holonomic (P-recursive) sequence object — a linear recurrence with polynomial(n) coefficients plus enough initial values, exactly as DifferenceRootReduce emits it. Applied to a concrete non-negative integer , it runs the recurrence forward in exact rational arithmetic; applied to a symbolic (or anything else it can't run), it stays inert. Provided by @enumeratio/analytic.
Wolfram Language
DifferenceRootDifferenceRoot(fn)(n0)the sequence's value at , running the recurrence stored in fn forward from whichever initial condition is closest below .Typed signatures
| Type | Package | Applies |
|---|---|---|
(any) -> any | analytic | always |
Details
- Ordinarily built by DifferenceRootReduce rather than by hand — the examples below construct one directly to show the evaluation contract on its own.
- Evaluation is attached to the native
Applyoperator (never redeclares it — see derivatives.ts's ownDerivative/Dhook for the same pattern), so it only intercepts a call whose head isDifferenceRoot(...); every otherApplycall is untouched. - Declines (stays symbolic) at a step whose leading coefficient evaluates to exactly 0 with no initial condition to jump to instead, and at a negative or non-integer target.
Examples
1 more kept as data, checked against the oraclesProperties #
About
| Examples | 4 |
|---|---|
| Crosswalk | Wolfram Language |
See also: DifferenceRootReduce, DifferentialRoot