Fil-C on Nix

Filnix wiki

mbrock/filnix/nanofil

state interpretation

Iris

Sources iris/program_logic/weakestpre.v (irisGS_gen)

The state interpretation is the proposition a language instance ties to the machine's real state. The WP receives it before every step and must give it back for the new state, so it is an invariant of every run; a proof never sees the state itself, only what owning fragments and the interpretation together imply. For heap_lang it is the authoritative ghost heap, which equals the real heap.

  • nanofil's Iris spike, heap_interp, interprets a memory and a runtime state as a ghost heap of pieces that agrees with the memory, live objects that do not overlap, and a ready runtime. A safepoint keeps it with the same ghost heap, from Runtime.v's collector_live, non_moving and aux_round_trip.

See How Iris works, nanofil's machine in Iris.