#include <kitty_dynamic_tt.hpp>
Public Member Functions | |
| dynamic_truth_table (uint32_t num_vars) | |
| dynamic_truth_table () | |
| dynamic_truth_table | construct () const |
| uint32_t | num_vars () const noexcept |
| uint32_t | num_blocks () const noexcept |
| uint32_t | num_bits () const noexcept |
| std::vector< uint64_t >::iterator | begin () noexcept |
| Begin iterator to bits. | |
| std::vector< uint64_t >::iterator | end () noexcept |
| End iterator to bits. | |
| std::vector< uint64_t >::const_iterator | begin () const noexcept |
| Begin iterator to bits. | |
| std::vector< uint64_t >::const_iterator | end () const noexcept |
| End iterator to bits. | |
| std::vector< uint64_t >::reverse_iterator | rbegin () noexcept |
| Reverse begin iterator to bits. | |
| std::vector< uint64_t >::reverse_iterator | rend () noexcept |
| Reverse end iterator to bits. | |
| std::vector< uint64_t >::const_iterator | cbegin () const noexcept |
| Constant begin iterator to bits. | |
| std::vector< uint64_t >::const_iterator | cend () const noexcept |
| Constant end iterator to bits. | |
| std::vector< uint64_t >::const_reverse_iterator | crbegin () const noexcept |
| Constant reverse begin iterator to bits. | |
| std::vector< uint64_t >::const_reverse_iterator | crend () const noexcept |
| Constant teverse end iterator to bits. | |
| template<class TT> | |
| dynamic_truth_table & | operator= (const TT &other) |
| Assign other truth table. | |
| void | mask_bits () noexcept |
Truth table in which number of variables is known at runtime.
Definition at line 18 of file kitty_dynamic_tt.hpp.
|
inlineexplicit |
Standard constructor.
The number of variables provided to the truth table can be computed at runtime. However, once the truth table is constructed its number of variables cannot change anymore.
The constructor computes the number of blocks and resizes the vector accordingly.
| num_vars | Number of variables |
Definition at line 31 of file kitty_dynamic_tt.hpp.


|
inline |
Empty constructor.
Creates an empty truth table. It has 0 variables, but no bits, i.e., it is different from a truth table for the constant function. This constructor is only used for convenience, if algorithms require the existence of default constructable classes.
Definition at line 44 of file kitty_dynamic_tt.hpp.

|
inlinenoexcept |
Begin iterator to bits.
Definition at line 74 of file kitty_dynamic_tt.hpp.
|
inlinenoexcept |
Begin iterator to bits.
Definition at line 66 of file kitty_dynamic_tt.hpp.

|
inlinenoexcept |
Constant begin iterator to bits.
Definition at line 90 of file kitty_dynamic_tt.hpp.
|
inlinenoexcept |
Constant end iterator to bits.
Definition at line 94 of file kitty_dynamic_tt.hpp.
|
inline |
Constructs a new dynamic truth table instance with the same number of variables.
Definition at line 47 of file kitty_dynamic_tt.hpp.

|
inlinenoexcept |
Constant reverse begin iterator to bits.
Definition at line 98 of file kitty_dynamic_tt.hpp.
|
inlinenoexcept |
Constant teverse end iterator to bits.
Definition at line 102 of file kitty_dynamic_tt.hpp.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Masks the number of valid truth table bits.
If the truth table has less than 6 variables, it may not use all the bits. This operation makes sure to zero out all non-valid bits.
Definition at line 132 of file kitty_dynamic_tt.hpp.

|
inlinenoexcept |
Returns number of bits.
Definition at line 62 of file kitty_dynamic_tt.hpp.
|
inlinenoexcept |
Returns number of blocks.
Definition at line 58 of file kitty_dynamic_tt.hpp.
|
inlinenoexcept |
Returns number of variables.
Definition at line 54 of file kitty_dynamic_tt.hpp.

|
inline |
Assign other truth table.
This replaces the current truth table with another truth table. The truth table type has to be complete. The vector of bits is resized accordingly.
| other | Other truth table |
Definition at line 112 of file kitty_dynamic_tt.hpp.

|
inlinenoexcept |
Reverse begin iterator to bits.
Definition at line 82 of file kitty_dynamic_tt.hpp.
|
inlinenoexcept |
Reverse end iterator to bits.
Definition at line 86 of file kitty_dynamic_tt.hpp.