Skip to content

A C++ math solver core using LaTeX as intermediate representation, focused on numerical computation and extensibility.

License

Notifications You must be signed in to change notification settings

CloudSwordSage/TexSolve

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TexSolve

中文文档 Apache 2.0 License

A C++ math solver core using LaTeX as intermediate representation, focused on numerical computation and extensibility.

MVP Status

This repository ships an MVP that can:

  • Parse a small LaTeX-like input into an AST
  • Solve/simplify basic expressions and simple equations
  • Run TSV regression tests (test/level0.tsv)

Supported Scope

[x] Basic arithmetic, fractions [x] Univariate polynomial equations (partial) [ ] Square roots (syntax partially supported; solving not guaranteed) [ ] Definite integrals / numerical integration [ ] Basic differentiation / ODE (IVP) [ ] Matrix operations

Not Supported / Limitations

  • PDE / functional analysis
  • Advanced symbolic algebra (only limited cases)
  • High-dimensional surface integrals

Build

Windows (MinGW)

cmake -S . -B build -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

Linux / macOS

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

Test

./build/texsolve_tsv test/level0.tsv

On Windows:

.\build\texsolve_tsv.exe .\test\level0.tsv

Outputs (dist)

After building, artifacts are copied into:

  • dist/bin/ : texsolve_cli (CLI runner)
  • dist/lib/ : texsolve shared library (toolchain-specific filename)
  • dist/include/texsolve.hpp : the only public header for using the shared library

Public API (black-box DLL)

The shared library exposes a single C entry point:

const char* texsolve_solve(const char* latex);

It returns a pointer to a thread-local string. Copy it if you need to persist the value.

About

A C++ math solver core using LaTeX as intermediate representation, focused on numerical computation and extensibility.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published