| n ≠ 0, 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)), m0 < n, CGuar(m0 + 1, Act, CS, Act', CS'), ∀ m1. ¬(m1 ≤ m0 + 1 ∧ CGuar(m1, Act, CS, Act', CS')), CInv(n, Act, CS) → CInv(n, Act', CS') ⊦ last |
n ≠ 0, 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)), m0 < n, CGuar(m0 + 1, Act, CS, Act', CS'), CInv(n, Act, CS) → CInv(n, Act', CS'), ∀ m. ¬ m ≤ m0 + 1 ∨ ¬ CGuar(m, Act, CS, Act', CS') ⊦ last