| ⊦ ¬ a ∈ st ∧ ¬ a ∈ st0 → (st(a := d) = st0(a := d) ↔ st = st0) |
¬(st(a := d) = st0(a := d) ↔ st = st0), ¬ a ∈ st0, ¬ a ∈ st ⊦
| ¬(st(a := d) = st0(a := d) ↔ st = st0), ¬ a ∈ st0, ¬ a ∈ st ⊦ |
st(a := d) = st0(a := d), st ≠ st0, ¬ a ∈ st0, ¬ a ∈ st ⊦
| st(a := d) = st0(a := d), st ≠ st0, ¬ a ∈ st0, ¬ a ∈ st ⊦ |
⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1(a) = st2(a))
st ≠ st0, ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦
Used terms: st0(a := d), st(a := d)
| ⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1(a) = st2(a)) |
| st ≠ st0, ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ |
st ≠ st0, ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦
| st ≠ st0, ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ |
⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1(a) = st2(a))
¬ a ∈ st0, ¬ a ∈ st, ∃ a. ¬((a ∈ st ↔ a ∈ st0) ∧ st(a) = st0(a)), ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦
Used terms: st0, st
| ⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1(a) = st2(a)) |
| ¬ a ∈ st0, ¬ a ∈ st, ∃ a. ¬((a ∈ st ↔ a ∈ st0) ∧ st(a) = st0(a)), ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ |
¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ (a0 ∈ st ↔ a0 ∈ st0) ∧ st(a0) = st0(a0)
| ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ (a0 ∈ st ↔ a0 ∈ st0) ∧ st(a0) = st0(a0) |
a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d), st(a := d)(a0) = st0(a := d)(a0), ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ (a0 ∈ st ↔ a0 ∈ st0) ∧ st(a0) = st0(a0)
Used terms: a0
| a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d), st(a := d)(a0) = st0(a := d)(a0), ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ (a0 ∈ st ↔ a0 ∈ st0) ∧ st(a0) = st0(a0) |
a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d), st(a := d)(a0) = st0(a := d)(a0), ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ (a0 ∈ st ↔ a0 ∈ st0) ∧ st(a0) = st0(a0)
| a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d), st(a := d)(a0) = st0(a := d)(a0), ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st(a := d) ↔ a0 ∈ st0(a := d)) ∧ st(a := d)(a0) = st0(a := d)(a0) ⊦ (a0 ∈ st ↔ a0 ∈ st0) ∧ st(a0) = st0(a0) |
Used simplifier rules: At-same: ⊦ st(a := d)(a) = d; In-insert: ⊦ a ∈ st(b := d) ↔ a = b ∨ a ∈ st; notmemlookup: ⊦ ¬ a ∈ st → st(a) = ∅(a); At-other: ⊦ a ≠ b → st(b := d)(a) = st(a); In-insert: ⊦ a ∈ st(b := d) ↔ a = b ∨ a ∈ st; Used formulas: a0 = a
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.