Crate oxidd

source ·
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 implementation

    This 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 and manager-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§

Type Aliases§