Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RelProd : Overloads for Quality of Life #682

Closed
4 tasks done
SSoelvsten opened this issue Jun 25, 2024 · 0 comments · Fixed by #689
Closed
4 tasks done

RelProd : Overloads for Quality of Life #682

SSoelvsten opened this issue Jun 25, 2024 · 0 comments · Fixed by #689
Assignees
Labels
📁 bdd Binary Decision Diagrams ✨ feature New operation or other feature good first issue Good for newcomers 🎓 student programmer Work, work...

Comments

@SSoelvsten
Copy link
Owner

SSoelvsten commented Jun 25, 2024

With #502 , we added the basic API of bdd_relprod, bdd_relnext, and bdd_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(...) and relprev(...) 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(...) and relprev(...) 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.

@SSoelvsten SSoelvsten added ✨ feature New operation or other feature good first issue Good for newcomers 📁 bdd Binary Decision Diagrams 🎓 student programmer Work, work... 🎓 student project Work, work... but academic! labels Jun 25, 2024
@SSoelvsten SSoelvsten added this to the v2.1 : Relational Product milestone Jun 25, 2024
@SSoelvsten SSoelvsten self-assigned this Jul 29, 2024
@SSoelvsten SSoelvsten removed the 🎓 student project Work, work... but academic! label Jul 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
📁 bdd Binary Decision Diagrams ✨ feature New operation or other feature good first issue Good for newcomers 🎓 student programmer Work, work...
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant