| rs2 ∩ rs1 = ∅, a[P][rs2, f0, g0], ∀ r. (g(r) = a ∧ r ∈ rs ↔ g0(r) = a ∧ r ∈ rs2 ∪ rs1) ∧ (g(r) = a ∧ r ∈ rs → f(r) = f0(r)) ⊦ rs2 ∪ (rs \ rs2) = rs |
rs2 ∩ rs1 = ∅, a[P][rs2, f0, g0], ∀ r. (g(r) = a ∧ r ∈ rs ↔ g0(r) = a ∧ r ∈ rs2 ∪ rs1) ∧ (g(r) = a ∧ r ∈ rs → f(r) = f0(r)) ⊦ rs2 ∪ (rs \ rs2) = rs, rs2 ⊆ rs
Used simplifier rules: ⊦ rs ⊆ rs0 → rs ∪ (rs0 \ rs) = rs0; (s)%una: ⊦ (rs ∪ rs0) ∪ rs1 = rs ∪ rs0 ∪ rs1; from specification set-union[refset]%unc: ⊦ rs ∪ rs0 = rs0 ∪ rs; from specification set-union[refset] Used formulas: rs2 ⊆ rs