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 : Frame Rule for Interleaved Ordering #688

Open
3 tasks
SSoelvsten opened this issue Jul 29, 2024 · 0 comments
Open
3 tasks

RelProd : Frame Rule for Interleaved Ordering #688

SSoelvsten opened this issue Jul 29, 2024 · 0 comments
Labels
📁 bdd Binary Decision Diagrams ✨ feature New operation or other feature 🎓 student project Work, work... but academic!

Comments

@SSoelvsten
Copy link
Owner

SSoelvsten commented Jul 29, 2024

As a follow-up on #502 and the overloads in #682 , we should consider to make the creation of transitions even easier.

Add Frame-Rules to Relations

  • Given a relation, look at its support and generate the missing frame rule. Either provide the frame rule itself or and it onto the relation.

RelProd with Built-in Frame Rule

  • Preface bdd_relnext(states, relation) and bdd_relprev(states, relation) with the addition of the frame rule.

  • As in Sylvan, this can be further improved by applying the frame rule on-the-fly during the product construction between states and relation: for every pair, x x', if only one or none of them is mentioned then add the missing nodes during the top-down sweep.

    To do so, one may need a third argument with the support cube (type: generator<int>, ForwardIt, or bdd in ascending order); variables not in support are kept as-is.

    For such a case, we probably need some new tests that exposes the use (and/or lack thereof) of the on-the-fly frame rule.

@SSoelvsten SSoelvsten added ✨ feature New operation or other feature 📁 bdd Binary Decision Diagrams 🎓 student project Work, work... but academic! labels Jul 29, 2024
@SSoelvsten SSoelvsten added this to the v2.1 : Relational Product milestone Oct 23, 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 🎓 student project Work, work... but academic!
Projects
None yet
Development

No branches or pull requests

1 participant