| rs1 ∩ rs0 = ∅, ((r => a × r0))(H0), R[rs0, cf, af], ls(r0, x0)(H), H0 ⊥ H, ∀ r. (r ∈ mk(rs1, cf) ↔ r ∈ H0 ∪ H) ∧ (r ∈ mk(rs1, cf) → mk(rs1, cf)[r] = (H0 ∪ H)[r]) ⊦ af(r) = o, r = null, r ∈ rs1 |
rs1 ∩ rs0 = ∅, ((r => a × r0))(H0), R[rs0, cf, af], ls(r0, x0)(H), H0 ⊥ H, ∀ r1. (r1 ∈ rs1 ↔ r1 ∈ H0 ∨ r1 ∈ H) ∧ (r1 ∈ rs1 → cf(r1) = (H0 ∪ H)[r1]) ⊦ af(r) = o, r = null, r ∈ rs1
Used simplifier rules: ⊦ r ∈ rs → mk(rs, cf)[r] = cf(r); (s)% ⊦ H0 ⊥ H1 → (r ∈ H0 ∪ H1 ↔ r ∈ H0 ∨ r ∈ H1); (s)% ⊦ r ∈ mk(rs, cf) ↔ r ∈ rs; (s)