backyard/logic/README.md

13 lines
610 B
Markdown
Raw Normal View History

2022-06-07 19:27:22 -07:00
satisfy them booleans, solve them integers.
2022-06-07 19:54:47 -07:00
`cnf.py` is a small library for creating formulas in conjunctive normal form,
and also for dealing with the eponymous CNF file format.
the types used internally and exposed externally are very simple:
booleans, integers, and lists of each.
`z0.py` is a slightly larger library that builds upon `cnf.py`,
mimicing a tiny subset of the [z3](https://github.com/Z3Prover/z3)
library's interface. it exposes classes for high-level bitvectors and
[unary-encoded integers.](https://en.wikipedia.org/wiki/Unary_numeral_system)
(unary is sometimes more efficient to solve)