JetLazyFunction(JB, D)¶
jet.spad line 5446 [edit on github]
JetLazyFunction takes as argument a domain in JetBundleFunctionCategory and returns another domain in the same category. This domain has basically the same properties as the argument domain, but there is a lazy evaluation mechanism for derivatives. This means that differentiations are not immediately performed. Instead a pointer is established to the function to be differentiated. Only when the exact value of the derivative is needed, the differentiation is executed. Special care is taken for leading derivatives and jet variables to avoid as much as possible the need to evaluate expressions. This entails that the result of jetVariables
may contain spurious variables. Furthermore many functions in JetLazyFunction destructively change their arguments. This affects, however, only their internal representation, not the value obtained after full evaluation.
- 0: %
from AbelianMonoid
- 1: %
from MagmaWithUnit
- *: (%, %) -> %
from LeftModule %
- *: (D, %) -> %
d*exp
is provided mainly for internal use, as basically all calculations should be performed within JetLazyFunction.- *: (Integer, %) -> %
from AbelianGroup
- *: (NonNegativeInteger, %) -> %
from AbelianMonoid
- *: (PositiveInteger, %) -> %
from AbelianSemiGroup
- +: (%, %) -> %
from AbelianSemiGroup
- -: % -> %
from AbelianGroup
- -: (%, %) -> %
from AbelianGroup
- ^: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- ^: (%, PositiveInteger) -> %
from Magma
- annihilate?: (%, %) -> Boolean
from Rng
- antiCommutator: (%, %) -> %
- associates?: (%, %) -> Boolean
from EntireRing
- associator: (%, %, %) -> %
from NonAssociativeRng
- autoReduce: List % -> List %
from JetBundleFunctionCategory JB
- characteristic: () -> NonNegativeInteger
from NonAssociativeRing
- class: % -> NonNegativeInteger
from JetBundleFunctionCategory JB
- coerce: % -> D
coerce(exp)
retracts an element to the base domainD
. This looses all information about its leading derivative and its jet variables and requires complete evaluation of the expression.- coerce: % -> OutputForm
from CoercibleTo OutputForm
- coerce: D -> %
coerce(d)
coerces an element ofD
into the new domain. This includes the calculation of its leading derivative and its jet variables.- coerce: Integer -> %
from NonAssociativeRing
- coerce: JB -> %
from JetBundleFunctionCategory JB
- collect: % -> %
collect(exp)
“collects” former lazy terms which have been meanwhile evaluated.
- commutator: (%, %) -> %
from NonAssociativeRng
- const?: % -> Boolean
from JetBundleFunctionCategory JB
- D: (%, List Symbol) -> %
- D: (%, List Symbol, List NonNegativeInteger) -> %
- D: (%, Symbol) -> %
- D: (%, Symbol, NonNegativeInteger) -> %
- denominator: % -> %
from JetBundleFunctionCategory JB
- differentiate: (%, JB) -> %
from JetBundleFunctionCategory JB
- differentiate: (%, List Symbol) -> %
- differentiate: (%, List Symbol, List NonNegativeInteger) -> %
- differentiate: (%, Symbol) -> %
- differentiate: (%, Symbol, NonNegativeInteger) -> %
- dimension: (List %, SparseEchelonMatrix(JB, %), NonNegativeInteger) -> NonNegativeInteger
from JetBundleFunctionCategory JB
- dSubst: (%, JB, %) -> %
from JetBundleFunctionCategory JB
- eqRep?: (%, %) -> Boolean
eqRep?(x, y)
compares the representations ofx
andy
without any evaluation. Thus it is much weaker than=
and cannot decide equality of the evaluated expressions.
- eval1: % -> %
eval1(exp)
explicitly evaluates the next term inexp
.exp
is destructively altered.
- eval: % -> %
eval(exp)
explicitly evaluates all terms inexp
.exp
is destructively altered.
- exquo: (%, %) -> Union(%, failed)
from EntireRing
- extractSymbol: SparseEchelonMatrix(JB, %) -> SparseEchelonMatrix(JB, %)
from JetBundleFunctionCategory JB
- formalDiff2: (%, PositiveInteger, SparseEchelonMatrix(JB, %)) -> Record(DPhi: %, JVars: List JB)
from JetBundleFunctionCategory JB
- formalDiff2: (List %, PositiveInteger, SparseEchelonMatrix(JB, %)) -> Record(DSys: List %, JVars: List List JB)
from JetBundleFunctionCategory JB
- formalDiff: (%, List NonNegativeInteger) -> %
from JetBundleFunctionCategory JB
- formalDiff: (%, PositiveInteger) -> %
from JetBundleFunctionCategory JB
- formalDiff: (List %, PositiveInteger) -> List %
from JetBundleFunctionCategory JB
- freeOf?: (%, JB) -> Boolean
from JetBundleFunctionCategory JB
- gcdPolynomial: (SparseUnivariatePolynomial %, SparseUnivariatePolynomial %) -> SparseUnivariatePolynomial %
from GcdDomain
- getNotation: () -> Symbol
from JetBundleFunctionCategory JB
- ground?: % -> Boolean
ground(exp)
istrue
, ifexp
contains only fully evaluated parts.
- jacobiMatrix: (List %, List List JB) -> SparseEchelonMatrix(JB, %)
from JetBundleFunctionCategory JB
- jacobiMatrix: List % -> SparseEchelonMatrix(JB, %)
from JetBundleFunctionCategory JB
- jetVariables: % -> List JB
from JetBundleFunctionCategory JB
- latex: % -> String
from SetCategory
- lcmCoef: (%, %) -> Record(llcm_res: %, coeff1: %, coeff2: %)
from LeftOreRing
- leadingDer: % -> JB
from JetBundleFunctionCategory JB
- leftPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- leftPower: (%, PositiveInteger) -> %
from Magma
- leftRecip: % -> Union(%, failed)
from MagmaWithUnit
- numDepVar: () -> PositiveInteger
from JetBundleFunctionCategory JB
- numerator: % -> %
from JetBundleFunctionCategory JB
- numIndVar: () -> PositiveInteger
from JetBundleFunctionCategory JB
- one?: % -> Boolean
from MagmaWithUnit
- opposite?: (%, %) -> Boolean
from AbelianMonoid
- order: % -> NonNegativeInteger
from JetBundleFunctionCategory JB
- orderDim: (List %, SparseEchelonMatrix(JB, %), NonNegativeInteger) -> NonNegativeInteger
from JetBundleFunctionCategory JB
- P: (PositiveInteger, List NonNegativeInteger) -> %
from JetBundleFunctionCategory JB
- P: (PositiveInteger, NonNegativeInteger) -> %
from JetBundleFunctionCategory JB
- P: List NonNegativeInteger -> %
from JetBundleFunctionCategory JB
- P: NonNegativeInteger -> %
from JetBundleFunctionCategory JB
- plenaryPower: (%, PositiveInteger) -> %
from NonAssociativeAlgebra %
- recip: % -> Union(%, failed)
from MagmaWithUnit
- reduceMod: (List %, List %) -> List %
from JetBundleFunctionCategory JB
- retract: % -> JB
from RetractableTo JB
- retractIfCan: % -> Union(JB, failed)
from RetractableTo JB
- rightPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- rightPower: (%, PositiveInteger) -> %
from Magma
- rightRecip: % -> Union(%, failed)
from MagmaWithUnit
- sample: %
from AbelianMonoid
- setNotation: Symbol -> Void
from JetBundleFunctionCategory JB
- simplify: (List %, SparseEchelonMatrix(JB, %)) -> Record(Sys: List %, JM: SparseEchelonMatrix(JB, %), Depend: Union(failed, List List NonNegativeInteger))
from JetBundleFunctionCategory JB
- simpMod: (List %, List %) -> List %
from JetBundleFunctionCategory JB
- simpMod: (List %, SparseEchelonMatrix(JB, %), List %) -> Record(Sys: List %, JM: SparseEchelonMatrix(JB, %), Depend: Union(failed, List List NonNegativeInteger))
from JetBundleFunctionCategory JB
- simpOne: % -> %
from JetBundleFunctionCategory JB
- solveFor: (%, JB) -> Union(%, failed)
from JetBundleFunctionCategory JB
- sortLD: List % -> List %
from JetBundleFunctionCategory JB
- statistics: () -> Void
statistics()
prints a statistic on the use of the lazy evaluation mechanism. It displays the number of lazy differentiations performed and how many of them had to be executed explicitly later on.
- subst: (%, JB, %) -> %
from JetBundleFunctionCategory JB
- subtractIfCan: (%, %) -> Union(%, failed)
- symbol: List % -> SparseEchelonMatrix(JB, %)
from JetBundleFunctionCategory JB
- U: () -> %
from JetBundleFunctionCategory JB
- U: PositiveInteger -> %
from JetBundleFunctionCategory JB
- unit?: % -> Boolean
from EntireRing
- unitCanonical: % -> %
from EntireRing
- unitNormal: % -> Record(unit: %, canonical: %, associate: %)
from EntireRing
- X: () -> %
from JetBundleFunctionCategory JB
- X: PositiveInteger -> %
from JetBundleFunctionCategory JB
- zero?: % -> Boolean
from AbelianMonoid
Algebra %
BiModule(%, %)
Module %