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 (InnerNodes and terminal
nodes) and provides Edges 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) Managerthat also has a thread pool
Type Aliases§
- Atomic version of
LevelNo - Level number type
- Node identifier returned by
Edge::node_id()