| ⊦ st ⊆ st0(a := d) ↔ st ⊆ st0 ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ st -- a ⊆ st0 -- a |
¬(st ⊆ st0(a := d) ↔ st ⊆ st0 ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ st -- a ⊆ st0 -- a) ⊦
| ¬(st ⊆ st0(a := d) ↔ st ⊆ st0 ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ st -- a ⊆ st0 -- a) ⊦ |
⊦ (∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0)) ↔ (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a0. a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0))
Used simplifier rules: Subset: ⊦ st1 ⊆ st2 ↔ (∀ a. a ∈ st1 → a ∈ st2 ∧ st1(a) = st2(a));
| ⊦ (∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0)) ↔ (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a0. a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)) |
∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (∀ a0. a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0))
(∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a0. a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)) ⊦ ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0)
| ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (∀ a0. a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)) |
∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st
| ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st |
a ∈ st → a ∈ st0(a := d) ∧ st(a) = st0(a := d)(a), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0))
Used terms: a
| a ∈ st → a ∈ st0(a := d) ∧ st(a) = st0(a := d)(a), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)) |
a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st
Used simplifier rules: At-same: ⊦ st(a := d)(a) = d;
| a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st |
a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0))
Used terms: a0
| a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)) |
a0 = a, a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0), a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st
a0 ≠ a, a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0), a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st
Used formulas: a0 = a
| a0 = a, a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0), a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st |
a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (a ∈ st -- a → a ∈ st0 -- a ∧ (st -- a)(a) = (st0 -- a)(a))
Used simplifier rules: At-same: ⊦ st(a := d)(a) = d;
| a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (a ∈ st -- a → a ∈ st0 -- a ∧ (st -- a)(a) = (st0 -- a)(a)) |
a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, a1 ∈ st → a1 ∈ st0(a := d) ∧ st(a1) = st0(a := d)(a1), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a ∈ st -- a → a ∈ st0 -- a ∧ (st -- a)(a) = (st0 -- a)(a)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st
Used terms: a1
| a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, a1 ∈ st → a1 ∈ st0(a := d) ∧ st(a1) = st0(a := d)(a1), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a ∈ st -- a → a ∈ st0 -- a ∧ (st -- a)(a) = (st0 -- a)(a)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st |
Used simplifier rules: Del-in: ⊦ a ∈ st -- b ↔ a ≠ b ∧ a ∈ st; in-neq: ⊦ a ≠ b → (a ∈ st(b := d) ↔ a ∈ st); At-other: ⊦ a ≠ b → st(b := d)(a) = st(a); Del-in: ⊦ a ∈ st -- b ↔ a ≠ b ∧ a ∈ st; Used formulas: a1 = a
| a0 ≠ a, a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0), a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st |
a0 ≠ a, a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, a0 ∈ st → a0 ∈ st0 ∧ st(a0) = st0(a0), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0))
Used simplifier rules: In-insert: ⊦ a ∈ st(b := d) ↔ a = b ∨ a ∈ st; At-other: ⊦ a ≠ b → st(b := d)(a) = st(a);
| a0 ≠ a, a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, a0 ∈ st → a0 ∈ st0 ∧ st(a0) = st0(a0), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st, a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)) |
a0 ≠ a, a0 ∈ st → a0 ∈ st0 ∧ st(a0) = st0(a0), a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, a1 ∈ st → a1 ∈ st0(a := d) ∧ st(a1) = st0(a := d)(a1), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st
Used terms: a1
| a0 ≠ a, a0 ∈ st → a0 ∈ st0 ∧ st(a0) = st0(a0), a ∈ st → a ∈ st0(a := st(a)) ∧ st(a) = d, a1 ∈ st → a1 ∈ st0(a := d) ∧ st(a1) = st0(a := d)(a1), ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) ⊦ a ∈ st ∧ st(a) = d ∧ (a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)), (a1 ∈ st → a1 ∈ st0 ∧ st(a1) = st0(a1)) ∧ ¬ a ∈ st |
Used simplifier rules: Del-at-strong: a ≠ b ⊦ (st -- b)(a) = st(a); Del-in: ⊦ a ∈ st -- b ↔ a ≠ b ∧ a ∈ st; in-neq: ⊦ a ≠ b → (a ∈ st(b := d) ↔ a ∈ st); At-other: ⊦ a ≠ b → st(b := d)(a) = st(a); Del-at-strong: a ≠ b ⊦ (st -- b)(a) = st(a); Del-in: ⊦ a ∈ st -- b ↔ a ≠ b ∧ a ∈ st; Used formulas: a1 = a
| (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a0. a0 ∈ st -- a → a0 ∈ st0 -- a ∧ (st -- a)(a0) = (st0 -- a)(a0)) ⊦ ∀ a0. a0 ∈ st → a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) |
a0 ∈ st, (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1)) ⊦ a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0)
Used simplifier rules: Del-in: ⊦ a ∈ st -- b ↔ a ≠ b ∧ a ∈ st; Del-at-strong: a ≠ b ⊦ (st -- b)(a) = st(a);
| a0 ∈ st, (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1)) ⊦ a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) |
a0 ≠ a, a0 ∈ st, (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1)) ⊦ a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0)
Used simplifier rules: At-same: ⊦ st(a := d)(a) = d; In-insert: ⊦ a ∈ st(b := d) ↔ a = b ∨ a ∈ st; Used formulas: a0 = a
| a0 ≠ a, a0 ∈ st, (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1)) ⊦ a0 ∈ st0(a := d) ∧ st(a0) = st0(a := d)(a0) |
a0 ≠ a, a0 ∈ st, (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1)) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0)
Used simplifier rules: in-neq: ⊦ a ≠ b → (a ∈ st(b := d) ↔ a ∈ st); At-other: ⊦ a ≠ b → st(b := d)(a) = st(a);
| a0 ≠ a, a0 ∈ st, (∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a)) ∧ ¬ a ∈ st ∨ a ∈ st ∧ st(a) = d ∧ (∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1)) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0) |
a0 ≠ a, a0 ∈ st, ¬ a ∈ st, ∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0)
st(a) = d, a0 ≠ a, a0 ∈ st, a ∈ st, ∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0)
| a0 ≠ a, a0 ∈ st, ¬ a ∈ st, ∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0) |
a0 ≠ a, a0 ∈ st, ¬ a ∈ st, ∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0)
| a0 ≠ a, a0 ∈ st, ¬ a ∈ st, ∀ a. a ∈ st → a ∈ st0 ∧ st(a) = st0(a) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0) |
Used terms: a0
| st(a) = d, a0 ≠ a, a0 ∈ st, a ∈ st, ∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0) |
a0 ≠ a, a ∈ st, a0 ∈ st, ∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0)
| a0 ≠ a, a ∈ st, a0 ∈ st, ∀ a1. a1 ∈ st -- a → a1 ∈ st0 -- a ∧ st(a1) = st0(a1) ⊦ a0 ∈ st0 ∧ st(a0) = st0(a0) |
Used simplifier rules: Del-in: ⊦ a ∈ st -- b ↔ a ≠ b ∧ a ∈ st; Used terms: a0
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.