| ⊦ (∀ e. e ∈ el ∧ e.R? → e.t ≠ t) → (absloc(el, rset, fowl + FO(t) ') ↔ absloc(el, rset, fowl)) |
¬(absloc(el, rset, fowl + FO(t) ') ↔ absloc(el, rset, fowl)), ∀ e. e ∈ el ∧ e.R? → e.t ≠ t ⊦
| ¬(absloc(el, rset, fowl + FO(t) ') ↔ absloc(el, rset, fowl)), ∀ e. e ∈ el ∧ e.R? → e.t ≠ t ⊦ |
¬(absloc(e + el0, rset, fowl + FO(t) ') ↔ absloc(e + el0, rset, fowl)), ∀ e0. e0 ∈ e + el0 ∧ e0.R? → e0.t ≠ t, ∀ rset, fowl, t. ¬(¬(absloc(el0, rset, fowl + FO(t) ') ↔ absloc(el0, rset, fowl)) ∧ (∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t)) ⊦
Used simplifier rules: absloc-base: ⊦ absloc([], rset, fowl) ↔ fowl |W = []; List('a) freely generated by [], +;; ⊦ (fowl + fowl0)|W = fowl |W + fowl0 |W; (s) ⊦ FO(t) ' |W = []; (s) ⊦ x + [] = x; (s) a: ⊦ (x + y) + z = x + y + z; from specification list
| ¬(absloc(e + el0, rset, fowl + FO(t) ') ↔ absloc(e + el0, rset, fowl)), ∀ e0. e0 ∈ e + el0 ∧ e0.R? → e0.t ≠ t, ∀ rset, fowl, t. ¬(¬(absloc(el0, rset, fowl + FO(t) ') ↔ absloc(el0, rset, fowl)) ∧ (∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t)) ⊦ |
¬(absloc(e ' + el0, rset, fowl + FO(t) ') ↔ absloc(e ' + el0, rset, fowl)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = e ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
Used simplifier rules: a: ⊦ (x + y) + z = x + y + z; from specification list ⊦ a ∈ a0 ' + x ↔ a = a0 ∨ a ∈ x; (s) ⊦ a + x = a ' + x; (s)
| ¬(absloc(e ' + el0, rset, fowl + FO(t) ') ↔ absloc(e ' + el0, rset, fowl)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = e ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
e = R(t1, l, v), ¬(absloc(e ' + el0, rset, fowl + FO(t) ') ↔ absloc(e ' + el0, rset, fowl)), ∀ e0. (e0 = e ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦
e = W(t1, l, v), ¬(absloc(e ' + el0, rset, fowl + FO(t) ') ↔ absloc(e ' + el0, rset, fowl)), ∀ e0. (e0 = e ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦
Used simplifier rules: RWevent freely generated by R, W;;
| e = R(t1, l, v), ¬(absloc(e ' + el0, rset, fowl + FO(t) ') ↔ absloc(e ' + el0, rset, fowl)), ∀ e0. (e0 = e ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦ |
¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
Used simplifier rules: absloc-recR: ⊦ absloc(R(t, l, v) ' + el, rset, fowl) ↔ (¬ t ∈ rset → FO(t) ∈ fowl) ∧ absloc(el, rset, fowl); a: ⊦ (x + y) + z = x + y + z; from specification list ⊦ FO(tid) = FO(tid0) ↔ tid = tid0; (s) ⊦ a ∈ a0 ' ↔ a = a0; (s) ⊦ a ∈ x + y ↔ a ∈ x ∨ a ∈ y; (s)
| ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, (absloc(el0, rset, fowl + FO(t) ') ↔ absloc(el0, rset, fowl)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t) ⊦
Used terms: rset, fowl, t
| ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, (absloc(el0, rset, fowl + FO(t) ') ↔ absloc(el0, rset, fowl)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t) ⊦ |
¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, (absloc(el0, rset, fowl + FO(t) ') ↔ absloc(el0, rset, fowl)) ∨ ¬(e ∈ el0 ∧ e.R? → e.t ≠ t) ⊦
| ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, (absloc(el0, rset, fowl + FO(t) ') ↔ absloc(el0, rset, fowl)) ∨ ¬(e ∈ el0 ∧ e.R? → e.t ≠ t) ⊦ |
absloc(el0, rset, fowl + FO(t) ') ↔ absloc(el0, rset, fowl), ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
e.t = t, ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), e.R?, e ∈ el0, ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
| absloc(el0, rset, fowl + FO(t) ') ↔ absloc(el0, rset, fowl), ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
absloc(el0, rset, fowl), absloc(el0, rset, fowl + FO(t) '), ¬ t ∈ rset, ¬ FO(t) ∈ fowl, ∀ e0. (e0 = R(e0.t, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
| absloc(el0, rset, fowl), absloc(el0, rset, fowl + FO(t) '), ¬ t ∈ rset, ¬ FO(t) ∈ fowl, ∀ e0. (e0 = R(e0.t, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
Used simplifier rules: ⊦ R(t, l, v) = R(t0, l0, v0) ↔ t = t0 ∧ l = l0 ∧ v = v0; (ws) ⊦ R(t, l, v).R?; (s) ⊦ R(t, l, v).t = t; (s) Used terms: R(t, l, v)
| e.t = t, ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), e.R?, e ∈ el0, ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = e.t) ∧ absloc(el0, rset, fowl + FO(e.t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), e.R?, e ∈ el0, ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ e.t ⊦
| ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = e.t) ∧ absloc(el0, rset, fowl + FO(e.t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), e.R?, e ∈ el0, ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ e.t ⊦ |
e = R(t, l0, v0), ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), e.R?, e ∈ el0, ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
Used simplifier rules: ⊦ e.R? → ((t = e.t ∧ l = e.l) ∧ v = e.v ↔ e = R(t, l, v)); (elim) Used terms: e, t, l0, v0
| e = R(t, l0, v0), ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), e.R?, e ∈ el0, ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), R(t, l0, v0) ∈ el0, ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
Used simplifier rules: ⊦ R(t, l, v).R?; (s)
| ¬((¬ t1 ∈ rset → FO(t1) ∈ fowl ∨ t1 = t) ∧ absloc(el0, rset, fowl + FO(t) ') ↔ (¬ t1 ∈ rset → FO(t1) ∈ fowl) ∧ absloc(el0, rset, fowl)), R(t, l0, v0) ∈ el0, ∀ e0. (e0 = R(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
Used simplifier rules: ⊦ R(t, l, v).R?; (s) ⊦ R(t, l, v).t = t; (s) Used terms: R(t, l0, v0)
| e = W(t1, l, v), ¬(absloc(e ' + el0, rset, fowl + FO(t) ') ↔ absloc(e ' + el0, rset, fowl)), ∀ e0. (e0 = e ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦ |
¬(absloc(W(t1, l, v) ' + el0, rset, fowl + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fowl)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
| ¬(absloc(W(t1, l, v) ' + el0, rset, fowl + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fowl)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
¬(absloc(W(t1, l, v) ' + el0, rset, (fow + fowl0) + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fow + fowl0)), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ t1, l, v, el0, rset, t. ¬ ( ¬(absloc(W(t1, l, v) ' + el0, rset, fowl0 + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fowl0)) ∧ (∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0)) ∧ (∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t)) ⊦
Used simplifier rules: absloc-recW-FO-one2: ⊦ ¬ absloc(W(t, l, v) ' + el, rset, FO(t0) '); absloc-recW-empty: ⊦ ¬ absloc(W(t, l, v) ' + el, rset, []); List('a) freely generated by [], +;; ⊦ [] + x = x; (s) a: ⊦ (x + y) + z = x + y + z; from specification list
| ¬(absloc(W(t1, l, v) ' + el0, rset, (fow + fowl0) + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fow + fowl0)), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ t1, l, v, el0, rset, t. ¬ ( ¬(absloc(W(t1, l, v) ' + el0, rset, fowl0 + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fowl0)) ∧ (∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0)) ∧ (∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t)) ⊦ |
¬(absloc(W(t1, l, v) ' + el0, rset, (fow ' + fowl0) + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fow ' + fowl0)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2) ⊦
Used simplifier rules: ⊦ a + x = a ' + x; (s) a: ⊦ (x + y) + z = x + y + z; from specification list
| ¬(absloc(W(t1, l, v) ' + el0, rset, (fow ' + fowl0) + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fow ' + fowl0)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2) ⊦ |
fow = FO(t3), ¬(absloc(W(t1, l, v) ' + el0, rset, (fow ' + fowl0) + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fow ' + fowl0)), ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦
fow = W(v1, t3), ¬(absloc(W(t1, l, v) ' + el0, rset, (fow ' + fowl0) + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fow ' + fowl0)), ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦
Used simplifier rules: FOW freely generated by FO, W;;
| fow = FO(t3), ¬(absloc(W(t1, l, v) ' + el0, rset, (fow ' + fowl0) + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fow ' + fowl0)), ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦ |
¬(absloc(W(t1, l, v) ' + el0, rset, fowl0 + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fowl0)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2) ⊦
Used simplifier rules: absloc-recW-FO: ⊦ absloc(W(t, l, v) ' + el, rset, FO(t0) ' + fowl) ↔ absloc(W(t, l, v) ' + el, rset, fowl); a: ⊦ (x + y) + z = x + y + z; from specification list
| ¬(absloc(W(t1, l, v) ' + el0, rset, fowl0 + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fowl0)), ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2) ⊦ |
Used terms: t1, l, v, el0, rset, t
| fow = W(v1, t3), ¬(absloc(W(t1, l, v) ' + el0, rset, (fow ' + fowl0) + FO(t) ') ↔ absloc(W(t1, l, v) ' + el0, rset, fow ' + fowl0)), ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦ |
¬(absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)), ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦
Used simplifier rules: absloc-recW-W: ⊦ absloc(W(t, l, v) ' + el, rset, W(v0, t0) ' + fowl) ↔ t0 = t ∧ v0 = v ∧ absloc(el, rset, fowl); a: ⊦ (x + y) + z = x + y + z; from specification list
| ¬(absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)), ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ rset0, fowl0, t0. (absloc(el0, rset0, fowl0 + FO(t0) ') ↔ absloc(el0, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t0) ⊦ |
¬(absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), (absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t) ⊦
Used terms: rset, fowl0, t
| ¬(absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), (absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)) ∨ ¬(∀ e. e ∈ el0 ∧ e.R? → e.t ≠ t) ⊦ |
¬(absloc(el0, rset, fowl0 + FO(e.t) ') ↔ absloc(el0, rset, fowl0)), e.R?, e ∈ el0, ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ e.t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2) ⊦
| ¬(absloc(el0, rset, fowl0 + FO(e.t) ') ↔ absloc(el0, rset, fowl0)), e.R?, e ∈ el0, ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ e.t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2) ⊦ |
e = R(t, l1, v1), ¬(absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)), e.R?, e ∈ el0, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦
Used simplifier rules: ⊦ e.R? → ((t = e.t ∧ l = e.l) ∧ v = e.v ↔ e = R(t, l, v)); (elim) Used terms: e, t, l1, v1
| e = R(t, l1, v1), ¬(absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)), e.R?, e ∈ el0, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2), ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t ⊦ |
¬(absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)), R(t, l1, v1) ∈ el0, ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2) ⊦
Used simplifier rules: ⊦ R(t, l, v).R?; (s)
| ¬(absloc(el0, rset, fowl0 + FO(t) ') ↔ absloc(el0, rset, fowl0)), R(t, l1, v1) ∈ el0, ∀ e0. (e0 = W(t1, l, v) ∨ e0 ∈ el0) ∧ e0.R? → e0.t ≠ t, ∀ t0, l0, v0, el, rset0, t2. (absloc(W(t0, l0, v0) ' + el, rset0, fowl0 + FO(t2) ') ↔ absloc(W(t0, l0, v0) ' + el, rset0, fowl0)) ∨ ¬(∀ rset0, fowl0, t0. (absloc(el, rset0, fowl0 + FO(t0) ') ↔ absloc(el, rset0, fowl0)) ∨ ¬(∀ e. e ∈ el ∧ e.R? → e.t ≠ t0)) ∨ ¬(∀ e0. (e0 = W(t0, l0, v0) ∨ e0 ∈ el) ∧ e0.R? → e0.t ≠ t2) ⊦ |
Used simplifier rules: ⊦ R(t, l, v) ≠ W(t0, l0, v0); (s) ⊦ R(t, l, v).R?; (s) ⊦ R(t, l, v).t = t; (s) Used terms: R(t, l1, v1)
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.