| st0[n0] = mkblock(x, lax, m), st[n0] = mkblock(x0, lax0, m0), n0 ∈ st0, n0 ∈ st, n0 ∈ dom st0 \ ns → n0 ∈ dom st \ ns, ∀ n. n ∈ st0 \ ns ∧ n ∈ st \ ns → (st0 \ ns)[n].list ⊑ (st \ ns)[n].list ∧ (st0 \ ns)[n].ladrlist ⊑ (st \ ns)[n].ladrlist ∧ # (st0 \ ns)[n].list = # (st0 \ ns)[n].ladrlist ∧ # (st \ ns)[n].list = # (st \ ns)[n].ladrlist ⊦ n0 = n, n0 ∈ ns, x ⊑ x0 ∧ lax ⊑ lax0 ∧ # x = # lax ∧ # x0 = # lax0 |
st[n0] = mkblock(x0, lax0, m0), st0[n0] = mkblock(x, lax, m), n0 ∈ st, n0 ∈ st0, ∀ n. n ∈ st0 \ ns ∧ n ∈ st \ ns → (st0 \ ns)[n].list ⊑ (st \ ns)[n].list ∧ (st0 \ ns)[n].ladrlist ⊑ (st \ ns)[n].ladrlist ∧ # (st0 \ ns)[n].list = # (st0 \ ns)[n].ladrlist ∧ # (st \ ns)[n].list = # (st \ ns)[n].ladrlist ⊦ n0 = n, n0 ∈ ns, x ⊑ x0 ∧ lax ⊑ lax0 ∧ # x = # lax ∧ # x0 = # lax0
Used simplifier rules: ⊦ n ∈ dom st ↔ n ∈ st; (s)% ⊦ n ∈ ns \ ns0 ↔ n ∈ ns ∧ ¬ n ∈ ns0; (ws)