[Imprint][Data Privacy Statement][E-Mail]

Back to main index. View the specification. View theorem base summary, View theorem base listing, the used properties by spec, the dependency list, the symbol table,

Specification heap-mod
enrich
   rtc-heap, 
   heap-sep
with
   functions  modify : refset → heap × heap → bool;
              modify* : refset → heap × heap → bool;
              . ≡ . : heap × heap → refset → bool;
   predicates  footprint : refset × (heap → bool) × heap;
   variables  h : heap;
              r : ref;
              rs : refset;
              hP : heap → bool;
   axioms 
      modify
      : ⊦   modify(rs)(h0, h1)
          ↔   (∃ r. ¬ r ∈ rs ∧ r ≠ null ∧ ¬ r ∈ h0 ∧ h1 = h0 ++ r) ∨ (∃ r, o. ¬ r ∈ rs ∧ r ∈ h0 ∧ h1 = h0[r, o])
            ∨ (∃ r. ¬ r ∈ rs ∧ r ∈ h0 ∧ h1 = h0 -- r);
      modify+ :  ⊦ modify*(rs)(h0, h1) ↔ modify(rs) ^*(h0, h1);
      footprint :  ⊦ footprint(rs, hP, h0) ↔ (∀ h1. modify*(rs)(h0, h1) → (hP(h0) ↔ hP(h1)));
      agree :  ⊦ ((h0 ≡ h1))(rs) ↔ (∀ r. r ∈ rs → (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0[r] = h1[r]));

   
end enrich