| mk(rs, f, g) = mk(rs0, f0, g0) ∪ mk(rs1, f1, g1), rs0 ∩ rs1 = ∅, P0(mk(rs0, f0)), P1(mk(rs1, f1)), ∀ r. r ∈ rs0 → g0(r) = a, ∀ r. r ∈ rs1 → g1(r) = a ⊦ ∀ r. (r ∈ mk(rs, f) ↔ r ∈ mk(rs0, f0) ∪ mk(rs1, f1)) ∧ (r ∈ mk(rs, f) → mk(rs, f)[r] = (mk(rs0, f0) ∪ mk(rs1, f1))[r]) |
mk(rs, f, g) = mk(rs0, f0, g0) ∪ mk(rs1, f1, g1), rs0 ∩ rs1 = ∅, P0(mk(rs0, f0)), P1(mk(rs1, f1)), ∀ r. r ∈ rs1 → g1(r) = a, ∀ r. r ∈ rs0 → g0(r) = a ⊦ (r ∈ rs ↔ r ∈ mk(rs0, f0) ∪ mk(rs1, f1)) ∧ (r ∈ rs → f(r) = (mk(rs0, f0) ∪ mk(rs1, f1))[r])
Used simplifier rules: ⊦ r ∈ rs → mk(rs, f)[r] = f(r); (s)% ⊦ r ∈ mk(rs, f) ↔ r ∈ rs; (s)