Crate bex[−][src]
Expand description
A crate for working with boolean expressions.
Re-exports
pub use base::*; |
Modules
anf | (Experimental) support for algebraic normal form (XOR of AND). Experimental structure for representing algebraic normal form (xor of ands). |
apl | Helper routines inspired by the APL family of programming languages. |
ast | Abstract syntax trees (simple logic combinators). |
base | Standard interface for working with databases of expressions. |
bdd | Binary decision diagrams (if-then-else). |
cur | |
int | Helpers for working with arrays of bit structures as if they were integers. |
io | Input/output helpers. |
nid | Node IDs (shared by various Base implementations) Defines a common NID scheme for bases whose nodes follow a (var, lo, hi) structure. Used by BDD, ANF, and eventually ZDD. |
ops | RPN-like serialization structure for expressions. |
reg | Registers – arbitrarily large arrays of bits. |
solve | Solve AST-based expressions by converting them to other forms. |
swap | swap solver |
swarm | multicore support |
vhl | (Var, Hi, Lo) triples |
vid | Variable IDs (used interally by Base implementations) |
wip | Structures for storing work in progress. |
Macros
expr | |
find_factors | This is an example solver used by the bdd-solve example and the bench-solve benchmark. It finds all pairs of type $T0 that multiply to $k as a $T1. ($T0 and $T1 are BInt types. Generally $T0 would have half as many bits as $T1) $TDEST is destination type. |
inherit | This macro makes it easy to define decorators for |
inherit_fn | This helper macro provides actual implementations for the names passed to |
op |