MrvLimitPackageΒΆ

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)

Compute 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)

Compare kernels

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

normalize and compute limit.

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

Compute 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, Equation OrderedCompletion Expression Integer) -> Union(OrderedCompletion Expression Integer, Record(leftHandLimit: Union(OrderedCompletion Expression Integer, failed), rightHandLimit: Union(OrderedCompletion Expression Integer, failed)), failed)

Compute limit(`f`(`x`), x=a) for a finite or infinite limit point a

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, 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_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)

Compute 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)` transform `f` to the form acceptable by core variant of mrv_limit.

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

`mrv_rewrite0`

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)

rewrite

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)

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)