AlgebraicIntegration(R, F)

intaf.spad line 708 [edit on github]

This package provides functions for the integration of algebraic integrands over transcendental functions.

algextint : (Kernel(F), Kernel(F), Mapping(SparseUnivariatePolynomial(F), SparseUnivariatePolynomial(F)), Mapping(List(Record(ratpart : Fraction(SparseUnivariatePolynomial(F)), coeffs : Vector(F))), List(Fraction(SparseUnivariatePolynomial(F)))), Mapping(List(Record(ratpart : Fraction(SparseUnivariatePolynomial(F)), coeffs : Vector(F))), Fraction(SparseUnivariatePolynomial(F)), List(Fraction(SparseUnivariatePolynomial(F)))), Mapping(List(Vector(F)), Matrix(F)), List(F)) -> List(Record(ratpart : F, coeffs : Vector(F)))

algextint(x, y, d, ext, rde, csolve, [g1, ..., gn]) returns [h, [c1, ..., cn]] such that f = dh/dx + sum(ci gi) and dci/dx = 0, if such [h, [c1, ..., cn]] exist, "failed" otherwise.

algextint_base : (Kernel(F), Kernel(F), Mapping(SparseUnivariatePolynomial(F), SparseUnivariatePolynomial(F)), Mapping(List(Vector(F)), Matrix(F)), List(F)) -> List(Record(ratpart : F, coeffs : Vector(F)))

algextint_base(x, y, d, csolve, [g1, ..., gn]) is like algextint but assumes that y and gi-s are purely algebraic

algint : (F, Kernel(F), Kernel(F), Mapping(SparseUnivariatePolynomial(F), SparseUnivariatePolynomial(F)), Mapping(IntegrationResult(F), F)) -> IntegrationResult(F)

algint(f, x, y, d) returns the integral of f(x, y)dx where y is an algebraic function of x; d is the derivation to use on k[x].