| mk(rs, f) = mk(rs0, f0) ∪ mk(rs1, f1), rs0 ∩ rs1 = ∅, P0(mk(rs0, f0)), P1(mk(rs1, f1)) ⊦ P1(mk(rs1, f)), ∀ r. (r ∈ mk(rs1, f) ↔ r ∈ mk(rs1, f1)) ∧ (r ∈ mk(rs1, f) → mk(rs1, f)[r] = mk(rs1, f1)[r]) |
mk(rs, f) = mk(rs0, f0) ∪ mk(rs1, f1), rs0 ∩ rs1 = ∅, P0(mk(rs0, f0)), P1(mk(rs1, f1)), r ∈ rs1 ⊦ # rs1 = 0, f(r) = f1(r), rs1 = ∅, P1(mk(rs1, f))
Used simplifier rules: in-mk: ⊦ r ∈ mk(rs, f) ↔ r ∈ rs;%at-mk: ⊦ r ∈ rs → mk(rs, f)[r] = f(r);%size-zero-01: ⊦ rs ≠ ∅ → # rs ≠ 0; (forward) from specification set-basic[refset]%ne-01: ⊦ r ∈ rs → rs ≠ ∅; (forward) from specification set-basic[refset]