Use bundled type classes for ghost ownership.
* These type classes bundle an identifier into the global CMRA with a proof that the identifier points to the correct CMRA. Bundling allows us to get rid of many arguments everywhere. * I have setup the type classes so that we no longer have to keep track of the global CMRA identifiers. These are implicit and resolved automatically. * For heap I am also bundling the name of the heap RA instance. There always should be at most one heap instance so this does not introduce ambiguities. * We now have a "maps to" notation!
Showing
- barrier/barrier.v 16 additions, 17 deletionsbarrier/barrier.v
- heap_lang/heap.v 65 additions, 60 deletionsheap_lang/heap.v
- heap_lang/tests.v 3 additions, 3 deletionsheap_lang/tests.v
- program_logic/auth.v 31 additions, 32 deletionsprogram_logic/auth.v
- program_logic/ghost_ownership.v 43 additions, 41 deletionsprogram_logic/ghost_ownership.v
- program_logic/saved_prop.v 9 additions, 9 deletionsprogram_logic/saved_prop.v
- program_logic/sts.v 36 additions, 39 deletionsprogram_logic/sts.v
- program_logic/viewshifts.v 6 additions, 6 deletionsprogram_logic/viewshifts.v
Loading
Please register or sign in to comment