Expand description
Default instantiation of oxidd-rules-*
using oxidd-manager-index/pointer
and an apply cache implementation from oxidd-cache
§Feature flags
-
bdd
(enabled by default) — Enable the simple BDD implementation -
bcdd
(enabled by default) — Enable the complement edge BDD implementation -
mtbdd
(enabled by default) — Enable the MTBDD implementation -
tdd
— Enable the TDD implementation -
zbdd
(enabled by default) — Enable the ZBDD implementation -
multi-threading
(enabled by default) — Use multi-threaded implementations of the apply algorithm -
manager-index
(enabled by default) — Use the index-based manager implementationThis implementation is generally faster than the pointer-based implementation, but is more restricted: There is no possibility to reserve space for more nodes after the initial allocation and the total number of nodes is limited to 2³² nodes for BDDs/ZBDDs, or 2³¹ nodes for BCDDs.
-
manager-pointer
— Use the pointer-based manager implementation (suitable for BDDs/ZBDDs with more than 2³² nodes, or BCDDs with more than 2³¹ nodes)If both
manager-index
andmanager-pointer
are specified, the pointer-based implementation will be used. -
apply-cache-direct-mapped
(enabled by default) — Enable the direct mapped apply cache -
statistics
— Enable statistics (will harm performance)
Modules§
- Binary decision diagrams with complemented edges (BCDDs)
- Binary decision diagrams (BDDs)
- Multi-terminal binary decision diagrams (MTBDDs)
- Various utilities for working with DDs
- Zero-suppressed binary decision diagrams (ZBDDs)
Traits§
- Boolean functions 𝔹ⁿ → 𝔹
- Quantification extension for
BooleanFunction
- Set of Boolean vectors
- Edge in a decision diagram
- Function in a decision diagram
- Node in a decision diagram
- Manager for nodes in a decision diagram
- Manager reference
- Basic trait for numbers
- Pseudo-Boolean function 𝔹ⁿ → ℝ
- Function of three valued logic
Type Aliases§
- Level number type
- Node identifier returned by
Edge::node_id()