Skip to content

Improve dd_replace for adjacent variable swaps #729

Description

@ssoelvsten

With #500 we add support for arbitrary variable reorderings. Yet, there are some non-monotone cases we can do faster! For example, if one is only swapping adjacent variables, then one can do it in a single (unnested) sweep! This is essentially the Jump_Down case (see #500 and #730) without the assumption that the target level is empty in the input BDD. Instead, the target level may be remapped to be prior to or later than the jumping level.

See [Sølvsten25] for more details.

References

  • [Sølvsten25] S. Sølvsten “I/O-efficient Symbolic Model Checking”. Aarhus University (2025)

Metadata

Metadata

Assignees

No one assigned

    Labels

    ✨ featureNew operation or other feature✨ optimisationIt's all about speed / space🎓 student projectWork, work... but academic!📁 internalThis is where the ✨magic✨happens

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions