TriangularSetCategory(R, E, V, P)¶
triset.spad line 1 [edit on github]
V: OrderedSet
P: RecursivePolynomialCategory(R, E, V)
The category of triangular sets of multivariate polynomials with coefficients in an integral domain. Let R be an integral domain and V a finite ordered set of variables, say X1 < X2 < ... < Xn. A set S of polynomials in R[X1, X2, ..., Xn] is triangular if no elements of S lies in R, and if two distinct elements of S have distinct main variables. Note that the empty set is a triangular set. A triangular set is not necessarily a (lexicographical) Groebner basis and the notion of reduction related to triangular sets is based on the recursive view of polynomials. We recall this notion here and refer to [1] for more details. A polynomial P is reduced w.r.t a non-constant polynomial Q if the degree of P in the main variable of Q is less than the main degree of Q. A polynomial P is reduced w.r.t a triangular set T if it is reduced w.r.t. every polynomial of T.
- #: % -> NonNegativeInteger
from Aggregate
- algebraic?: (V, %) -> Boolean
algebraic?(v, ts)returnstrueiffvis the main variable of some polynomial ints.
- algebraicVariables: % -> List V
algebraicVariables(ts)returns the decreasingly sorted list of the main variables of the polynomials ofts.
- any?: (P -> Boolean, %) -> Boolean
from HomogeneousAggregate P
- autoReduced?: (%, (P, List P) -> Boolean) -> Boolean
autoReduced?(ts, redOp?)returnstrueiff every element oftsis reducedw.r.tto every other in the sense ofredOp?
- basicSet: (List P, (P, P) -> Boolean) -> Union(Record(bas: %, top: List P), failed)
basicSet(ps, redOp?)returns[bs, ts]whereconcat(bs, ts)ispsandbsis a basic set in Wu Wen Tsun sense ofpsw.r.tthe reduction-testredOp?, if no non-zero constant polynomial lie inps, otherwise"failed"is returned.
- basicSet: (List P, P -> Boolean, (P, P) -> Boolean) -> Union(Record(bas: %, top: List P), failed)
basicSet(ps, pred?, redOp?)returns the same asbasicSet(qs, redOp?)whereqsconsists of the polynomials ofpssatisfying propertypred?.
- coerce: % -> List P
from CoercibleTo List P
- coerce: % -> OutputForm
from CoercibleTo OutputForm
- coHeight: % -> NonNegativeInteger if V has Finite
coHeight(ts)returnssize()\$Vminus\#ts.
- collect: (%, V) -> %
from PolynomialSetCategory(R, E, V, P)
- collectQuasiMonic: % -> %
collectQuasiMonic(ts)returns the subset oftsconsisting of the polynomials with initial inR.
- collectUnder: (%, V) -> %
from PolynomialSetCategory(R, E, V, P)
- collectUpper: (%, V) -> %
from PolynomialSetCategory(R, E, V, P)
- construct: List P -> %
from Collection P
- convert: % -> InputForm
from ConvertibleTo InputForm
- count: (P -> Boolean, %) -> NonNegativeInteger
from HomogeneousAggregate P
- count: (P, %) -> NonNegativeInteger
from HomogeneousAggregate P
- degree: % -> NonNegativeInteger
degree(ts)returns the product of main degrees of the members ofts.
- eval: (%, Equation P) -> % if P has Evalable P
from Evalable P
- eval: (%, List Equation P) -> % if P has Evalable P
from Evalable P
- eval: (%, List P, List P) -> % if P has Evalable P
from InnerEvalable(P, P)
- eval: (%, P, P) -> % if P has Evalable P
from InnerEvalable(P, P)
- every?: (P -> Boolean, %) -> Boolean
from HomogeneousAggregate P
- extend: (%, P) -> %
extend(ts, p)returns a triangular set which encodes the simple extension bypof the extension of the base field defined byts, according to the properties of triangular sets of the current category If the required properties do not hold an error is returned.
- extendIfCan: (%, P) -> Union(%, failed)
extendIfCan(ts, p)returns a triangular set which encodes the simple extension bypof the extension of the base field defined byts, according to the properties of triangular sets of the current domain. If the required properties do not hold then “failed” is returned. This operation encodes in some sense the properties of the triangular sets of the current category. Is is used to implement theconstructoperation to guarantee that every triangular set build from a list of polynomials has the required properties.
- find: (P -> Boolean, %) -> Union(P, failed)
from Collection P
- first: % -> Union(P, failed)
first(ts)returns the polynomial oftswith greatest main variable iftsis not empty, otherwise returns"failed".
- headReduce: (P, %) -> P
headReduce(p, ts)returns a polynomialrsuch thatheadReduce?(r, ts)holds and there exists some producthofinitials(ts)such thath*p - rlies in the ideal generated byts.
- headReduced?: % -> Boolean
headReduced?(ts)returnstrueiff the head of every element oftsis reducedw.r.tto any other element ofts.
- headReduced?: (P, %) -> Boolean
headReduced?(p, ts)returnstrueiff the head ofpis reducedw.r.t.ts.
- headRemainder: (P, %) -> Record(num: P, den: R)
from PolynomialSetCategory(R, E, V, P)
- iexactQuo: (R, R) -> R
from PolynomialSetCategory(R, E, V, P)
- infRittWu?: (%, %) -> Boolean
infRittWu?(ts1, ts2)returnstrueiffts2has higher rank thants1in Wu Wen Tsun sense.
- initiallyReduce: (P, %) -> P
initiallyReduce(p, ts)returns a polynomialrsuch thatinitiallyReduced?(r, ts)holds and there exists some producthofinitials(ts)such thath*p - rlies in the ideal generated byts.
- initiallyReduced?: % -> Boolean
initiallyReduced?(ts)returnstrueiff for every elementpoftspand all its iterated initials are reducedw.r.t. to the other elements oftswith the same main variable.
- initiallyReduced?: (P, %) -> Boolean
initiallyReduced?(p, ts)returnstrueiffpand all its iterated initials are reducedw.r.t. to the elements oftswith the same main variable.
- initials: % -> List P
initials(ts)returns the list of the non-constant initials of the members ofts.
- last: % -> Union(P, failed)
last(ts)returns the polynomial oftswith smallest main variable iftsis not empty, otherwise returns"failed".
- latex: % -> String
from SetCategory
- less?: (%, NonNegativeInteger) -> Boolean
from Aggregate
- mainVariable?: (V, %) -> Boolean
from PolynomialSetCategory(R, E, V, P)
- mainVariables: % -> List V
from PolynomialSetCategory(R, E, V, P)
- map!: (P -> P, %) -> %
from HomogeneousAggregate P
- map: (P -> P, %) -> %
from HomogeneousAggregate P
- max: % -> P if P has OrderedSet
from HomogeneousAggregate P
- max: ((P, P) -> Boolean, %) -> P
from HomogeneousAggregate P
- member?: (P, %) -> Boolean
from HomogeneousAggregate P
- members: % -> List P
from HomogeneousAggregate P
- min: % -> P if P has OrderedSet
from HomogeneousAggregate P
- more?: (%, NonNegativeInteger) -> Boolean
from Aggregate
- mvar: % -> V
from PolynomialSetCategory(R, E, V, P)
- normalized?: % -> Boolean
normalized?(ts)returnstrueiff for everypintswe havenormalized?(p, us)whereusiscollectUnder(ts, mvar(p)).
- normalized?: (P, %) -> Boolean
normalized?(p, ts)returnstrueiffpand all its iterated initials have degree zerow.r.t. the main variables of the polynomials ofts
- parts: % -> List P
from HomogeneousAggregate P
- quasiComponent: % -> Record(close: List P, open: List P)
quasiComponent(ts)returns[lp, lq]wherelpis the list of the members oftsandlqisinitials(ts).
- reduce: ((P, P) -> P, %) -> P
from Collection P
- reduce: ((P, P) -> P, %, P) -> P
from Collection P
- reduce: ((P, P) -> P, %, P, P) -> P
from Collection P
- reduce: (P, %, (P, P) -> P, (P, P) -> Boolean) -> P
reduce(p, ts, redOp, redOp?)returns a polynomialrsuch thatredOp?(r, p)holds for everypoftsand there exists some producthof the initials of the members oftssuch thath*p - rlies in the ideal generated byts. The operationredOpmust satisfy the following conditions. For everypandqwe haveredOp?(redOp(p, q), q)and there exists an integereand a polynomialfsuch thatinit(q)^e*p = f*q + redOp(p, q).
- reduceByQuasiMonic: (P, %) -> P
reduceByQuasiMonic(p, ts)returns the same asremainder(p, collectQuasiMonic(ts)).polnum.
- reduced?: (P, %, (P, P) -> Boolean) -> Boolean
reduced?(p, ts, redOp?)returnstrueiffpis reducedw.r.t. in the sense of the operationredOp?, that is if for everytintsredOp?(p, t)holds.
- remainder: (P, %) -> Record(rnum: R, polnum: P, den: R)
from PolynomialSetCategory(R, E, V, P)
- remove: (P -> Boolean, %) -> %
from Collection P
- remove: (P, %) -> %
from Collection P
- removeDuplicates: % -> %
from Collection P
- removeZero: (P, %) -> P
removeZero(p, ts)returns0ifpreduces to0by pseudo-divisionw.r.ttsotherwise returns a polynomialqcomputed frompby removing any coefficient inpreducing to0.
- rest: % -> Union(%, failed)
rest(ts)returns the polynomials oftswith smaller main variable thanmvar(ts)iftsis not empty, otherwise returns “failed”
- retract: List P -> %
from RetractableFrom List P
- retractIfCan: List P -> Union(%, failed)
from RetractableFrom List P
- rewriteIdealWithHeadRemainder: (List P, %) -> List P
from PolynomialSetCategory(R, E, V, P)
- rewriteIdealWithRemainder: (List P, %) -> List P
from PolynomialSetCategory(R, E, V, P)
- rewriteSetWithReduction: (List P, %, (P, P) -> P, (P, P) -> Boolean) -> List P
rewriteSetWithReduction(lp, ts, redOp, redOp?)returns a listlqof polynomials such that[reduce(p, ts, redOp, redOp?) for p in lp]andlphave the same zeros inside the regular zero set ofts. Moreover, for every polynomialqinlqand every polynomialtintsredOp?(q, t)holds and there exists a polynomialpin the ideal generated bylpand a producthofinitials(ts)such thath*p - rlies in the ideal generated byts. The operationredOpmust satisfy the following conditions. For everypandqwe haveredOp?(redOp(p, q), q)and there exists an integereand a polynomialfsuch thatinit(q)^e*p = f*q + redOp(p, q).
- roughBase?: % -> Boolean
from PolynomialSetCategory(R, E, V, P)
- roughEqualIdeals?: (%, %) -> Boolean
from PolynomialSetCategory(R, E, V, P)
- roughSubIdeal?: (%, %) -> Boolean
from PolynomialSetCategory(R, E, V, P)
- roughUnitIdeal?: % -> Boolean
from PolynomialSetCategory(R, E, V, P)
- select: (%, V) -> Union(P, failed)
select(ts, v)returns the polynomial oftswithvas main variable, if any.- select: (P -> Boolean, %) -> %
from Collection P
- size?: (%, NonNegativeInteger) -> Boolean
from Aggregate
- sort: (%, V) -> Record(under: %, floor: %, upper: %)
from PolynomialSetCategory(R, E, V, P)
- stronglyReduce: (P, %) -> P
stronglyReduce(p, ts)returns a polynomialrsuch thatstronglyReduced?(r, ts)holds and there exists some producthofinitials(ts)such thath*p - rlies in the ideal generated byts.
- stronglyReduced?: % -> Boolean
stronglyReduced?(ts)returnstrueiff every element oftsis reducedw.r.tto any other element ofts.
- stronglyReduced?: (P, %) -> Boolean
stronglyReduced?(p, ts)returnstrueiffpis reducedw.r.t.ts.
- triangular?: % -> Boolean
from PolynomialSetCategory(R, E, V, P)
- trivialIdeal?: % -> Boolean
from PolynomialSetCategory(R, E, V, P)
- variables: % -> List V
from PolynomialSetCategory(R, E, V, P)
- zeroSetSplit: List P -> List %
zeroSetSplit(lp)returns a listltsof triangular sets such that the zero set oflpis the union of the closures of the regular zero sets of the members oflts.
- zeroSetSplitIntoTriangularSystems: List P -> List Record(close: %, open: List P)
zeroSetSplitIntoTriangularSystems(lp)returns a list of triangular systems[[ts1, qs1], ..., [tsn, qsn]]such that the zero set oflpis the union of the closures of theW_iwhereW_iconsists of the zeros oftswhich do not cancel any polynomial inqsi.
Evalable P if P has Evalable P
InnerEvalable(P, P) if P has Evalable P
PolynomialSetCategory(R, E, V, P)