R/MRatCalcpowered by RiX

RiX walkthrough 15 f

Explore form-preserving functions

Keep polynomial and quotient forms visible while applying expansion, recentering, combination, and cancellation explicitly.

Use .ff for both preserved polynomial forms and fractional forms. Values are ordinary callables.

Runnable RiX

Operations preserve their construction

Addition and multiplication retain their expression trees. Together is an explicit choice.

Runnable RiX

Expand and recenter explicitly

Runnable RiX

Compare form, value, and function domain

Runnable RiX

C displays a cancelled form but still has the source hole at 1. Crossing to canonical RationalFunction semantics is explicit.

Runnable RiX

Calling C(1) still reports division by zero, while F.Canonical()(1) is 2.

Canonical projections

Runnable RiX

Verified presentations that retain the source domain

Factorization, square-free decomposition, and partial fractions operate on the canonical exact projection. Their FractionFunction wrappers keep the original domain authoritative:

Runnable RiX

factored.Source()(1) still fails because the source denominator is zero. factored.Canonical()(1) is 2; that is an explicitly requested canonical projection, not a widening of the source function's domain.

Zeros, poles, and removable holes

Runnable RiX

The canonical zero is -1, there are no canonical poles, and the cancelled source restriction gives the removable hole at 1. When an irreducible factor remains, verified still certifies the displayed algebra while complete stays null and the residual polynomial records what is not yet enumerated.

For a classroom comparison, render all three transformations together or one at a time:

Runnable RiX

Export forms and restrictions to Calculus

.symbolic loads FractionFunction and Calculus together. Displayed and source-domain evaluation forms cross the public expression boundary separately, so cancellation cannot hide a removable hole:

Runnable RiX

Differentiate the exported form with the obligation-bearing Calculus result:

Runnable RiX

The derivative result retains the quotient's nonzero denominator condition. .symbolic.Obligations(F) exposes the same source-domain restriction directly from FractionFunction metadata.

Polynomial FractionFunctions also use the higher-derivative and evaluation façades without leaving the public Calculus representation:

Runnable RiX

They can also formulate integral records without erasing source-domain holes:

Runnable RiX

Both records inherit x != 0 from the FractionFunction. The family merely selects Log(x) as a representative plus an explicit constant; it does not silently certify the identity or discharge the restriction.

Reactive forms

Runnable RiX