@@ -139,9 +139,10 @@ of the procedure under consideration.
139139 lemma L (M <: MT {-O}): hoare[M(O).f : p x ==> q res].
140140 proof.
141141 (*$ *) proc (inv O.y).
142- - admit.
143- - admit.
144- - admit.
142+ - admit. (* Invariant holds initially *)
143+ - admit. ( * Invariant implies postcondition *)
144+ - admit. ( * Procedure g1 preserves invariant *)
145+ ( * Procedure g2 preserves invariant *)
145146 abort.
146147
147148.. ecproof ::
@@ -177,10 +178,11 @@ of the procedure under consideration.
177178 lemma L (M <: MT {-O}): phoare[M(O).f : p x ==> q res] = 1%r.
178179 proof.
179180 (*$ *) proc (inv O.y).
180- - admit.
181- - admit.
182- - admit.
183- - admit.
181+ - admit. (* Invariant holds initially *)
182+ - admit. ( * Invariant implies postcondition *)
183+ - admit. ( * Losslessness of M(O).f *)
184+ - admit. ( * Procedure g1 preserves invariant *)
185+ ( * Procedure g2 preserves invariant *)
184186 abort.
185187
186188.. ecproof ::
@@ -216,9 +218,10 @@ of the procedure under consideration.
216218 lemma L (M <: MT {-O}): ehoare[M(O).f : p x ==> q res].
217219 proof.
218220 (*$ *) proc (inv O.y).
219- - admit.
220- - admit.
221- - admit.
221+ - admit. (* Invariant holds initially *)
222+ - admit. ( * Invariant implies postcondition *)
223+ - admit. ( * Procedure g1 preserves invariant *)
224+ ( * Procedure g2 preserves invariant *)
222225 abort.
223226
224227
@@ -305,9 +308,10 @@ and yield equal results when called on equal arguments.
305308 lemma L (M <: MT {-O1, -O2}): equiv[M(O1).f ~ M(O2).f: p x{1} x{2} ==> q res{1} res{2}].
306309 proof.
307310 (*$ *) proc (inv O1.y{1} O2.y{2}).
308- - admit.
309- - admit.
310- - admit.
311+ - admit. (* Invariant holds initially *)
312+ - admit. ( * Invariant implies postcondition *)
313+ - admit. ( * Procedure g1 preserves invariant *)
314+ ( * Procedure g2 preserves invariant *)
311315 abort.
312316
313317When ``{formulaB} `` and ``{formulaJ} `` are provided, the equality of
@@ -370,9 +374,10 @@ two programs using the ``sym`` tactic before applying ``proc``.
370374 lemma L (M <: MT {-O1, -O2}): equiv[M(O1).f ~ M(O2).f: p x{1} x{2} ==> q res{1} res{2}].
371375 proof.
372376 (*$ *) proc (bad O2.y) (inv O1.y{1} O2.y{2}) (inv2 O1.y{1} O2.y{2}).
373- - admit.
374- - admit.
375- - admit.
376- - admit.
377- - admit.
377+ - admit. (* Connecting precondition to invariants *)
378+ - admit. ( * Connecting invariants to postcondition *)
379+ - admit. ( * Losslessness of M(O).f *)
380+ - admit. ( * Relating O1.g and O2.g during synchronization *)
381+ - admit. ( * Behaviour of O1.g after bad event *)
382+ ( * Behaviour of O2.g after bad event *)
378383 abort.
0 commit comments