| □ (Outf = Outf' ∧ Inpf = Inpf'), [:S | [PL ¬ GInv(S) ∨ ¬ Pr(n0 + 1)(S)] ∥ [PL GInv(S) ∧ Prton(n0)(S) ∧ (Rton(n0)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0)(S) ∧ GInv(S);Gton(n0)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(S'))) ] ], Prton(n0 + 1)(S), GInv(S) ⊦ (Rton(n0 + 1)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0 + 1)(S) ∧ GInv(S);Gton(n0 + 1)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(S'))) |
[:S | [PL ¬ Pre1(S) ∨ ¬ Inv(S)] ∥ [PL (R2(S', S'') ∧ (Inv(S') → Inv(S''))) -+-> (last ⊃ Post2(S);G2(S, S') ∧ (Inv(S) → Inv(S')) ∧ (Inv(S) ∧ Runs2(S) → ¬ blocked))] ], RG-restr(Init, Inv, R1, G1, Pre1, Post1, Runs1, R2, G2, Pre2, Post2, Runs2), Inv(S), Pre1(S) ⊦ (R1(S', S'') ∧ R2(S', S'') ∧ (Inv(S') → Inv(S''))) -+-> (last ⊃ Post1(S) ∧ Post2(S) ∧ Inv(S);(G1(S, S') ∨ G2(S, S')) ∧ (Inv(S) → Inv(S')) ∧ ¬ blocked)
□ (Outf = Outf' ∧ Inpf = Inpf'), [:S | [PL ¬ GInv(S) ∨ ¬ Pr(n0 + 1)(S)] ∥ [PL GInv(S) ∧ Prton(n0)(S) ∧ (Rton(n0)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0)(S) ∧ GInv(S);Gton(n0)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(S'))) ] ], Prton(n0 + 1)(S), GInv(S) ⊦ [:S | [PL ¬ Pr(n0 + 1)(S) ∨ ¬ GInv(S)] ∥ [PL (Rton(n0)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0)(S);Gton(n0)(S, S') ∧ (GInv(S) → GInv(S')) ∧ (GInv(S) ∧ true → ¬ blocked)) ] ] ∧ RG-restr(GInit, GInv, Ry(n0 + 1), Gr(n0 + 1), Pr(n0 + 1), Po(n0 + 1), λ s. true, Rton(n0), Gton(n0), Pr(n0), Poton(n0), λ s. true) ∧ Pr(n0 + 1)(S), (Rton(n0 + 1)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0 + 1)(S) ∧ GInv(S);Gton(n0 + 1)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(S')))
(Ry(n0 + 1)(S', S'') ∧ Rton(n0)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Po(n0 + 1)(S) ∧ Poton(n0)(S) ∧ GInv(S);(Gr(n0 + 1)(S, S') ∨ Gton(n0)(S, S')) ∧ (GInv(S) → GInv(S')) ∧ ¬ blocked), □ (Outf = Outf' ∧ Inpf = Inpf'), [:S | [PL ¬ GInv(S) ∨ ¬ Pr(n0 + 1)(S)] ∥ [PL GInv(S) ∧ Prton(n0)(S) ∧ (Rton(n0)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0)(S) ∧ GInv(S);Gton(n0)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(S'))) ] ], Prton(n0 + 1)(S), GInv(S) ⊦ (Rton(n0 + 1)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0 + 1)(S) ∧ GInv(S);Gton(n0 + 1)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(S')))
Used terms: Pr(n0 + 1), S, GInv, Rton(n0), Poton(n0), Gton(n0), λ s. true, GInit, Ry(n0 + 1), Gr(n0 + 1), Po(n0 + 1), λ s. true, Pr(n0)