| rs2 ∩ rs = ∅, rs1 ∩ rs2 = ∅, rs1 ∩ rs = ∅, a0[P0][rs2, f, g], R[rs, f, g], a[P][rs1, f, g] ⊦ g(r) = a0, g(r) = a, (a[P] * a0[P0] * true)[rs1 ∪ rs2 ∪ rs, f(r; o), g] |
⊦ R0[rs0, f, g] ∧ R1[rs1, f, g] ∧ rs0 ∩ rs1 = ∅ → (R0 * R1)[rs0 ∪ rs1, f, g]
rs1 ∩ rs = ∅, rs1 ∩ rs2 = ∅, rs2 ∩ rs = ∅, a[P][rs1, f, g], R[rs, f, g], a0[P0][rs2, f, g] ⊦ g(r) = a, g(r) = a0, (a[P] * a0[P0] * true)[rs1 ∪ rs2 ∪ rs, f(r; o), g], a[P][rs1, f(r; o), g] ∧ (a0[P0] * true)[rs2 ∪ rs, f(r; o), g] ∧ rs1 ∩ (rs2 ∪ rs) = ∅
Used terms: g, f(r; o), rs2 ∪ rs, rs1, a0[P0] * true, a[P]