| [:S | [PL ¬ Pre1(pm, S)] ∥nf [PL R2(pm, S', S'') -+-> (last ⊃ Post2(pm, s, S);G2(pm, S, S'))]], RG-restr(pm, R1, G1, Pre1, Post1, I, R2, G2, Pre2, Post2), Pre1(pm, S), Pre2(pm, s), I(pm, S), I(pm, s) ⊦ (R1(pm, S', S'') ∧ R2(pm, S', S'')) -+-> (last ⊃ Post1(pm, s, S) ∧ Post2(pm, s, S);G1(pm, S, S') ∨ G2(pm, S, S')) |
∃ Boolvar. ◇ Boolvar ∧ [:S | Boolvar ∨ false ::- [PL ¬ Pre1(pm, S)] ∥nf false ::- [PL R2(pm, S', S'') -+-> (last ⊃ Post2(pm, s, S);G2(pm, S, S'))]], RG-restr(pm, R1, G1, Pre1, Post1, I, R2, G2, Pre2, Post2), Pre1(pm, S), Pre2(pm, s), I(pm, S), I(pm, s) ⊦ (R1(pm, S', S'') ∧ R2(pm, S', S'')) -+-> (last ⊃ Post1(pm, s, S) ∧ Post2(pm, s, S);G1(pm, S, S') ∨ G2(pm, S, S'))
\E ∃ S. [:S | [PL ¬ Pre1(pm, S)]], □ (¬ last ∧ ¬ blocked), [:S | [PL R2(pm, S', S'') -+-> (last ⊃ Post2(pm, s, S);G2(pm, S, S'))]], RG-restr(pm, R1, G1, Pre1, Post1, I, R2, G2, Pre2, Post2), Pre1(pm, S), Pre2(pm, s), I(pm, S), I(pm, s) ⊦ (R1(pm, S', S'') ∧ R2(pm, S', S'')) -+-> (last ⊃ Post1(pm, s, S) ∧ Post2(pm, s, S);G1(pm, S, S') ∨ G2(pm, S, S'))