TranscendentalIntegration(F, UP)¶
intrf.spad line 283 [edit on github]
F: Field
This package provides functions for the transcendental case of the Risch algorithm.
- expintegrate: (Fraction UP, UP -> UP, Fraction UP -> Record(answer: Fraction UP, logpart: Fraction UP, ir: IntegrationResult Fraction UP), (Integer, F) -> Record(ans: F, right: F, primpart: F, sol?: Boolean)) -> Record(answer: IntegrationResult Fraction UP, a0: F)
expintegrate(f, ', foo)
returns[g, a]
such thatf = g' + a
, anda = 0
ora
has no integral inF
; Argument foo is a Risch differential equation solver onF
.
- lambintegrate: (Fraction UP, F, F -> F, UP -> UP, F -> Union(Record(ratpart: F, coeff: F), failed), F -> IntegrationResult F) -> Record(answer: IntegrationResult Fraction UP, a0: IntegrationResult F)
lambintegrate(f, dx, D1, D2, extint, int)
integratesf
in extension by LambertW function.dx
is derivative of the argument of LambertW,D1
is dervative onF
,D2
is derivative on UP,extint
is extended integration function onF
, int is integration function onF
.
- monomialIntegrate: (Fraction UP, UP -> UP) -> Record(ir: IntegrationResult Fraction UP, specpart: Fraction UP, polypart: UP)
monomialIntegrate(f, ')
returns[ir, s, p]
such thatf = ir' + s + p
and all the squarefree factors of the denominator ofs
are specialw
.r
.t
the derivation ‘.
- monomialIntPoly: (UP, UP -> UP) -> Record(answer: UP, polypart: UP)
monomialIntPoly(p, ')
returns [q
,r
] such thatp = q' + r
anddegree(r) < degree(t')
. Error ifdegree(t') < 2
.
- primintegrate: (Fraction UP, UP -> UP, Fraction UP -> Record(answer: Fraction UP, logpart: Fraction UP, ir: IntegrationResult Fraction UP), (F, NonNegativeInteger) -> Union(Record(ratpart: F, coeff: F, prim: F), failed)) -> Record(answer: IntegrationResult Fraction UP, a0: F)
primintegrate(f, ', foo)
returns[g, a]
such thatf = g' + a
, anda = 0
ora
has no integral in UP. Argument foo is an extended integration function onF
.