Skip to content

sir: native Vars small-step - #29

Draft
Eduardogbg wants to merge 9 commits into
mainfrom
sir/vars
Draft

sir: native Vars small-step#29
Eduardogbg wants to merge 9 commits into
mainfrom
sir/vars

Conversation

@Eduardogbg

Copy link
Copy Markdown
Collaborator

Native mixed-step for Vars. Shared values, memory, control, and traces live in Core.

Each effectful statement is its own constructor. Program.At packages the cursor lookup with the operand binds.

memoryPolicy admits any disjoint placement of the requested size. bumpPolicy is the release bump; bumpPolicy_refines_memoryPolicy.

Layout

  • Sir/Core/Spec, Proofs/, Theorems
  • Sir/Vars/Spec, Proofs/, Theorems

State.evaluate takes the statement. sstore lookups live there.
jump and evaluateTerminator return Except IRError (Locals × Control).
ObservableOutcome lives in Core.
jump, evaluateTerminator, and resume propagate IR errors through Except. Characterization lemmas keep downstream proofs independent of the elaborated bind terms.

Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
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