Files
deriv/README.md
T
2026-09-26 15:45:39 +01:00

1.3 KiB

Deriv

Deriv is a basic, command-line symbolic differentiation engine, supporting reasonably standard mathematical notation for input and output.

An example interaction:

> 2x^2 + 3x
4x + 3
> x^3 - x^2
3x^2 + -2x

See LOG.md for a log of the development process.

Building and Running

Deriv is written in Rust and uses Cargo as its build system. The Rust toolchain (including Cargo) is most easily installed with Rustup.

Given that you have a toolchain installed, the REPL can be ran with:

cargo run --bin repl

Alternatively, to only build the project:

cargo build

To run the test suite:

cargo test

Limitations

Deriv currently has several limitations:

  • Only the variable "x" is currently supported.
  • Exponents must be constant (so e.g. "x^x" is unsupported)
  • Expression simplification is quite limited, many output expressions may not be fully simplified
  • There are no built-in constants like e or π
  • Functions such as sine, cosine and natural logarithms are not supported
  • The input must be UTF-8 Basic Latin / ASCII-compatible text

License

Deriv is Copyright © Camden Dixie O'Brien, and is available under the Komorebi 2.0.0 license. See LICENSE.md for details.