[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 separation-rg
enrich
   maplet, 
   gownership
with
   functions  ! : id × (ref → id) × (heap → bool) → heap → bool;
   predicates  rely : id × (ref → id) × heap × (ref → id) × heap;
               guar : id × (ref → id) × heap × (ref → id) × heap;
   variables  me : id;
              id : id;
              of : ref → id;
              hO : ref → id;
              r : ref;
              h : heap;
              hP : heap → bool;
              ohP : obj → heap → bool;
              o : obj;
   axioms 
      rely :  ⊦ rely(me, of1, h1, of2, h2) ↔ (∀ r. (of1(r) = me ↔ of2(r) = me) ∧ (of1(r) = me → (r ∈ h1 ↔ r ∈ h2) ∧ (r ∈ h1 → h1[r] = h2[r])));
      guar :  ⊦ guar(me, of1, h1, of2, h2) ↔ (∀ id. id ≠ me → rely(id, of1, h1, of2, h2));
      owned :  ⊦ !(id, of, hP)(h) ↔ hP(h) ∧ (∀ r. r ∈ h → of(r) = id);

   
end enrich