| □ (Outf = Outf' ∧ Inpf = Inpf'), [:S | [PL GInv(S) ∧ Pr(n0 + 1)(S) ∧ (Ry(n0 + 1)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Po(n0 + 1)(S) ∧ GInv(S);Gr(n0 + 1)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(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 (Ry(n0 + 1)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Po(n0 + 1)(S);Gr(n0 + 1)(S, S') ∧ (GInv(S) → GInv(S')) ∧ (GInv(S) → ¬ blocked))] ∥ [PL (Rton(n0)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0)(S);Gton(n0)(S, S') ∧ (GInv(S) → GInv(S')) ∧ (GInv(S) → ¬ blocked))] ] ∧ RG-restr(GInit, GInv, Ry(n0 + 1), Gr(n0 + 1), Pr(n0 + 1), Po(n0 + 1), λ s. true, Rton(n0), Gton(n0), Prton(n0), Poton(n0), λ s. true) |
[:S | [PL GInv(S) ∧ Pr(n0 + 1)(S) ∧ (Ry(n0 + 1)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Po(n0 + 1)(S) ∧ GInv(S);Gr(n0 + 1)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(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'))) ] ], □ (Outf = Outf' ∧ Inpf = Inpf'), 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 (Ry(n0 + 1)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Po(n0 + 1)(S);Gr(n0 + 1)(S, S') ∧ (GInv(S) → GInv(S')) ∧ (GInv(S) → ¬ blocked))] ∥ [PL (Rton(n0)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Poton(n0)(S);Gton(n0)(S, S') ∧ (GInv(S) → GInv(S')) ∧ (GInv(S) → ¬ blocked))] ]
[:S | [PL GInv(S) ∧ Pr(n0 + 1)(S) ∧ (Ry(n0 + 1)(S', S'') ∧ (GInv(S') → GInv(S''))) -+-> (last ⊃ Po(n0 + 1)(S) ∧ GInv(S);Gr(n0 + 1)(S, S') ∧ ¬ blocked ∧ (GInv(S) → GInv(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'))) ] ], □ (Outf = Outf' ∧ Inpf = Inpf'), Prton(n0 + 1)(S), GInv(S), ¬ RG-restr(GInit, GInv, Ry(n0 + 1), Gr(n0 + 1), Pr(n0 + 1), Po(n0 + 1), λ s. true, Rton(n0), Gton(n0), Prton(n0), Poton(n0), λ s. true) ⊦ (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')))