MrvLimitPackage

mrv_limit.spad line 26 [edit on github]

Compute limits using Gruntz-Gonnet MRV algorithm

expr_to_series : (Expression(Integer), Kernel(Expression(Integer)), Record(tan_syms : List(Symbol), atan_syms : List(Symbol), tan_kers : List(Kernel(Expression(Integer))), atan_kers : List(Kernel(Expression(Integer))))) -> Union(Record(degree : OrderedExpression, coeff : Expression(Integer)), "failed")

expr_to_series computes degree and leading coefficinet of series expansion.

mrv_cmp : (Kernel(Expression(Integer)), Kernel(Expression(Integer)), Symbol, Record(tan_syms : List(Symbol), atan_syms : List(Symbol), tan_kers : List(Kernel(Expression(Integer))), atan_kers : List(Kernel(Expression(Integer))))) -> Union(Record(sign : Integer, coeff : Expression(Integer)), "failed")

mrv_cmp compare kernels.

mrv_limit : (Expression(Integer), Equation(Expression(Integer)), String) -> Union(OrderedCompletion(Expression(Integer)), "failed")

mrv_limit(f, x = a, str) computes limit(f(x), x=a) for a strictly finite limit point a. This function computes one-sided limits from the left or right.

mrv_limit : (Expression(Integer), Symbol, Expression(Integer), String) -> Union(OrderedCompletion(Expression(Integer)), "failed")

mrv_limit(f, x, a, str) is like mrv_limit(f, x = a, str).

mrv_limit : (Expression(Integer), Symbol, Record(tan_syms : List(Symbol), atan_syms : List(Symbol), tan_kers : List(Kernel(Expression(Integer))), atan_kers : List(Kernel(Expression(Integer))))) -> Union(OrderedCompletion(Expression(Integer)), "failed")

mrv_limit(f, x, s) computes limit.

mrv_limit : (Expression(Integer), Equation(OrderedCompletion(Expression(Integer)))) -> Union(OrderedCompletion(Expression(Integer)), Record(leftHandLimit : Union(OrderedCompletion(Expression(Integer)), "failed"), rightHandLimit : Union(OrderedCompletion(Expression(Integer)), "failed")), "failed")

mrv_limit(f, x=a) computes limit(f(x), x=a) for a finite or infinite limit point a.

mrv_limit : (Expression(Integer), Symbol, OrderedCompletion(Expression(Integer))) -> Union(OrderedCompletion(Expression(Integer)), Record(leftHandLimit : Union(OrderedCompletion(Expression(Integer)), "failed"), rightHandLimit : Union(OrderedCompletion(Expression(Integer)), "failed")), "failed")

mrv_limit(f, x, a) is like mrv_limit(f, x = a).

mrv_limit1 : (Expression(Integer), Symbol) -> Union(OrderedCompletion(Expression(Integer)), "failed")

mrv_limit1(f, x) normalizes and computes limit.

mrv_normalize : (Expression(Integer), Symbol, Record(tan_syms : List(Symbol), atan_syms : List(Symbol), tan_kers : List(Kernel(Expression(Integer))), atan_kers : List(Kernel(Expression(Integer))))) -> Expression(Integer)

mrv_normalize(f, x, s) transform f to the form acceptable by core variant of mrv_limit.

mrv_rewrite : (Expression(Integer), List(Kernel(Expression(Integer))), List(Expression(Integer)), Symbol, Record(tan_syms : List(Symbol), atan_syms : List(Symbol), tan_kers : List(Kernel(Expression(Integer))), atan_kers : List(Kernel(Expression(Integer))))) -> Union(Record(degree : OrderedExpression, coeff : Expression(Integer)), "failed")

mrv_rewrite rewrites comparable kernels and computes leading term of series expansion.

mrv_rewrite0 : (Expression(Integer), List(Kernel(Expression(Integer))), List(Expression(Integer)), Expression(Integer)) -> Expression(Integer)

mrv_rewrite0 rewrites comparable kernels in terms of a single one.

mrv_set : (Expression(Integer), Symbol, Record(tan_syms : List(Symbol), atan_syms : List(Symbol), tan_kers : List(Kernel(Expression(Integer))), atan_kers : List(Kernel(Expression(Integer))))) -> Union(Record(lk : List(Kernel(Expression(Integer))), lc : List(Expression(Integer))), "failed")

mrv_set compute MRV set.

mrv_sign : (Expression(Integer), Symbol, Record(tan_syms : List(Symbol), atan_syms : List(Symbol), tan_kers : List(Kernel(Expression(Integer))), atan_kers : List(Kernel(Expression(Integer))))) -> Union(Integer, "failed")

mrv_sign(f, x, s) computes sign of f near x.