Crate oxidd_core
source ·Expand description
Collection of fundamental traits and types to represent decision diagrams
§Overview
One of the most central traits is Manager
. The manager is responsible
for storing the nodes of a decision diagram (InnerNode
s and terminal
nodes) and provides Edge
s to identify them.
From the user’s perspective, Function
is very
important. A function is some kind of external reference to a node and is
the basis for assigning semantics to nodes and providing operations such as
applying connectives of boolean logic.
Modules§
- Function traits
- Various utilities
Structs§
- Context provided to workers by
WorkerManager::broadcast()
Enums§
- Either an inner or a terminal node
- Result of the attempt to create a new node
Traits§
- Cache for the result of apply operations
- Types whose values can be counted, i.e. there is a bijection between the values of the type and the range
0..=MAX_VALUE
. - Reduction rules for decision diagrams
- Edge in a decision diagram
- Apply cache container
- Trait for nodes that have a level
- Node in a decision diagram
- View of a single level in the manager
- Manager for nodes in a decision diagram
- Manager reference
- Trait for tags that can be attached to pointers (e.g. edges, see
Edge::Tag
) Manager
that also has a thread pool
Type Aliases§
- Atomic version of
LevelNo
- Level number type
- Node identifier returned by
Edge::node_id()