0E1006 |
^PEvalMod
|
( Q Z Zn → Q' )
Computes value of polynomial mod Zn.
|
0E2006 |
^QAddMod
|
( Q1 Q2 Zn → Q' )
Polynomial addition modulo Zn.
|
0E3006 |
^QSubMod
|
( Q1 Q2 Zn → Q' )
Polynomial subtraction modulo Zn.
|
0E4006 |
^QMulMod
|
( Q1 Q2 Zn → Q' )
Polynomial multiplication modulo Zn.
|
0E5006 |
^QDivMod
|
( Q1 Q2 Zn → Qquo Qrem )
Polynomial division modulo Zn. In regular
division the coefficients in the remainder
can increase very quickly to tens of digits,
thus it is important to normalize the
coefficients whenever possible.
|
0E6006 |
^QInvMod
|
( Q Zn → Q' )
Polynomial inversion modulo Zn.
|
0E7006 |
^QGcdMod
|
( Q1 Q2 Zn → Q' )
Polynomial GCD modulo Zn for univariate
polynomials. The result is made monic.
|
0E8006 |
^QGcdExMod
|
Extended polynomial GCD modulo Zn for
univariate polynomials. The equation:
Q1*Q1' + Q2*Q2' = 1 MOD Zn.
|
4C5006 |
^ISOL1
|
( symb id → id symb' )
|
4C6006 |
^ISOLALL
|
( symb id → id {} )
Internal SOLVE.
|
4C7006 |
^ISOL2ext
|
( symb id → symb' )
( symb id → {} )
Like <REF>ISOL1 if isolflag is set.
Otherwise returns the list of all found
solutions.
|
4C8006 |
^BEZOUTMSOLV
|
( Lpoly Lidnt → Lidnt sols )
If no extension in Lpoly, calls ALG48 GSOLVE
Otherwise, solves by Bezout "Gaussian"
elimination. In the latter case , if system
seems underdetermined, Lidnt is truncated.
Then the system must be exactly determined
and polynomials must be prime together.
|
4C9006 |
^ROOT{}N
|
( meta of roots → list of roots )
Drops tagged roots.
|
4CA006 |
^MHORNER
|
( poly-l {r1...rk} # → P[r1...rk] )
Top-level call. Poly-l might be a matrix.
|
4CB006 |
^MHORNER1
|
( P { r } → P[..r..] )
|
4CC006 |
^SQFFext
|
( Q → { F1 mult1 .. Fn multn } )
|
4CD006 |
^MSQFF
|
( Q → F1 mult1 .. Fn multn #2n )
Full square-free factorization of object. The
result is given as a Meta object.
|
4CE006 |
^%1TWO
|
( ob → ob %1 #2 )
Square free factorization of unknown (?)
object. See MSQFF .
|
4CF006 |
^MZSQFF
|
( Z → Z1 mult1 .. Zn multn #2n )
Full factorization of an integer.
|
4D0006 |
^MZSQFF1
|
( Meta curfac %n newfac T → Meta curfac %n+1 )
( Meta curfac %n newfac F → Meta' newfac %1 )
Adds integer factor to factor list. If the
factor is the same as the last time, only the
multiplicity is increased.
|
4D2006 |
^MLISTSQFF
|
( P → Meta )
Full square-free factorization of a
polynomial with a recursive call on the GCD
of all coefficients.
|
4D3006 |
^METASQFFext
|
( P-list → S1 %1 ..Se-1 %e-1 %e ee Te Re )
Square-free factorization.
|
4DE006 |
^LIDNText
|
( ob → {} )
Gets list of all ids present in ob.
|
4DF006 |
^LVARXNXext
|
( symb → symb x lvarnx lvarx )
Finds variable of symb depending on current
variable and other variable. Using LVAR is
impossible here because of sqrt.
|
4E0006 |
^ISPOLYNOMIAL?
|
( ob → flag )
Returns TRUE if symb is polynomial with
respect to current variable.
|
4E1006 |
^2POLYNOMIAL?
|
( symb1 symb2 → symb1 symb2 flag )
Returns TRUE if symb1 and symb2 are
polynomial with respect to current variable.
|
4E2006 |
^VXINDEP?
|
( symb → symb flag )
Returns TRUE if symb is independent of
current variable.
|
4E3006 |
^LVARXNX2ext
|
|
4E4006 |
^RLVARext
|
( ob → {} )
Recursive search of all variables.
|
4E5006 |
^LLVARDext
|
( o → #depth o lvar )
|
4E6006 |
^VXLVARext
|
( symb → symb lvar )
|
4E7006 |
^LVARext
|
( ob → ob {} )
List of variables. Square roots are included
in the list of rational operators.
|
4E8006 |
^VX>LVARext
|
( ob → ob {} )
Like <REF>LVARext but the current variable is
added using >HCOMP . Square roots are
included in the list of rational operators.
|
4E9006 |
^VX>
|
( {} → {}' )
If VX is in the list then moves it to the
beginning of the list. Otherwise does
nothing.
--
<REF>TEXT:Reserved|VX
|
4EA006 |
^VX!
|
( {} → {} )
If VX is in the list then moves it at the
beginning. Otherwise VX is added to the
beginning of the list.
--
<REF>TEXT:Reserved|VX
|
4EC006 |
^LIDNTLVAR
|
( symb lidnt → symb lidnt lvar )
lvar is the list of variables in symb, but
elements of lidnt are moved to the beginning
of lvar.
|
4ED006 |
^LISTOPRAC
|
( → {} )
Returns the list of rational operator with
sqrt appended to the list.
|
4EE006 |
^LISTOPext
|
( → {} )
List of basic "rational" operators without
square root.
|
4EF006 |
^LISTOPSQRT
|
( → {} )
List of basic "rational" operators with
square root.
|
4F0006 |
^LVARDext
|
( ob listop → lidnt )
( Meta listop → lidnt )
Determines list of variables in ob (or Meta)
using the given list of basic "rational"
operators.
|
4F1006 |
^>VARLIST
|
|
4F2006 |
^DEPTHext
|
( ob → # )
Returns the max number of embedded lists in
ob.
|
4F3006 |
^DEPTHOBJext
|
( objet # → depth )
|
4F6006 |
^TRIMOBJext
|
( ob → ob ' )
Trims object.
|
4F7006 |
^NEWTRIMext
|
( Q → Q )
Recursively tests if Q is a list of one
constant element. This is much faster than
TRIMOBJext and sufficient for the output of
programs which are trimmed on the fly.
|
4F8006 |
^>POLYTRIM
|
( meta → {} )
Equivalent to {}POLY TRIMOBJext .
|
4F9006 |
^ELMGext
|
( ob → ob' )
Trims small numbers (less than epsilon).
|
51F006 |
^ZINTSQRT
|
|
520006 |
^SHALT
|
|
0E9006 |
^IsV>V?
|
( v1 v2 → flag )
Returns TRUE if v1 is lexicographically after
v2.
|
0EB006 |
^PZadic
|
( Q Z → Q' )
|
104006 |
^LISTMAXext
|
( P → P Z T depth )
( P → P ? F #0 )
Step 1 for gcdheu:
Returns FALSE if gcdheu can not be applied
(e.g. if P contains irrquads). Returns TRUE
otherwise, Z is the max of all integers of P
or 2*max if there are complex in P.
|
0EC006 |
^GCDHEUext
|
( A B → a b c pr[pgcd] A'/G' B'/G' flag )
Heuristic GCD.
|