class POLYS_RAT < $STR,$IS_LT{POLYS_RAT} |
---|
**** | POLYS_RAT is PID. |
$IS_LT{_} | $IS_EQ | $STR |
attr arr: ARRAY{R}; .. Included as arr |
---|
attr arr: ARRAY{R}; .. Included as arr |
---|
shared divmodForce0:BOOL; .. Included as divmodForce0 |
---|
shared r_0:R; .. Included as r_0 |
---|
shared r_1:R; .. Included as r_1 |
---|
shared divmodForce0:BOOL; .. Included as divmodForce0 |
---|
shared r_0:R; .. Included as r_0 |
---|
shared r_1:R; .. Included as r_1 |
---|
aget(i:CARD): R .. Included as aget |
---|
aget(i:INT): R .. Included as aget |
---|
allocate(d:CARD):SAME .. Included as allocate |
---|
**** | degree "d" |
array:ARRAY{R} .. Included as array |
---|
aset(i:CARD, v:R) .. Included as aset |
---|
aset(i:INT, v:R) .. Included as aset |
---|
clear .. Included as clear |
---|
compare(other:SAME):INT |
---|
compare_deg(other:SAME):INT .. Included as compare_deg |
---|
**** | <=>: -1 if "<", 0 if "=", 1 if ">" . |
compare_lt(other:SAME):INT .. Included as compare_lt |
---|
**** | <=>: -1 if "<", 0 if "=", 1 if ">" . |
copy:SAME .. Included as copy |
---|
countSolution(a,b: R, countRedundancy:BOOL):CARD .. Included as countSolution |
---|
countSolution(a,b: R, infty_n,infty:BOOL , countRedundancy:BOOL):CARD .. Included as countSolution |
---|
**** | count # of solution between a and b using Sturm's algorithm. infty_n : a is -infinity, infty : b is infinity R Rational,Float |
countSturmChange(a:R,infty_n,infty:BOOL, sturm:ARRAY{SAME}):CARD .. Included as countSturmChange |
---|
create(a:ARRAY{R}):SAME .. Included as create |
---|
create(c:R): SAME .. Included as create |
---|
**** | same as create(c,0) |
create(c:R,d:CARD): SAME .. Included as create |
---|
**** | c*x^(d) |
create: SAME .. Included as create |
---|
**** | same as create(r_0,c) |
degree:INT .. Included as degree |
---|
derivative(n:CARD):SAME .. Included as derivative |
---|
**** | n-th derivative |
derivative:SAME .. Included as derivative |
---|
div(other:SAME): SAME .. Included as div |
---|
divmod(force0:BOOL, divisor:SAME, out q:SAME, out r:SAME) .. Included as divmod |
---|
**** | R be field or PID "force0" be true to force "0" at head of remainder. true: continuous field e.g.FLT,FLTD, CPX,CPXD... false: PID or discrete field or RAT e.g. INT,INTI,RAT,finite field |
divmod(divisor:SAME, out q:SAME, out r:SAME) .. Included as divmod |
---|
evenly_divides(o:SAME):BOOL .. Included as evenly_divides |
---|
**** |
__self|o._True_if_self_evenly_divides_`o'. |
exp_gen_func(a:ARRAY{R}):SAME .. Included as exp_gen_func |
---|
**** | exponential generating function |
extended_gcd(a:ARRAY{SAME},out factor:ARRAY{SAME}):SAME .. Included as extended_gcd |
---|
**** | multi GCD. return GCD g. g = a . factor |
extended_gcd(o:SAME,out f1: SAME, out f2:SAME):SAME .. Included as extended_gcd |
---|
**** | gcd = self*f1 + o*f2 |
gcd(a:ARRAY{SAME}):SAME .. Included as gcd |
---|
**** | multi GCD. return GCD of elements of a[]. |
gcd(o:SAME):SAME .. Included as gcd |
---|
gcd_coeff_num:INTI |
---|
**** | gcd of numerator of coefficients as Rational |
gen_func(a:ARRAY{R}):SAME .. Included as gen_func |
---|
**** | generating function. |
getSturm(out gcd_s:SAME,out sturm:ARRAY{SAME}) .. Included as getSturm |
---|
init |
---|
integral(n:CARD):SAME .. Included as integral |
---|
**** | integral n-times |
integral:SAME .. Included as integral |
---|
is_SqrFree:BOOL |
---|
is_eq(other:SAME): BOOL .. Included as is_eq |
---|
is_eq(other : $OB) : BOOL .. Included as is_eq |
---|
**** | This is the generic equality predicate. c.f. the class $IS_EQ |
is_lt(other:SAME): BOOL .. Included as is_lt |
---|
is_one:BOOL .. Included as is_one |
---|
is_zero: BOOL .. Included as is_zero |
---|
lc: R .. Included as lc |
---|
**** | lc: leading coefficient |
lcm(o:SAME):SAME .. Included as lcm |
---|
lcm_coeff_den:INTI |
---|
**** | lcm of of denominator of coefficients as Rarional |
low_coeff:R .. Included as low_coeff |
---|
**** | (lowest coefficient of non-zero term) or zero. |
low_deg:INT .. Included as low_deg |
---|
**** | (lowest degree of non-zero term) or 0. |
lp:SAME .. Included as lp |
---|
**** | leading power product |
lt:SAME .. Included as lt |
---|
**** | leading term |
minus(other:CARD):SAME .. Included as minus |
---|
minus(other:INT):SAME .. Included as minus |
---|
minus(other:SAME):SAME .. Included as minus |
---|
minus(other:R):SAME .. Included as minus |
---|
mod(other:ARRAY{SAME}):SAME .. Included as mod |
---|
**** | mod for multi division |
mod(other:SAME): SAME .. Included as mod |
---|
monic .. Included as monic |
---|
**** | make monic i.e. f(x/lc)*(lc^(degree-1)) |
negate:SAME .. Included as negate |
---|
normalize .. Included as normalize |
---|
**** | destructive. ### Note that arr[0]==0 for polynomial "0". |
normalize:SAME .. Included as normalize |
---|
one:SAME .. Included as one |
---|
plus(other:CARD):SAME .. Included as plus |
---|
plus(other:INT):SAME .. Included as plus |
---|
plus(other:SAME):SAME .. Included as plus |
---|
plus(other:R):SAME .. Included as plus |
---|
polys_inti:POLYS_INTI |
---|
**** |
pow(power:CARD): SAME .. Included as pow |
---|
pow(power:INT): SAME .. Included as pow |
---|
pow(power:INTI): SAME .. Included as pow |
---|
pseudo_monic(c:R) .. Included as pseudo_monic |
---|
**** | f(x/c)*(c^degree) |
reverseDeg:SAME .. Included as reverseDeg |
---|
shift0:SAME .. Included as shift0 |
---|
shift_deg(d:INT):SAME .. Included as shift_deg |
---|
**** | self * (x^d) |
squareFreeDecomposition:ARRAY{SAME} .. Included as squareFreeDecomposition |
---|
str(lib : LIBCHARS) : STR .. Included as str |
---|
str(format:STR, v:STR, r:BOOL): STR .. Included as str |
---|
**** | needed "is_lt" in R. format: "text","tex", "texm", "prog" v: variable, r: switch of order. true:decreasing order. false:increasing order |
str:STR .. Included as str |
---|
substitute(x:SAME):SAME .. Included as substitute |
---|
substitute(x:R):R .. Included as substitute |
---|
times(other:CARD):SAME .. Included as times |
---|
times(other:INT):SAME .. Included as times |
---|
times(other:SAME): SAME .. Included as times |
---|
times(other:R):SAME .. Included as times |
---|
x:SAME .. Included as x |
---|
zero:SAME .. Included as zero |
---|