QEtaMultiReductionCategory(C, F, AB)

qetamultisamba.spad line 244 [edit on github]

undocumented

estimatedWeightAfterReduction: (List Integer, List Integer, List Integer, Integer, Integer) -> List Record(fquot: Fraction Integer, fcomponent: NonNegativeInteger)

estimatedWeightAfterReduction(grdsu,grdsb,grdst,k,e) computes from the grades of the reduction elements, the component k and e-multiple of grdst (i.e. the e-th power of t) the weight of the element after the reduction. This is, of course, only an estimate of the weight.

noTrace: F -> Void

from QEtaComputationReductionCategory(F, AB)

noTraceEnter: (F, AB) -> Void

from QEtaComputationReductionCategory(F, AB)

reduce: (F, AB) -> F

from QEtaComputationReductionCategory(F, AB)

reducer: (F, AB) -> Union(Record(freducer: F, fcomponent: NonNegativeInteger, fexpo: Integer, fquot: List Fraction Integer, fu: F, fwghtu: List Record(fquot: Fraction Integer, fcomponent: NonNegativeInteger), fwghtv: List Record(fquot: Fraction Integer, fcomponent: NonNegativeInteger)), failed)

reducer(u, ab) returns a triple [b,k,e] such that b is from the basis ab or b=1 and reducible?(u,b,t) where t=multiplier(ab), i.e. qetaGrade(u,k)>qetaGrade(u-c*b*t^e,k) for some c from C or returns “failed” if no such b,k,e,c exist.

reducers3: (F, F, F) -> List Record(freducer: F, fcomponent: NonNegativeInteger, fexpo: Integer, fquot: List Fraction Integer, fu: F, fwghtu: List Record(fquot: Fraction Integer, fcomponent: NonNegativeInteger), fwghtv: List Record(fquot: Fraction Integer, fcomponent: NonNegativeInteger))

reducers3(u,b,t) returns a list possible options to reduce u with b. The function returns the empty list, if b cannot be used to reduce u. for the reduction of u. Potentially, this function figures out in which component u can be reduced. The function makes sure that the result of a reduction will have a snaller weight given by QEtaMultiWeightSorting.

topReducible?: (F, F, F) -> Boolean

from QEtaComputationReductionCategory(F, AB)

tracedReduce: ((F, AB) -> Void, F -> Void, F -> Void) -> (F, AB) -> F

from QEtaComputationReductionCategory(F, AB)

traceEnter: NonNegativeInteger -> (F, AB) -> Void

from QEtaComputationReductionCategory(F, AB)

traceLoop: NonNegativeInteger -> F -> Void

from QEtaComputationReductionCategory(F, AB)

traceReturn: NonNegativeInteger -> F -> Void

from QEtaComputationReductionCategory(F, AB)

QEtaComputationReductionCategory(F, AB)