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