Skip to content

AE: replace legacy interval state with native Box - #1886

Closed
JoelYYoung wants to merge 1 commit into
SVF-tools:masterfrom
JoelYYoung:native-box-only-ae
Closed

AE: replace legacy interval state with native Box#1886
JoelYYoung wants to merge 1 commit into
SVF-tools:masterfrom
JoelYYoung:native-box-only-ae

Conversation

@JoelYYoung

Copy link
Copy Markdown
Contributor

Summary

  • replace the legacy IntervalState trace with BoxProgramState as the authoritative AE state
  • use native Box in dense, semi-sparse, and full-sparse execution modes
  • remove the unused Octagon, convex-polyhedra, APRON/NewPolka, legacy sparse, and alternate Box-storage implementations
  • remove Address as an independent abstract domain while retaining the internal pointer, memory, shape, and lifetime facts required by AE semantics
  • retain the benchmark-selected sorted page directory with page-level copy-on-write
  • add Box raw serialization/hash, domain regression coverage, and end-to-end AE tests

State model

BoxProgramState owns the numerical Box carrier and the internal pointer/memory/lifetime facets. There is no compatibility IntervalState trace and no second numerical state updated alongside Box.

Validation

  • clean Release build: 132/132 targets
  • CTest: 10/10 passed
    • Box lattice and transfer operations
    • environment changes, expand/fold, and tree expressions
    • paged copy-on-write and raw serialization/hash
    • pointer/memory/lifetime integration
    • dense, semi-sparse, and full-sparse projection and loop tests
    • sparse memory flow, environment alignment, and wide integers

Scope

Relational numerical domains are intentionally left out of this PR. They can be revisited separately after the Box-only AE baseline is reviewed and stabilized.

@JoelYYoung
JoelYYoung force-pushed the native-box-only-ae branch 3 times, most recently from 59309dd to 1c7fa4f Compare September 2, 2026 08:57
Make BoxProgramState the authoritative abstract-execution state across dense, semi-sparse, and full-sparse modes. Remove the legacy IntervalState path and the unused Octagon, polyhedra, APRON, and alternate Box-storage implementations. Keep pointer, memory, shape, and lifetime facts as internal Box program-state facets. Add Box unit and end-to-end integration coverage.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant