| ⊦ ¬ 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, ∀ a0. (a0 ∈ st[a, d] ↔ a0 ∈ st0[a, d]) ∧ st[a, d][a0] = st0[a, d][a0], ∃ a. ¬((a ∈ st ↔ a ∈ st0) ∧ st[a] = st0[a]) ⊦
Used terms: st0, st
| ⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ st1[a] = st2[a]) |
| ¬ a ∈ st0, ¬ a ∈ st, ∀ a0. (a0 ∈ st[a, d] ↔ a0 ∈ st0[a, d]) ∧ st[a, d][a0] = st0[a, d][a0], ∃ a. ¬((a ∈ st ↔ a ∈ st0) ∧ st[a] = st0[a]) ⊦ |
¬ 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.