RelProd : Overloads for Quality of Life #682
Labels
📁 bdd
Binary Decision Diagrams
✨ feature
New operation or other feature
good first issue
Good for newcomers
🎓 student programmer
Work, work...
Milestone
With #502 , we added the basic API of
bdd_relprod
,bdd_relnext
, andbdd_relprev
.Variable Order: Separated (easy)
Often the variable ordering starts with all current states and then includes all next states, e.g. x y x' y'. In this case, we may just provide the number of current/next variables.
bdd_relnext(states, relation, varcount)
bdd_relprev(states, relation, varcount)
The
relnext(...)
andrelprev(...)
just call the other functions with the correct m and m_type.The kalin unit tests can be copied into a new group for this overload.
Variable Order: Interleaved (easy)
Even better is to interleave the current and next state variables, e.g. x x' y y'. In this case, we may just provide nothing as an argument.
bdd_relnext(states, relation)
bdd_relprev(states, relation)
The
relnext(...)
andrelprev(...)
just call the other functions with the correct m and m_type.The huth unit tests can be copied into a new group for this overload.
The text was updated successfully, but these errors were encountered: