Transform an exact polynomial
Normalize, evaluate, divide, and display a polynomial using exact rational arithmetic.
Normalize and round-trip exact coefficients
Leading zeros disappear, while rational coefficients stay exact. Record contains everything needed to reconstruct the same canonical polynomial.
Verify a factor and show synthetic division
The transformation retains exact quotient/remainder objects and factor metadata. Its Grid is the same portable layout family as intrinsic .Algebra.SyntheticDivision, so document and terminal renderers can display it.
Inspect exact factor evidence
The evidence distinguishes discovered rational factors from the residual and verifies exact reconstruction rather than relying on approximate roots.
Use .algebra.SquareFreeDecomposition(P) when multiplicity groups matter, .algebra.Gcd(P, Q) or .algebra.Lcm(P, Q) for canonical combinations, and .algebra.Resultant(P, Q) for an exact shared-factor test.
Keep centered and factored forms explicit
Presentation values preserve a useful form without creating a second notion of Polynomial equality. Expanding either value reconstructs from its displayed fields and verifies the exact result against the retained canonical source.
Record() produces a portable form accepted by .algebra.Expand(record). Changing a coefficient, root, factor, multiplicity, unit, residual, basis, or completeness claim causes conversion to fail rather than silently returning the stored source.
Decompose a rational function exactly
The Algebra façade also exposes .ratfun Phase 2 transformations. Repeated rational poles become individual exact terms; factors not split over Q remain visible in one proper residual rather than being approximated.