Fil-C on Nix

Filnix wiki

mbrock/filnix/nanofil

update modality

Iris also basic update, fancy update, mask

Sources The Essence of Higher-Order Concurrent Separation Logic, ESOP 2017

An update modality says a proposition holds after a change the proof makes on its own, with no program step. The basic update |⇛ P changes ghost state by frame-preserving updates and allocates new ghost locations. The fancy update E1|⇛E2 P may also open and close invariants, from the mask E1 of closed invariants to E2; P ⇛E Q is P −∗ |⇛E Q.

  • In nanofil's Iris spike, an allocation's step gives the new object's pieces by a basic update (gen_heap's allocation) after the runtime picks a fresh base (fresh_allocation), and a store changes the stored pieces' values by another.

See How Iris works, Update modalities.