<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="../../../unit.xsl"?>
<KIVSPEC name="Protocol-refines-Atomic"><SPECBODY>enrich <a href="../../../specs/Atomic/export/unit.xml">Atomic</a> , 
       <a href="../../../specs/Protocol/export/unit.xml">Protocol</a> , 
       <a href="../../../specs/no-deadlocked-or-infinite-paths/export/unit.xml">no-deadlocked-or-infinite-paths</a> with comment: This specification defines the past and future oriented
simulation relations RP and RF. The 'big step' proof obligations
is given as an axiom. Proposition 3.3 and Theorem 3.4
are proved.;
   
   predicates 
      R : U × V;
      RP : U × V;
      RF : U × V;
      Input : I × Jlist;
      Output : O × Plist;
   
   axioms 
      big-step-ax :  ⊦ Protocol(v, js, ps, v') → (∃ u, i, o, u'. R(u, v) ∧ Input(i, js) ∧ Atomic(u, i, o, u') ∧ Output(o, ps) ∧ R(u', v'));
      functional-R :  ⊦ R(u, v) ∧ R(u', v) → u = u'; used for : f, lf;
      RP-def :  ⊦ RP(u, v) ↔ (∃ pa. R(u, pa .first) ∧ FPath(pa) ∧ pa .last = v);
      RF-def :  ⊦ RF(u, v) ↔ (∃ pa. pa .first = v ∧ BPath(pa) ∧ R(u, pa .last));
   
end enrich</SPECBODY></KIVSPEC>
