limcalc: Limit-based symbolic calculus engine via log-Puiseux series
limcalc is a symbolic calculus engine grounded in the limit definition rather than rewriting rules. The core thesis: the derivative is a limit, so compute it that way — expand f(x+h) as a log-Puiseux series in h and read off the h^1 coefficient. The product rule and chain rule are not implemented; both are consequences of the limit definition and are observable in the output. . The log-Puiseux series type supports terms of the form c * h^p * log(h)^k with c an algebraic number, p rational, and k a natural number. This is strictly more expressive than pure Puiseux series: the cosine integral Ci and exponential integral Ei have genuine logarithmic singularities that cannot be represented as pure power series. . Capabilities: . * Univariate and multivariate limits with certified result types (Exists, Pole, DoesNotExist, LimitError) . * Symbolic differentiation — gradient, Jacobian, Hessian — derived from the same log-Puiseux representation, without rule tables . * Integration via the Risch algorithm over the differential field the representation naturally provides, with NonElementary as a proved certificate when no elementary antiderivative exists . * Recognition of non-elementary integrals as named special functions: erf, Si, Ci, Ei, li . * JSON line protocol CLI (limcalc-cli) for language-agnostic use; a Python interface is available as the limcalc-py package on PyPI
[Skip to Readme]
Modules
- LimCalc
- Algebra
- LimCalc.Algebra.AlgNum
- LimCalc.Algebra.BivPoly
- LimCalc.Algebra.Poly
- LimCalc.Algebra.QPoly
- LimCalc.Algebra.RationalFunction
- Core
- LimCalc.Core.Expr
- LimCalc.Core.ExprJSON
- LimCalc.Core.Simplify
- LimCalc.Core.Types
- Differentiation
- LimCalc.Differentiation.Calculus
- LimCalc.Differentiation.DiffField
- LimCalc.Differentiation.Limit
- LimCalc.Differentiation.MultivariateLimit
- Integration
- LimCalc.Integration.Risch
- LimCalc.Integration.Risch.Exponential
- LimCalc.Integration.Risch.Primitive
- LimCalc.Integration.Risch
- LimCalc.Pretty
- Series
- LimCalc.Series.Expand
- LimCalc.Series.Puiseux
- LimCalc.Series.SymExpand
- LimCalc.Series.SymPuiseux
- Algebra
Downloads
- limcalc-0.1.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
| Versions [RSS] | 0.1.0.0 |
|---|---|
| Change log | CHANGELOG.md |
| Dependencies | aeson (>=2.3.0 && <2.4), base (>=4.20.2.0 && <4.21), bytestring (>=0.12.2 && <0.13), containers (>=0.7 && <0.8), limcalc [details] |
| Tested with | ghc ==9.10.3 |
| License | MIT |
| Copyright | 2026 Jason Parker |
| Author | Jason Parker |
| Maintainer | jparker588@gmail.com |
| Uploaded | by penny4nonsense at 2026-07-07T18:45:43Z |
| Category | Math |
| Home page | https://github.com/penny4nonsense/limcalc |
| Bug tracker | https://github.com/penny4nonsense/limcalc/issues |
| Distributions | |
| Executables | limcalc-cli |
| Downloads | 1 total (1 in the last 30 days) |
| Rating | (no votes yet) [estimated by Bayesian average] |
| Your Rating | |
| Status | Docs not available [build log] All reported builds failed as of 2026-07-07 [all 2 reports] |