| ⊦ ( ( alldisjointp(alltids, gs.ghostlspmxf) ∧ disjointp(U(alltids, gs.ghostlspmxf), gs.gspmx) ∧ gs.y + (U(alltids, gs.ghostlspmxf) ∪ gs.gspmx).toMatrix(gs.r, # gs.x) * gs.x = gs.spmx.toMatrix(gs.r, # gs.x) * gs.x ∧ U(alltids, gs.ghostlspmxf) ∪ gs.gspmx ⊆ gs.spmx ∧ # gs.y = gs.r ∧ okspmx(gs.spmx, gs.r, # gs.x)) ∧ gs.ghostlspmxf(ls.tid) = ∅) ∧ pre(gs, ls, L2, a) ∧ pcstepf(gs, ls, L2, a) = L3 → ( alldisjointp(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∧ disjointp(U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf), gstepf(gs, ls, L2, a).gspmx) ∧ gstepf(gs, ls, L2, a).y + (U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∪ gstepf(gs, ls, L2, a).gspmx ).toMatrix (gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x ) * gstepf(gs, ls, L2, a).x = gstepf(gs, ls, L2, a).spmx.toMatrix(gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x) * gstepf(gs, ls, L2, a).x ∧ U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∪ gstepf(gs, ls, L2, a).gspmx ⊆ gstepf(gs, ls, L2, a).spmx ∧ # gstepf(gs, ls, L2, a).y = gstepf(gs, ls, L2, a).r ∧ okspmx(gstepf(gs, ls, L2, a).spmx, gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x)) ∧ gstepf(gs, ls, L2, a).ghostlspmxf(lstepf(gs, ls, L2, a).tid) = lstepf(gs, ls, L2, a).lspmx |
# gs.y = gs.r, gs.y + (U(alltids, gs.ghostlspmxf) ∪ gs.gspmx).toMatrix(gs.r, # gs.x) * gs.x = gs.spmx.toMatrix(gs.r, # gs.x) * gs.x, gs.ghostlspmxf(ls.tid) = ∅, pcstepf(gs, ls, L2, a) = L3, alldisjointp(alltids, gs.ghostlspmxf), disjointp(U(alltids, gs.ghostlspmxf), gs.gspmx), okspmx(gs.spmx, gs.r, # gs.x), pre(gs, ls, L2, a), U(alltids, gs.ghostlspmxf) ∪ gs.gspmx ⊆ gs.spmx ⊦ ( alldisjointp(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∧ disjointp(U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf), gstepf(gs, ls, L2, a).gspmx) ∧ gstepf(gs, ls, L2, a).y + (U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∪ gstepf(gs, ls, L2, a).gspmx ).toMatrix (gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x ) * gstepf(gs, ls, L2, a).x = gstepf(gs, ls, L2, a).spmx.toMatrix(gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x) * gstepf(gs, ls, L2, a).x ∧ U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∪ gstepf(gs, ls, L2, a).gspmx ⊆ gstepf(gs, ls, L2, a).spmx ∧ # gstepf(gs, ls, L2, a).y = gstepf(gs, ls, L2, a).r ∧ okspmx(gstepf(gs, ls, L2, a).spmx, gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x)) ∧ gstepf(gs, ls, L2, a).ghostlspmxf(lstepf(gs, ls, L2, a).tid) = lstepf(gs, ls, L2, a).lspmx
| # gs.y = gs.r, gs.y + (U(alltids, gs.ghostlspmxf) ∪ gs.gspmx).toMatrix(gs.r, # gs.x) * gs.x = gs.spmx.toMatrix(gs.r, # gs.x) * gs.x, gs.ghostlspmxf(ls.tid) = ∅, pcstepf(gs, ls, L2, a) = L3, alldisjointp(alltids, gs.ghostlspmxf), disjointp(U(alltids, gs.ghostlspmxf), gs.gspmx), okspmx(gs.spmx, gs.r, # gs.x), pre(gs, ls, L2, a), U(alltids, gs.ghostlspmxf) ∪ gs.gspmx ⊆ gs.spmx ⊦ ( alldisjointp(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∧ disjointp(U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf), gstepf(gs, ls, L2, a).gspmx) ∧ gstepf(gs, ls, L2, a).y + (U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∪ gstepf(gs, ls, L2, a).gspmx ).toMatrix (gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x ) * gstepf(gs, ls, L2, a).x = gstepf(gs, ls, L2, a).spmx.toMatrix(gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x) * gstepf(gs, ls, L2, a).x ∧ U(alltids, gstepf(gs, ls, L2, a).ghostlspmxf) ∪ gstepf(gs, ls, L2, a).gspmx ⊆ gstepf(gs, ls, L2, a).spmx ∧ # gstepf(gs, ls, L2, a).y = gstepf(gs, ls, L2, a).r ∧ okspmx(gstepf(gs, ls, L2, a).spmx, gstepf(gs, ls, L2, a).r, # gstepf(gs, ls, L2, a).x)) ∧ gstepf(gs, ls, L2, a).ghostlspmxf(lstepf(gs, ls, L2, a).tid) = lstepf(gs, ls, L2, a).lspmx |
# gs.y = gs.r, gs.y + (U(alltids, gs.ghostlspmxf) ∪ gs.gspmx).toMatrix(gs.r, # gs.x) * gs.x = gs.spmx.toMatrix(gs.r, # gs.x) * gs.x, gs.ghostlspmxf(ls.tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, gs.ghostlspmxf), disjointp(U(alltids, gs.ghostlspmxf), gs.gspmx), okspmx(gs.spmx, gs.r, # gs.x), lspmx ⊆ gs.spmx, lspmx ⊆ gs.gspmx, U(alltids, gs.ghostlspmxf) ⊆ gs.spmx, gs.gspmx ⊆ gs.spmx ⊦ alldisjointp(alltids, gs.ghostlspmxf(ls.tid; lspmx)) ∧ disjointp(U(alltids, gs.ghostlspmxf(ls.tid; lspmx)), gs.gspmx \ dom lspmx) ∧ gs.y + (U(alltids, gs.ghostlspmxf(ls.tid; lspmx)) ∪ (gs.gspmx \ dom lspmx)).toMatrix(gs.r, # gs.x) * gs.x = gs.spmx.toMatrix(gs.r, # gs.x) * gs.x ∧ U(alltids, gs.ghostlspmxf(ls.tid; lspmx)) ∪ (gs.gspmx \ dom lspmx) ⊆ gs.spmx
Used simplifier rules: pcstepf-L2: ⊦ pcstepf(gs, ls, L2, a) = (∃ lspmx0. a = chooseL2(lspmx0) ⊃ L3;L1); disj-35: ⊦ L1 ≠ L3; pre-L2: ⊦ pre(gs, ls, L2, a) ↔ (∃ lspmx0. (lspmx0 ≠ ∅ ∧ lspmx0 ⊆ gs.gspmx) ∧ a = chooseL2(lspmx0)) ∨ a = τ ∧ ¬(∃ lspmx0. lspmx0 ≠ ∅ ∧ lspmx0 ⊆ gs.gspmx); inj-04: ⊦ chooseL2(lspmx) = chooseL2(lspmx0) ↔ lspmx = lspmx0; disj-07: ⊦ τ ≠ chooseL2(lspmx); updsel-30: ⊦ (gs.ghostlspmxf:= ghostlspmxf).gspmx = gs.gspmx; updsel-26: ⊦ (gs.gspmx:= spmx0).gspmx = spmx0; updsel-48: ⊦ (gs.ghostlspmxf:= ghostlspmxf).y = gs.y; updsel-44: ⊦ (gs.gspmx:= spmx0).y = gs.y; updsel-24: ⊦ (gs.ghostlspmxf:= ghostlspmxf).spmx = gs.spmx; updsel-20: ⊦ (gs.gspmx:= spmx0).spmx = gs.spmx; updsel-36: ⊦ (gs.ghostlspmxf:= ghostlspmxf).r = gs.r; updsel-32: ⊦ (gs.gspmx:= spmx0).r = gs.r; updsel-42: ⊦ (gs.ghostlspmxf:= ghostlspmxf).x = gs.x; updsel-38: ⊦ (gs.gspmx:= spmx0).x = gs.x; gstepf-L2-1: ⊦ gstepf(gs, ls, L2, chooseL2(lspmx0)) = (gs.gspmx:= (gs.gspmx \ dom (ls.lspmx:= lspmx0).lspmx)) .ghostlspmxf:= gs.ghostlspmxf((ls.lspmx:= lspmx0).tid; (ls.lspmx:= lspmx0).lspmx); updsel-11: ⊦ (ls.lspmx:= lspmx).tid = ls.tid; updsel-54: ⊦ (gs.ghostlspmxf:= ghostlspmxf).ghostlspmxf = ghostlspmxf; lstepf-L2-1: ⊦ lstepf(gs, ls, L2, chooseL2(lspmx0)) = ls.lspmx:= lspmx0; updsel-14: ⊦ (ls.lspmx:= lspmx).lspmx = lspmx; sub-trans: ⊦ st ⊆ st0 ∧ st0 ⊆ st1 → st ⊆ st1; (forward) from specification store[sparsearray] ⊦ disjointp(spmx1, spmx2) → (spmx1 ∪ spmx2 ⊆ spmx ↔ spmx1 ⊆ spmx ∧ spmx2 ⊆ spmx); (ws)
| # gs.y = gs.r, gs.y + (U(alltids, gs.ghostlspmxf) ∪ gs.gspmx).toMatrix(gs.r, # gs.x) * gs.x = gs.spmx.toMatrix(gs.r, # gs.x) * gs.x, gs.ghostlspmxf(ls.tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, gs.ghostlspmxf), disjointp(U(alltids, gs.ghostlspmxf), gs.gspmx), okspmx(gs.spmx, gs.r, # gs.x), lspmx ⊆ gs.spmx, lspmx ⊆ gs.gspmx, U(alltids, gs.ghostlspmxf) ⊆ gs.spmx, gs.gspmx ⊆ gs.spmx ⊦ alldisjointp(alltids, gs.ghostlspmxf(ls.tid; lspmx)) ∧ disjointp(U(alltids, gs.ghostlspmxf(ls.tid; lspmx)), gs.gspmx \ dom lspmx) ∧ gs.y + (U(alltids, gs.ghostlspmxf(ls.tid; lspmx)) ∪ (gs.gspmx \ dom lspmx)).toMatrix(gs.r, # gs.x) * gs.x = gs.spmx.toMatrix(gs.r, # gs.x) * gs.x ∧ U(alltids, gs.ghostlspmxf(ls.tid; lspmx)) ∪ (gs.gspmx \ dom lspmx) ⊆ gs.spmx |
⊦ ((((spmx = gs.spmx ∧ gspmx = gs.gspmx) ∧ r = gs.r) ∧ x = gs.x) ∧ y = gs.y) ∧ ghostlspmxf = gs.ghostlspmxf ↔ gs = mkgs(spmx, gspmx, r, x, y, ghostlspmxf)
# y = r, y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(r, # x) * x = spmx.toMatrix(r, # x) * x, ghostlspmxf(ls.tid) = ∅, gs = mkgs(spmx, gspmx, r, x, y, ghostlspmxf), lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, r, # x), gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, lspmx ⊆ spmx ⊦ alldisjointp(alltids, ghostlspmxf(ls.tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(ls.tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(ls.tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(r, # x) * x = spmx.toMatrix(r, # x) * x ∧ U(alltids, ghostlspmxf(ls.tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
Used terms: y, gs, gspmx, ghostlspmxf, spmx, r, x
| ⊦ ((((spmx = gs.spmx ∧ gspmx = gs.gspmx) ∧ r = gs.r) ∧ x = gs.x) ∧ y = gs.y) ∧ ghostlspmxf = gs.ghostlspmxf ↔ gs = mkgs(spmx, gspmx, r, x, y, ghostlspmxf) |
| # y = r, y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(r, # x) * x = spmx.toMatrix(r, # x) * x, ghostlspmxf(ls.tid) = ∅, gs = mkgs(spmx, gspmx, r, x, y, ghostlspmxf), lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, r, # x), gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, lspmx ⊆ spmx ⊦ alldisjointp(alltids, ghostlspmxf(ls.tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(ls.tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(ls.tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(r, # x) * x = spmx.toMatrix(r, # x) * x ∧ U(alltids, ghostlspmxf(ls.tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(ls.tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ alldisjointp(alltids, ghostlspmxf(ls.tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(ls.tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(ls.tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(ls.tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
Used simplifier rules: sub-trans: ⊦ st ⊆ st0 ∧ st0 ⊆ st1 → st ⊆ st1; (forward) from specification store[sparsearray]
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(ls.tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ alldisjointp(alltids, ghostlspmxf(ls.tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(ls.tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(ls.tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(ls.tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
⊦ ((tid = ls.tid ∧ lspmx = ls.lspmx) ∧ np = ls.np) ∧ val = ls.val ↔ ls = mkls(tid, lspmx, np, val)
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, ls = mkls(tid, lspmx0, np, val), lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
Used terms: val, lspmx0, np, tid, ls
| ⊦ ((tid = ls.tid ∧ lspmx = ls.lspmx) ∧ np = ls.np) ∧ val = ls.val ↔ ls = mkls(tid, lspmx, np, val) |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, ls = mkls(tid, lspmx0, np, val), lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
Used formulas: alldisjointp(alltids, ghostlspmxf(tid; lspmx))
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx)) ≠ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
Used formulas: U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ disjointp(U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx) ∧ y + ((U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ⊆ spmx
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ disjointp(U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx) ∧ y + ((U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ disjointp(U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx) ∧ y + ((U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ⊆ spmx
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ≠ U(alltids, ghostlspmxf) ∪ gspmx, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ disjointp(U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx) ∧ y + ((U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ⊆ spmx
Used formulas: (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ disjointp(U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx) ∧ y + ((U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ disjointp(U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx) ⊦
Used simplifier rules: ⊦ disjointp(spmx1, spmx2) → (spmx1 ∪ spmx2 ⊆ spmx ↔ spmx1 ⊆ spmx ∧ spmx2 ⊆ spmx); (ws)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ disjointp(U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx) ⊦ |
⊦ disjointp(sa1, sa2) ↔ (∀ np. np ∈ sa1 → ¬ np ∈ sa2)
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∃ np. ¬(np ∈ U(alltids, ghostlspmxf) ∪ lspmx → ¬ np ∈ gspmx \ dom lspmx) ⊦
Used terms: U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx
| ⊦ disjointp(sa1, sa2) ↔ (∀ np. np ∈ sa1 → ¬ np ∈ sa2) |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∃ np. ¬(np ∈ U(alltids, ghostlspmxf) ∪ lspmx → ¬ np ∈ gspmx \ dom lspmx) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ gspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx ⊦
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s) ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2; (ws) ⊦ a ∈ dom st ↔ a ∈ st; (s) ⊦ a ∈ st \ s ↔ a ∈ st ∧ ¬ a ∈ s; (ws)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ gspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx ⊦ |
⊦ disjointp(sa1, sa2) ↔ (∀ np. np ∈ sa1 → ¬ np ∈ sa2)
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ gspmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ np. np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦
Used terms: U(alltids, ghostlspmxf), gspmx
| ⊦ disjointp(sa1, sa2) ↔ (∀ np. np ∈ sa1 → ¬ np ∈ sa2) |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ gspmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ np. np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), okspmx(spmx, # y, # x), np ∈ gspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx, np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx, ∀ np. np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦
Used terms: np
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), okspmx(spmx, # y, # x), np ∈ gspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx, np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx, ∀ np. np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ gspmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ np0. (∃ tid1. np0 ∈ ghostlspmxf(tid1)) → ¬ np0 ∈ gspmx ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1)
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) = U(alltids, ghostlspmxf) ∪ gspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ gspmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ np0. (∃ tid1. np0 ∈ ghostlspmxf(tid1)) → ¬ np0 ∈ gspmx ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1) |
Used terms: tid0
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ≠ U(alltids, ghostlspmxf) ∪ gspmx, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ disjointp(U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx) ∧ y + ((U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ⊆ spmx |
U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ≠ U(alltids, ghostlspmxf) ∪ gspmx, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦
| U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ≠ U(alltids, ghostlspmxf) ∪ gspmx, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ |
⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1[a] = st2[a])
U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∃ np. ¬ ( (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ ((U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx))[np] = (U(alltids, ghostlspmxf) ∪ gspmx)[np]) ⊦
Used terms: (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx), U(alltids, ghostlspmxf) ∪ gspmx
| ⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1[a] = st2[a]) |
| U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∃ np. ¬ ( (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ ((U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx))[np] = (U(alltids, ghostlspmxf) ∪ gspmx)[np]) ⊦ |
U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np])
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s) ⊦ (spmx1 ∪ spmx2)[np] = (np ∈ spmx1 ⊃ spmx1[np];spmx2[np]); (s)
| U(alltids, ghostlspmxf(tid; lspmx)) = U(alltids, ghostlspmxf) ∪ lspmx, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np]) |
⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1[a] = st2[a])
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∀ np. (np ∈ U(alltids, ghostlspmxf(tid; lspmx)) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx) ∧ U(alltids, ghostlspmxf(tid; lspmx))[np] = (U(alltids, ghostlspmxf) ∪ lspmx)[np] ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np])
Used terms: U(alltids, ghostlspmxf(tid; lspmx)), U(alltids, ghostlspmxf) ∪ lspmx
| ⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1[a] = st2[a]) |
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∀ np. (np ∈ U(alltids, ghostlspmxf(tid; lspmx)) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx) ∧ U(alltids, ghostlspmxf(tid; lspmx))[np] = (U(alltids, ghostlspmxf) ∪ lspmx)[np] ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ np0. ((∃ tid0. np0 ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np0 ∈ U(alltids, ghostlspmxf) ∪ lspmx) ∧ U(alltids, ghostlspmxf(tid; lspmx))[np0] = (∃ tid0. np0 ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np0];lspmx[np0]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np])
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s) ⊦ (spmx1 ∪ spmx2)[np] = (np ∈ spmx1 ⊃ spmx1[np];spmx2[np]); (s)
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ np0. ((∃ tid0. np0 ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np0 ∈ U(alltids, ghostlspmxf) ∪ lspmx) ∧ U(alltids, ghostlspmxf(tid; lspmx))[np0] = (∃ tid0. np0 ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np0];lspmx[np0]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np])
Used terms: np
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np])
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ U(alltids, ghostlspmxf), (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np])
Used formulas: np ∈ U(alltids, ghostlspmxf)
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) ∧ np ∈ f(tid) → U(ts, f)[np] = f(tid)[np]; (s) ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, ¬(np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx), lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| ghostlspmxf(tid) = ∅, ¬(np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx), lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ U(alltids, ghostlspmxf) ∪ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ gspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx), (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ U(alltids, ghostlspmxf) ∪ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ gspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1)
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ a ∈ st \ s ↔ a ∈ st ∧ ¬ a ∈ s; (ws) ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2; (ws) ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ gspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1) |
Used terms: tid0
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ gspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx), (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf) ∪ gspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ gspmx \ dom lspmx, ¬ np ∈ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];∅[np]) ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1), ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s) ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2; (ws) ⊦ ¬ a ∈ st → st[a] = ∅[a]; (s)
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf) ∪ gspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ gspmx \ dom lspmx, ¬ np ∈ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];∅[np]) ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1), ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) |
Used terms: tid0
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (gspmx \ dom lspmx)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, tid = tid1, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| ghostlspmxf(tid) = ∅, tid = tid1, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ lspmx, np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ lspmx, np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∃ tid0. np ∈ ghostlspmxf(tid0), U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ ghostlspmxf(tid0)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0), U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ lspmx[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∃ tid0. np ∈ ghostlspmxf(tid0), U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ ghostlspmxf(tid0)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ lspmx, np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ ghostlspmxf(tid0)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ lspmx, np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ ghostlspmxf(tid0)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, ghostlspmxf(tid0)[np] ≠ gspmx[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0), U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦
| ghostlspmxf(tid) = ∅, ghostlspmxf(tid0)[np] ≠ gspmx[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0), U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ |
Used terms: tid1
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0), U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ lspmx[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
Used terms: tid0
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∃ tid0. np ∈ ghostlspmxf(tid0) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∃ tid0. np ∈ ghostlspmxf(tid0) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid2), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∃ tid0. np ∈ ghostlspmxf(tid0) ⊦ ghostlspmxf(tid0)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid2), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ lspmx[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid2), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∃ tid0. np ∈ ghostlspmxf(tid0) ⊦ ghostlspmxf(tid0)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid3), np ∈ ghostlspmxf(tid2), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ghostlspmxf(tid0)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid3), np ∈ ghostlspmxf(tid2), np ∈ ghostlspmxf(tid0), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ghostlspmxf(tid0)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, ghostlspmxf(tid0)[np] ≠ gspmx[np], lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid2), np ∈ ghostlspmxf(tid3), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, ghostlspmxf(tid0)[np] ≠ gspmx[np], lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid2), np ∈ ghostlspmxf(tid3), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ |
Used terms: tid3
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ghostlspmxf(tid0)[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid2), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ lspmx[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
Used terms: tid2
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid1, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
Used terms: tid0
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];lspmx[np]) ⊦ (gspmx \ dom lspmx)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];∅[np]) ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1), ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), (gspmx \ dom lspmx)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np])
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s) ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2; (ws) ⊦ ¬ a ∈ st → st[a] = ∅[a]; (s)
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];∅[np]) ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1), ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), (gspmx \ dom lspmx)[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ ghostlspmxf(tid0)[np];gspmx[np]) |
Used terms: tid0
| ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ U(alltids, ghostlspmxf), (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]) ⊦ (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]);(gspmx \ dom lspmx)[np]) = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];gspmx[np]) |
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∨ np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used terms: np, U(alltids, ghostlspmxf), lspmx
| ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2 |
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ U(alltids, ghostlspmxf) ∨ np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ (U(alltids, ghostlspmxf) ∪ lspmx) ∪ (gspmx \ dom lspmx) ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ∨ np ∈ gspmx \ dom lspmx ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used terms: np, U(alltids, ghostlspmxf) ∪ lspmx, gspmx \ dom lspmx
| ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2 |
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ U(alltids, ghostlspmxf) ∪ lspmx ∨ np ∈ gspmx \ dom lspmx ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), ((np ∈ U(alltids, ghostlspmxf) ∨ np ∈ lspmx) ∨ np ∈ gspmx \ dom lspmx ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used terms: np, U(alltids, ghostlspmxf), lspmx
| ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2 |
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), ((np ∈ U(alltids, ghostlspmxf) ∨ np ∈ lspmx) ∨ np ∈ gspmx \ dom lspmx ↔ np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ∨ np ∈ gspmx \ dom lspmx → np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ a ∈ dom st ↔ a ∈ st; (s) ⊦ a ∈ st \ s ↔ a ∈ st ∧ ¬ a ∈ s; (ws) ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s) ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2; (ws)
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ∨ np ∈ gspmx \ dom lspmx → np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
⊦ a ∈ st \ s ↔ a ∈ st ∧ ¬ a ∈ s
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ∨ np ∈ gspmx ∧ ¬ np ∈ dom lspmx → np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used terms: np, gspmx, dom lspmx
| ⊦ a ∈ st \ s ↔ a ∈ st ∧ ¬ a ∈ s |
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ∨ np ∈ gspmx ∧ ¬ np ∈ dom lspmx → np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ∨ np ∈ gspmx → np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used simplifier rules: ⊦ a ∈ dom st ↔ a ∈ st; (s)
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ∨ np ∈ gspmx → np ∈ U(alltids, ghostlspmxf) ∪ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ∨ np ∈ gspmx → np ∈ U(alltids, ghostlspmxf) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used terms: np, U(alltids, ghostlspmxf), gspmx
| ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2 |
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ∨ np ∈ gspmx → np ∈ U(alltids, ghostlspmxf) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
⊦ st1 ⊆ st2 ↔ (∀ a. a ∈ st1 → a ∈ st2 ∧ st1[a] = st2[a])
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used terms: lspmx, gspmx
| ⊦ st1 ⊆ st2 ↔ (∀ a. a ∈ st1 → a ∈ st2 ∧ st1[a] = st2[a]) |
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np], (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used terms: np
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np], (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, ¬ np ∈ lspmx, np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np], (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np]
Used formulas: np ∈ lspmx
| U(alltids, ghostlspmxf(tid; lspmx))[np] = lspmx[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, ¬ np ∈ lspmx, np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np], (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (np ∈ lspmx ⊃ lspmx[np];(gspmx \ dom lspmx)[np]) = gspmx[np] |
U(alltids, ghostlspmxf(tid; lspmx))[np] = ∅[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), (np ∈ ghostlspmxf(tid0) → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (gspmx \ dom lspmx)[np] = gspmx[np]
Used simplifier rules: ⊦ ¬ a ∈ st → st[a] = ∅[a]; (s)
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ∅[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), (np ∈ ghostlspmxf(tid0) → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ (gspmx \ dom lspmx)[np] = gspmx[np] |
⊦ ¬ a ∈ s → (st \ s)[a] = st[a]
U(alltids, ghostlspmxf(tid; lspmx))[np] = ∅[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, ¬ np ∈ dom lspmx, ¬ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ gspmx[np] = gspmx[np]
Used simplifier rules: ⊦ a ∈ dom st ↔ a ∈ st; (s) Used terms: gspmx, dom lspmx, np
| ⊦ ¬ a ∈ s → (st \ s)[a] = st[a] |
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ∅[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, ¬ np ∈ dom lspmx, ¬ np ∈ lspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), ∃ tid0. np ∈ ghostlspmxf(tid0), (np ∈ ghostlspmxf(tid0) → (∃ tid1. np ∈ ghostlspmxf(tid1)) ∨ np ∈ gspmx) ∧ gspmx[np] = gspmx[np] |
U(alltids, ghostlspmxf(tid; lspmx))[np] = ∅[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ¬ np ∈ gspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), ∃ tid1. np ∈ ghostlspmxf(tid1)
Used simplifier rules: ⊦ a ∈ dom st ↔ a ∈ st; (s)
| U(alltids, ghostlspmxf(tid; lspmx))[np] = ∅[np], ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ¬ np ∈ gspmx, ∀ np. np ∈ lspmx → np ∈ gspmx ∧ lspmx[np] = gspmx[np] ⊦ ∃ tid0. np ∈ ghostlspmxf(tid0), ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), ∃ tid1. np ∈ ghostlspmxf(tid1) |
Used terms: tid0
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx)) ≠ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx)) ≠ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx)) ≠ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx)) ≠ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx)) ≠ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ |
⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1[a] = st2[a])
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∃ np. ¬ ( (np ∈ U(alltids, ghostlspmxf(tid; lspmx)) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx) ∧ U(alltids, ghostlspmxf(tid; lspmx))[np] = (U(alltids, ghostlspmxf) ∪ lspmx)[np]) ⊦
Used terms: U(alltids, ghostlspmxf(tid; lspmx)), U(alltids, ghostlspmxf) ∪ lspmx
| ⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1[a] = st2[a]) |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∃ np. ¬ ( (np ∈ U(alltids, ghostlspmxf(tid; lspmx)) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx) ∧ U(alltids, ghostlspmxf(tid; lspmx))[np] = (U(alltids, ghostlspmxf) ∪ lspmx)[np]) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ((∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx) ∧ U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np])
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s) ⊦ (spmx1 ∪ spmx2)[np] = (np ∈ spmx1 ⊃ spmx1[np];spmx2[np]); (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ((∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx) ∧ U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np])
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ (∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))) ↔ np ∈ U(alltids, ghostlspmxf) ∪ lspmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) ⊦
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ U(alltids, ghostlspmxf) ∪ lspmx, ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1)
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s) ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2; (ws)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid0, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid0, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx ⊦ ∃ tid1. np ∈ ghostlspmxf(tid1) |
Used terms: tid0
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf) ∪ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) |
⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, np ∈ U(alltids, ghostlspmxf) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))
Used terms: np, U(alltids, ghostlspmxf), lspmx
| ⊦ np ∈ spmx1 ∪ spmx2 ↔ np ∈ spmx1 ∨ np ∈ spmx2 |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, np ∈ U(alltids, ghostlspmxf) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))
Used terms: tid0
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid0, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))
Used simplifier rules: ⊦ ¬ a ∈ ∅; (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid0, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid0) ∨ np ∈ lspmx ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid0, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ lspmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ ghostlspmxf(tid0) ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid0, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ lspmx, lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ ghostlspmxf(tid0) ⊦ ∃ tid0. np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) |
Used terms: tid
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ U(alltids, ghostlspmxf(tid; lspmx))[np] = (∃ tid0. np ∈ ghostlspmxf(tid0) ⊃ U(alltids, ghostlspmxf)[np];lspmx[np]) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ U(alltids, ghostlspmxf)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∃ tid0. np ∈ ghostlspmxf(tid0) ⊦
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ lspmx[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ U(alltids, ghostlspmxf)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∃ tid0. np ∈ ghostlspmxf(tid0) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦
Used simplifier rules: ⊦ alldisjointp(ts, f) ∧ np ∈ f(tid) → U(ts, f)[np] = f(tid)[np]; (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ |
⊦ alldisjointp(ts, f) ∧ np ∈ f(tid) → U(ts, f)[np] = f(tid)[np]
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ np ∈ ghostlspmxf(tid; lspmx)(tid0)
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, ghostlspmxf(tid; lspmx)(tid0)[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid; lspmx)(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦
Used terms: alltids, ghostlspmxf(tid; lspmx), np, tid0
| ⊦ alldisjointp(ts, f) ∧ np ∈ f(tid) → U(ts, f)[np] = f(tid)[np] |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ np ∈ ghostlspmxf(tid; lspmx)(tid0) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)) ⊦ |
Used simplifier rules: ⊦ ¬ a ∈ ∅; (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, ghostlspmxf(tid; lspmx)(tid0)[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ ghostlspmxf(tid; lspmx)(tid0), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0))[np] ≠ ghostlspmxf(tid0)[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx ⊦ |
Used simplifier rules: ⊦ ¬ a ∈ ∅; (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ lspmx[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ |
⊦ alldisjointp(ts, f) ∧ np ∈ f(tid) → U(ts, f)[np] = f(tid)[np]
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ lspmx[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ np ∈ ghostlspmxf(tid; lspmx)(tid)
Used terms: tid, alltids, ghostlspmxf(tid; lspmx), np
| ⊦ alldisjointp(ts, f) ∧ np ∈ f(tid) → U(ts, f)[np] = f(tid)[np] |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ lspmx[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ np ∈ ghostlspmxf(tid; lspmx)(tid) |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ∅[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦
Used simplifier rules: ⊦ ¬ a ∈ st → st[a] = ∅[a]; (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ∅[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ |
⊦ ¬ a ∈ st → st[a] = ∅[a]
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ∅[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf(tid; lspmx)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦
Used terms: U(alltids, ghostlspmxf(tid; lspmx)), np
| ⊦ ¬ a ∈ st → st[a] = ∅[a] |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ∅[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ U(alltids, ghostlspmxf(tid; lspmx)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ∅[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ∅[np], lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), alldisjointp(alltids, ghostlspmxf(tid; lspmx)), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid0 ⊃ lspmx;ghostlspmxf(tid0)), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ lspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ∅[np], lspmx ≠ ∅, tid ≠ tid0, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, U(alltids, ghostlspmxf(tid; lspmx))[np] ≠ ∅[np], lspmx ≠ ∅, tid ≠ tid0, alldisjointp(alltids, ghostlspmxf(tid; lspmx)), alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid0), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ lspmx, ∀ tid0. ¬ np ∈ ghostlspmxf(tid0) ⊦ |
Used terms: tid0
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ⊦ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ∧ disjointp(U(alltids, ghostlspmxf(tid; lspmx)), gspmx \ dom lspmx) ∧ y + (U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx)).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x ∧ U(alltids, ghostlspmxf(tid; lspmx)) ∪ (gspmx \ dom lspmx) ⊆ spmx |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ alldisjointp(alltids, ghostlspmxf(tid; lspmx)) ⊦ |
⊦ alldisjointp(ts, f) → ( alldisjointp(ts, f0) ↔ (∀ tid1, tid2, np. (tid1 ∈ ts ∧ tid2 ∈ ts ∧ tid1 ≠ tid2 ∧ np ∈ f(tid1) → ¬ np ∈ f(tid2)) → tid1 ∈ ts ∧ tid2 ∈ ts ∧ tid1 ≠ tid2 ∧ np ∈ f0(tid1) → ¬ np ∈ f0(tid2)))
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∃ tid1, tid2, np. ¬ ( (tid1 ∈ alltids ∧ tid2 ∈ alltids ∧ tid1 ≠ tid2 ∧ np ∈ ghostlspmxf(tid1) → ¬ np ∈ ghostlspmxf(tid2)) → tid1 ∈ alltids ∧ tid2 ∈ alltids ∧ tid1 ≠ tid2 ∧ np ∈ ghostlspmxf(tid; lspmx)(tid1) → ¬ np ∈ ghostlspmxf(tid; lspmx)(tid2)) ⊦
Used terms: ghostlspmxf, alltids, ghostlspmxf(tid; lspmx)
| ⊦ alldisjointp(ts, f) → ( alldisjointp(ts, f0) ↔ (∀ tid1, tid2, np. (tid1 ∈ ts ∧ tid2 ∈ ts ∧ tid1 ≠ tid2 ∧ np ∈ f(tid1) → ¬ np ∈ f(tid2)) → tid1 ∈ ts ∧ tid2 ∈ ts ∧ tid1 ≠ tid2 ∧ np ∈ f0(tid1) → ¬ np ∈ f0(tid2))) |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ∃ tid1, tid2, np. ¬ ( (tid1 ∈ alltids ∧ tid2 ∈ alltids ∧ tid1 ≠ tid2 ∧ np ∈ ghostlspmxf(tid1) → ¬ np ∈ ghostlspmxf(tid2)) → tid1 ∈ alltids ∧ tid2 ∈ alltids ∧ tid1 ≠ tid2 ∧ np ∈ ghostlspmxf(tid; lspmx)(tid1) → ¬ np ∈ ghostlspmxf(tid; lspmx)(tid2)) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid2 ⊃ lspmx;ghostlspmxf(tid2)), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, np ∈ ghostlspmxf(tid1) → ¬ np ∈ ghostlspmxf(tid2) ⊦
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids;
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid2 ⊃ lspmx;ghostlspmxf(tid2)), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, np ∈ ghostlspmxf(tid1) → ¬ np ∈ ghostlspmxf(tid2) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, tid = tid2, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ ghostlspmxf(tid1) → ¬ np ∈ ghostlspmxf(tid2) ⊦
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid2, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), np ∈ ghostlspmxf(tid2), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ ghostlspmxf(tid1) → ¬ np ∈ ghostlspmxf(tid2) ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, tid = tid2, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ ghostlspmxf(tid1) → ¬ np ∈ ghostlspmxf(tid2) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid2) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦
Used simplifier rules: ⊦ ¬ a ∈ ∅; (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid2) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ |
⊦ disjointp(sa1, sa2) ↔ (∀ np. np ∈ sa1 → ¬ np ∈ sa2)
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid2) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ np. np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦
Used terms: U(alltids, ghostlspmxf), gspmx
| ⊦ disjointp(sa1, sa2) ↔ (∀ np. np ∈ sa1 → ¬ np ∈ sa2) |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid2) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ lspmx, np ∈ ghostlspmxf(tid1), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ np. np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid2) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦
Used terms: np
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid2) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid2) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ lspmx, np ∈ gspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ∃ tid. np ∈ ghostlspmxf(tid)
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ b ∈ st ∧ ¬ b ∈ st0 → ¬ st ⊆ st0; (s) ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid2) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid1), np ∈ lspmx, np ∈ gspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ∃ tid. np ∈ ghostlspmxf(tid) |
Used terms: tid1
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid2, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), np ∈ ghostlspmxf(tid2), lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ ghostlspmxf(tid1) → ¬ np ∈ ghostlspmxf(tid2) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid2, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ ghostlspmxf(tid1) ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, lspmx ≠ ∅, tid ≠ tid2, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ (tid = tid1 ⊃ lspmx;ghostlspmxf(tid1)), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ¬ np ∈ ghostlspmxf(tid1) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, tid = tid1, lspmx ≠ ∅, tid ≠ tid2, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ ghostlspmxf(tid1) ⊦
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid) = ∅, tid = tid1, lspmx ≠ ∅, tid ≠ tid2, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, ¬ np ∈ ghostlspmxf(tid1) ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid1) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦
Used simplifier rules: ⊦ ¬ a ∈ ∅; (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid1) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), disjointp(U(alltids, ghostlspmxf), gspmx), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ |
⊦ disjointp(sa1, sa2) ↔ (∀ np. np ∈ sa1 → ¬ np ∈ sa2)
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid1) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ lspmx, np ∈ ghostlspmxf(tid2), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ np. np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦
Used terms: U(alltids, ghostlspmxf), gspmx
| ⊦ disjointp(sa1, sa2) ↔ (∀ np. np ∈ sa1 → ¬ np ∈ sa2) |
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid1) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ lspmx, np ∈ ghostlspmxf(tid2), lspmx ⊆ gspmx, U(alltids, ghostlspmxf) ⊆ spmx, gspmx ⊆ spmx, lspmx ⊆ spmx, ∀ np. np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid1) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦
Used terms: np
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid1) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ lspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx, np ∈ U(alltids, ghostlspmxf) → ¬ np ∈ gspmx ⊦ |
y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid1) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ lspmx, np ∈ gspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ∃ tid. np ∈ ghostlspmxf(tid)
Used simplifier rules: alltids-all: ⊦ tid ∈ alltids; ⊦ b ∈ st ∧ ¬ b ∈ st0 → ¬ st ⊆ st0; (s) ⊦ alldisjointp(ts, f) → (np ∈ U(ts, f) ↔ (∃ tid. tid ∈ ts ∧ np ∈ f(tid))); (s)
| y + (U(alltids, ghostlspmxf) ∪ gspmx).toMatrix(# y, # x) * x = spmx.toMatrix(# y, # x) * x, ghostlspmxf(tid1) = ∅, lspmx ≠ ∅, tid1 ≠ tid2, alldisjointp(alltids, ghostlspmxf), okspmx(spmx, # y, # x), np ∈ ghostlspmxf(tid2), np ∈ lspmx, np ∈ gspmx, lspmx ⊆ spmx, gspmx ⊆ spmx, U(alltids, ghostlspmxf) ⊆ spmx, lspmx ⊆ gspmx ⊦ ∃ tid. np ∈ ghostlspmxf(tid) |
Used terms: tid2
The following image shows the proof tree of sequent calculus. The proved goal is at the bottom. You can click on the nodes to view additional rules. See here for details on colors in a proof tree.