Go to file
Patrick Lühne 7d22e47ba1
Represent quantified formulas consistently
Existential and universal quantification used redundant data
representations, while they actually share the same structure. This
unifies both into a single QuantifiedFormula type.
2020-04-13 22:05:09 +02:00
.github/workflows Test crate with GitHub Actions 2020-04-09 15:34:49 +02:00
src Represent quantified formulas consistently 2020-04-13 22:05:09 +02:00
.gitignore Initial commit 2020-02-05 03:23:11 +01:00
Cargo.toml Initial commit 2020-02-05 03:23:11 +01:00
LICENSE.md Initial commit 2020-02-05 03:23:11 +01:00
README.md Remove redundant release badge 2020-02-25 15:27:24 +01:00

foliage crates.io

First-order logic with integer arithmetics in Rust

This Rust crate provides an abstract syntax tree for first-order formulas with integer arithmetics.

Supported Formulas

  • Booleans values (true and false)
  • predicates
  • negated formulas
  • comparisons of terms (<, ≤, >, ≥, =, ≠)
  • implications and biconditionals
  • conjunctions and disjunctions of formulas
  • existentially and universally quantified formulas

Supported Terms

  • Boolean values (true and false)
  • integers
  • strings
  • special integers (infimum and supremum)
  • symbolic functions
  • variables
  • binary operations (addition, subtraction, multiplication, division, modulo, exponentiation)
  • unary operations (absolute value, numeric negation)