| ⊦ writersOk(bq, pq, writers) → writersOk(bq(t := []), pq, writers) |
writersOk(bq, pq, writers), ¬ writersOk(bq(t := []), pq, writers) ⊦
| writersOk(bq, pq, writers), ¬ writersOk(bq(t := []), pq, writers) ⊦ |
∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ (t0 ∈ writers(l) → l0 ≠ l → ¬ t0 ∈ writers(l0)) ∧ (¬ t0 ∈ writers(l) → pq(l) |W | t0 = [] ∧ (t = t0 ⊃ [];bq(t0)) |WL l = [])
Used simplifier rules: writersOk: ⊦ writersOk(bq, p, writers) ↔ (∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → p(l) |W | t = [] ∧ bq(t) |WL l = []));
| ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ (t0 ∈ writers(l) → l0 ≠ l → ¬ t0 ∈ writers(l0)) ∧ (¬ t0 ∈ writers(l) → pq(l) |W | t0 = [] ∧ (t = t0 ⊃ [];bq(t0)) |WL l = []) |
l0 ≠ l, t0 ∈ writers(l0), t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦
¬ t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ pq(l) |W | t0 = [] ∧ (t = t0 ⊃ [];bq(t0)) |WL l = []
| l0 ≠ l, t0 ∈ writers(l0), t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ |
# writers(l0) ≠ 0, # writers(l) ≠ 0, l0 ≠ l, writers(l0) ≠ ∅, writers(l) ≠ ∅, t0 ∈ writers(l0), t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦
Used simplifier rules: size-zero-01: ⊦ s ≠ ∅ → # s ≠ 0; (forward) from specification set-basic ne-01: ⊦ a ∈ s → s ≠ ∅; (forward) from specification set-basic
| # writers(l0) ≠ 0, # writers(l) ≠ 0, l0 ≠ l, writers(l0) ≠ ∅, writers(l) ≠ ∅, t0 ∈ writers(l0), t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ |
# writers(l0) ≠ 0, # writers(l) ≠ 0, l0 ≠ l, writers(l0) ≠ ∅, writers(l) ≠ ∅, t0 ∈ writers(l), t0 ∈ writers(l0), t0 ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t0 ∈ writers(l0)), ¬ t0 ∈ writers(l) → pq(l) |W | t0 = [] ∧ bq(t0) |WL l = [], ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦
Used terms: l, t0
| # writers(l0) ≠ 0, # writers(l) ≠ 0, l0 ≠ l, writers(l0) ≠ ∅, writers(l) ≠ ∅, t0 ∈ writers(l), t0 ∈ writers(l0), t0 ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t0 ∈ writers(l0)), ¬ t0 ∈ writers(l) → pq(l) |W | t0 = [] ∧ bq(t0) |WL l = [], ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ |
# writers(l0) ≠ 0, # writers(l) ≠ 0, l0 ≠ l, writers(l0) ≠ ∅, writers(l) ≠ ∅, t0 ∈ writers(l0), t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []), ∀ l0. l0 ≠ l → ¬ t0 ∈ writers(l0) ⊦
| # writers(l0) ≠ 0, # writers(l) ≠ 0, l0 ≠ l, writers(l0) ≠ ∅, writers(l) ≠ ∅, t0 ∈ writers(l0), t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []), ∀ l0. l0 ≠ l → ¬ t0 ∈ writers(l0) ⊦ |
Used terms: l0
| ¬ t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ pq(l) |W | t0 = [] ∧ (t = t0 ⊃ [];bq(t0)) |WL l = [] |
pq(l) |W | t0 ≠ [], ¬ t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦
(t = t0 ⊃ [];bq(t0)) |WL l ≠ [], ¬ t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦
| pq(l) |W | t0 ≠ [], ¬ t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ |
Used terms: l, t0
| (t = t0 ⊃ [];bq(t0)) |WL l ≠ [], ¬ t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ |
t ≠ t0, bq(t0) |WL l ≠ [], ¬ t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦
Used simplifier rules: restrict-l-empty: ⊦ [] |WL l = [];
| t ≠ t0, bq(t0) |WL l ≠ [], ¬ t0 ∈ writers(l), ∀ l, t. (t ∈ writers(l) → (∀ l0. l0 ≠ l → ¬ t ∈ writers(l0))) ∧ (¬ t ∈ writers(l) → pq(l) |W | t = [] ∧ bq(t) |WL l = []) ⊦ |
Used terms: l, t0
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.