LinearOrdinaryDifferentialOperatorFactorizer2(var, cen)

lodof2.spad line 46 [edit on github]

LinearOrdinaryDifferentialOperatorFactorizer2 provides a factorizer for linear ordinary differential operators whose coefficients are rational functions.

factor : (LinearOrdinaryDifferentialOperator1(Fraction(UnivariatePolynomial(var, Expression(Integer)))), Mapping(Factored(SparseUnivariatePolynomial(Expression(Integer))), SparseUnivariatePolynomial(Expression(Integer)), List(Expression(Integer))), List(Expression(Integer))) -> List(LinearOrdinaryDifferentialOperator1(Fraction(UnivariatePolynomial(var, Expression(Integer)))))

to be documented later.

ge_minimal : (LinearOrdinaryDifferentialOperator1(Fraction(UnivariatePolynomial(var, Expression(Integer)))), Mapping(Factored(SparseUnivariatePolynomial(Expression(Integer))), SparseUnivariatePolynomial(Expression(Integer))), String) -> List(Record(singularity : Record(point : Union(Expression(Integer), "infinity"), lpf : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), dxt : PositiveInteger), fos : List(Record(op : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), ram : UnivariatePolynomial(var, Expression(Integer)), expart : UnivariateLaurentSeries(Expression(Integer), var, cen))), mge : List(UnivariateLaurentSeries(Expression(Integer), var, cen))))

to be documented later.

gen_exp : (LinearOrdinaryDifferentialOperator1(Fraction(UnivariatePolynomial(var, Expression(Integer)))), Union(Expression(Integer), "infinity"), Mapping(Factored(SparseUnivariatePolynomial(Expression(Integer))), SparseUnivariatePolynomial(Expression(Integer)), List(Expression(Integer))), List(Expression(Integer))) -> List(Record(ecs : List(UnivariateLaurentSeries(Expression(Integer), var, cen)), ecr : UnivariatePolynomial(var, Expression(Integer)), ect : Fraction(UnivariatePolynomial(var, Expression(Integer)))))

to be documented later.

testco : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), Fraction(Integer), Integer) -> Boolean

test function.

testcp : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), Fraction(Integer), Integer) -> LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen))

test function.

testcx : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), Fraction(Integer)) -> UnivariatePolynomial(var, Expression(Integer))

test function.

testf2 : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), UnivariatePolynomial(var, Expression(Integer)), Fraction(Integer)) -> Record(Qt : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), Rt : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)))

test function.

testfg : (LinearOrdinaryDifferentialOperator1(Fraction(UnivariatePolynomial(var, Expression(Integer)))), Mapping(Factored(SparseUnivariatePolynomial(Expression(Integer))), SparseUnivariatePolynomial(Expression(Integer)))) -> List(LinearOrdinaryDifferentialOperator1(Fraction(UnivariatePolynomial(var, Expression(Integer)))))

test function.

testfn : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), Mapping(Factored(SparseUnivariatePolynomial(Expression(Integer))), SparseUnivariatePolynomial(Expression(Integer))), String) -> List(LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)))

test function.

testfo : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), Mapping(Factored(SparseUnivariatePolynomial(Expression(Integer))), SparseUnivariatePolynomial(Expression(Integer))), String) -> Union(List(Record(op : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), ram : UnivariatePolynomial(var, Expression(Integer)), expart : UnivariateLaurentSeries(Expression(Integer), var, cen))), List(Union(LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), Record(ope : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), dext : PositiveInteger, alpha : Expression(Integer), rami : UnivariatePolynomial(var, Expression(Integer))))))

test function.

testfr : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), Mapping(Factored(SparseUnivariatePolynomial(Expression(Integer))), SparseUnivariatePolynomial(Expression(Integer))), String) -> Union(List(Record(op : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), ram : UnivariatePolynomial(var, Expression(Integer)), expart : UnivariateLaurentSeries(Expression(Integer), var, cen))), List(Union(LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), Record(ope : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), dext : PositiveInteger, alpha : Expression(Integer), rami : UnivariatePolynomial(var, Expression(Integer))))))

test function.

testgt : (Expression(Integer), Kernel(Expression(Integer))) -> Expression(Integer)

test function.

testis : LinearOrdinaryDifferentialOperator1(Fraction(UnivariatePolynomial(var, Expression(Integer)))) -> Boolean

test function.

testlc : (Fraction(Integer), LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), UnivariatePolynomial(var, Expression(Integer)), UnivariatePolynomial(var, Expression(Integer)), Fraction(Integer), Integer) -> Record(llc : List(Stream(Record(k : Integer, c : Expression(Integer)))), rlc : List(Stream(Record(k : Integer, c : Expression(Integer)))))

test function.

testll : (Fraction(Integer), LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), UnivariatePolynomial(var, Expression(Integer)), UnivariatePolynomial(var, Expression(Integer)), Fraction(Integer), Integer) -> Record(laurl : List(UnivariateLaurentSeries(Expression(Integer), var, cen)), laurr : List(UnivariateLaurentSeries(Expression(Integer), var, cen)))

test function.

testln : (Fraction(Integer), LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), UnivariatePolynomial(var, Expression(Integer)), UnivariatePolynomial(var, Expression(Integer)), Fraction(Integer), Integer) -> Record(main : Record(Qt : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), Rt : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen))), nf : Record(Qt : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), Rt : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen))), error : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)))

test function.

testlp : (LinearOrdinaryDifferentialOperator1(Fraction(UnivariatePolynomial(var, Expression(Integer)))), Union(Expression(Integer), "infinity")) -> LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen))

test function.

testlw : (Fraction(Integer), LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), UnivariatePolynomial(var, Expression(Integer)), UnivariatePolynomial(var, Expression(Integer)), Fraction(Integer), Integer) -> Stream(Record(Qt : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen)), Rt : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen))))

test function.

testnp : LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))) -> List(Record(point : Record(x : Integer, y : Integer), slope : Fraction(Integer), npoly : UnivariatePolynomial(var, Expression(Integer))))

test function.

testpd : UnivariatePolynomial(var, Expression(Integer)) -> LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen))

test function.

testro : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), Expression(Integer), PositiveInteger) -> LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen))

test function.

testsb : (Union(UnivariatePolynomial(var, Expression(Integer)), UnivariateLaurentSeries(Expression(Integer), var, cen)), LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer))))) -> LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariateTaylorSeries(Expression(Integer), var, cen), UnivariateLaurentSeries(Expression(Integer), var, cen))

test function.

testsc : (LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), LinearOrdinaryDifferentialOperator3(Expression(Integer), UnivariatePolynomial(var, Expression(Integer)), Fraction(UnivariatePolynomial(var, Expression(Integer)))), Mapping(Factored(SparseUnivariatePolynomial(Expression(Integer))), SparseUnivariatePolynomial(Expression(Integer)))) -> Boolean

test function.