| [:Act, Inp, CS, Outp | [PL CInv(n, Act, CS) ∧ Idle(m0 + 1, CS) → (CRely(m0 + 1, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuar(m0 + 1, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) ] ∥ [PL CInitto(m0, Act, CS) ∧ CInv(n, Act, CS) → (CRelyto(m0, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuarto(m0, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) ] ], n ≠ 0, CInv(n, Act, CS), CInitto(m0 + 1, Act, CS), m0 < n, RG-restr (n, λ n, act, cs, act0, cs0. CRely(m0 + 1, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs, act0, cs0. CGuar(m0 + 1, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs. CInit(m0 + 1, act, cs) ∧ CInv(n, act, cs), λ n, act, cs, act0, cs0. CInv(n, act0, cs0), CInv, λ n, act, cs, act0, cs0. CRelyto(m0, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs, act0, cs0. CGuarto(m0, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs. CInitto(m0, act, cs) ∧ CInv(n, act, cs), λ n, act, cs, act0, cs0. CInv(n, act0, cs0)) ⊦ (CRelyto(m0 + 1, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuarto(m0 + 1, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) |
[:Act4, CS4 | [PL Pre1(n2, Act4, CS4) → R1(n2, Act4', CS4', Act4'', CS4'') -+-> (last ⊃ Post1(n2, act, cs, Act4, CS4);G1(n2, Act4, CS4, Act4', CS4'))] ∥ [PL Pre2(n2, Act4, CS4) → R2(n2, Act4', CS4', Act4'', CS4'') -+-> (last ⊃ Post2(n2, act, cs, Act4, CS4);G2(n2, Act4, CS4, Act4', CS4'))] ], RG-restr(n2, R1, G1, Pre1, Post1, IV, R2, G2, Pre2, Post2), Pre1(n2, Act4, CS4), Pre2(n2, Act4, CS4), Act4 = act ∧ CS4 = cs ⊦ (R1(n2, Act4', CS4', Act4'', CS4'') ∧ R2(n2, Act4', CS4', Act4'', CS4'')) -+-> (last ⊃ Post1(n2, act, cs, Act4, CS4) ∧ Post2(n2, act, cs, Act4, CS4);G1(n2, Act4, CS4, Act4', CS4') ∨ G2(n2, Act4, CS4, Act4', CS4'))
[:Act, Inp, CS, Outp | [PL CInv(n, Act, CS) ∧ Idle(m0 + 1, CS) → (CRely(m0 + 1, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuar(m0 + 1, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) ] ∥ [PL CInitto(m0, Act, CS) ∧ CInv(n, Act, CS) → (CRelyto(m0, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuarto(m0, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) ] ], n ≠ 0, CInv(n, Act, CS), CInitto(m0 + 1, Act, CS), m0 < n, RG-restr (n, λ n, act, cs, act0, cs0. CRely(m0 + 1, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs, act0, cs0. CGuar(m0 + 1, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs. CInit(m0 + 1, act, cs) ∧ CInv(n, act, cs), λ n, act, cs, act0, cs0. CInv(n, act0, cs0), CInv, λ n, act, cs, act0, cs0. CRelyto(m0, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs, act0, cs0. CGuarto(m0, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs. CInitto(m0, act, cs) ∧ CInv(n, act, cs), λ n, act, cs, act0, cs0. CInv(n, act0, cs0)) ⊦ ⟨cs := CS, act := Act⟩ [:Act, CS | [PL CInit(m0 + 1, Act, CS) ∧ CInv(n, Act, CS) → (CRely(m0 + 1, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuar(m0 + 1, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) ] ∥ [PL CInitto(m0, Act, CS) ∧ CInv(n, Act, CS) → (CRelyto(m0, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuarto(m0, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) ] ] ∧ CInit(m0 + 1, Act, CS) ∧ CInitto(m0, Act, CS) ∧ Act = Act ∧ CS = CS, (CRelyto(m0 + 1, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuarto(m0 + 1, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS')))
⟨cs := CS, act := Act⟩ ( ( (CRely(m0 + 1, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) ∧ CRelyto(m0, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS) ∧ CInv(n, Act, CS) ; CGuar(m0 + 1, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS')) ∨ CGuarto(m0, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS')) )), [:Act, Inp, CS, Outp | [PL CInv(n, Act, CS) ∧ Idle(m0 + 1, CS) → (CRely(m0 + 1, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuar(m0 + 1, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) ] ∥ [PL CInitto(m0, Act, CS) ∧ CInv(n, Act, CS) → (CRelyto(m0, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuarto(m0, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS'))) ] ], n ≠ 0, CInv(n, Act, CS), CInitto(m0 + 1, Act, CS), m0 < n, RG-restr (n, λ n, act, cs, act0, cs0. CRely(m0 + 1, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs, act0, cs0. CGuar(m0 + 1, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs. CInit(m0 + 1, act, cs) ∧ CInv(n, act, cs), λ n, act, cs, act0, cs0. CInv(n, act0, cs0), CInv, λ n, act, cs, act0, cs0. CRelyto(m0, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs, act0, cs0. CGuarto(m0, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs. CInitto(m0, act, cs) ∧ CInv(n, act, cs), λ n, act, cs, act0, cs0. CInv(n, act0, cs0)) ⊦ (CRelyto(m0 + 1, Act', CS', Act'', CS'') ∧ (CInv(n, Act', CS') → CInv(n, Act'', CS''))) -+-> (last ⊃ CInv(n, Act, CS);CGuarto(m0 + 1, Act, CS, Act', CS') ∧ (CInv(n, Act, CS) → CInv(n, Act', CS')))
Used terms: λ n, act, cs. CInit(m0 + 1, act, cs) ∧ CInv(n, act, cs), n, Act, CS, λ n, act, cs, act0, cs0. CInv(n, act0, cs0), Act, CS, λ n, act, cs, act0, cs0. CGuar(m0 + 1, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs, act0, cs0. CRely(m0 + 1, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs. CInitto(m0, act, cs) ∧ CInv(n, act, cs), λ n, act, cs, act0, cs0. CInv(n, act0, cs0), λ n, act, cs, act0, cs0. CGuarto(m0, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), λ n, act, cs, act0, cs0. CRelyto(m0, act, cs, act0, cs0) ∧ (CInv(n, act, cs) → CInv(n, act0, cs0)), CInv