| finout(g) ⊦ ∀ s. ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used simplifier rules: finout-def: ⊦ finout(g) ↔ (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s);
| ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used simplifier rules: <; (wellfounded) Used terms: # s
| ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∃ a. a ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)), ∃ a. a ∈ s
Used formulas: ∃ a. a ∈ s
| ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∃ a. a ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used simplifier rules: size-zero-01: ⊦ s ≠ ∅ → # s ≠ 0; (forward) from specification set-basic ne-01: ⊦ a ∈ s → s ≠ ∅; (forward) from specification set-basic
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∃ s1. ∀ b. b ∈ s1 ↔ (∃ a0. a0 ∈ s -- a ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used simplifier rules: ⊦ a ∈ s → #(s -- a) = # s - 1; (s) ⊦ m ≤ n ↔ ¬ n < m; (ss) ⊦ m < 1 ↔ m = 0; (s) n0 ≤ n ⊦ n - n0 < m ↔ n < m + n0; (s) ⊦ m < n + 1 ↔ ¬ n < m; (s) ⊦ ¬ n < n; (s) a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic c: ⊦ m + n = n + m; from specification nat-basic Used terms: s -- a, g
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)), ∃ s. ∀ b. edge(g)(a0, b) ↔ b ∈ s
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)), ∃ s. ∀ b. edge(g)(a0, b) ↔ b ∈ s |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∃ s. ∀ b. edge(g)(a0, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s. ∀ b. edge(g)(a0, b) ↔ b ∈ s, ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used terms: a0
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∃ s. ∀ b. edge(g)(a0, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s. ∀ b. edge(g)(a0, b) ↔ b ∈ s, ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. edge(g)(a0, b) ↔ b ∈ s0, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)), ∃ s. ∀ b. edge(g)(a0, b) ↔ b ∈ s
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. edge(g)(a0, b) ↔ b ∈ s0, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)), ∃ s. ∀ b. edge(g)(a0, b) ↔ b ∈ s |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ b. edge(g)(a0, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∀ b. edge(g)(a0, b) ↔ b ∈ s0, ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used terms: s0
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ b. edge(g)(a0, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∀ b. edge(g)(a0, b) ↔ b ∈ s0, ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, ¬(edge(g)(a0, b) ↔ b ∈ s0), s ≠ ∅, a ∈ s, ∀ b. edge(g)(a0, b) ↔ b ∈ s0, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
| # s ≠ 0, ¬(edge(g)(a0, b) ↔ b ∈ s0), s ≠ ∅, a ∈ s, ∀ b. edge(g)(a0, b) ↔ b ∈ s0, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
Used terms: b
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∃ s1. ∀ b. b ∈ s1 ↔ (∃ a0. a0 ∈ s -- a ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used simplifier rules: ⊦ a ∈ s -- a0 ↔ a ≠ a0 ∧ a ∈ s; (s)
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used terms: a
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∀ b. b ∈ s1 ∪ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used terms: s1 ∪ s0
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∀ b. b ∈ s1 ∪ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ b ∈ s1 ∨ b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b))
Used simplifier rules: unc: ⊦ s ∪ s0 = s0 ∪ s; from specification set-union una: ⊦ (s ∪ s0) ∪ s1 = s ∪ s0 ∪ s1; from specification set-union ⊦ a ∈ s1 ∪ s2 ↔ a ∈ s1 ∨ a ∈ s2; (s)
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ b ∈ s1 ∨ b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, b ∈ s1 ∨ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
# s ≠ 0, s ≠ ∅, a ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∃ a. a ∈ s ∧ edge(g)(a, b), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, b ∈ s1 ∨ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
# s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), b ∈ s1 ∨ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
| # s ≠ 0, s ≠ ∅, a ∈ s, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), b ∈ s1 ∨ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
# s ≠ 0, s ≠ ∅, a ∈ s, b ∈ s1, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
# s ≠ 0, s ≠ ∅, a ∈ s, b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
| # s ≠ 0, s ≠ ∅, a ∈ s, b ∈ s1, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
# s ≠ 0, # s1 ≠ 0, s ≠ ∅, s1 ≠ ∅, a ∈ s, b ∈ s1, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
Used simplifier rules: size-zero-01: ⊦ s ≠ ∅ → # s ≠ 0; (forward) from specification set-basic ne-01: ⊦ a ∈ s → s ≠ ∅; (forward) from specification set-basic
| # s ≠ 0, # s1 ≠ 0, s ≠ ∅, s1 ≠ ∅, a ∈ s, b ∈ s1, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
# s ≠ 0, # s1 ≠ 0, s ≠ ∅, s1 ≠ ∅, b ∈ s1, a ∈ s, b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
Used terms: b
| # s ≠ 0, # s1 ≠ 0, s ≠ ∅, s1 ≠ ∅, b ∈ s1, a ∈ s, b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
# s ≠ 0, # s1 ≠ 0, a0 ≠ a, s ≠ ∅, s1 ≠ ∅, edge(g)(a0, b), a ∈ s, b ∈ s1, a0 ∈ s, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
| # s ≠ 0, # s1 ≠ 0, a0 ≠ a, s ≠ ∅, s1 ≠ ∅, edge(g)(a0, b), a ∈ s, b ∈ s1, a0 ∈ s, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
Used terms: a0
| # s ≠ 0, s ≠ ∅, a ∈ s, b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
# s ≠ 0, # s0 ≠ 0, s ≠ ∅, s0 ≠ ∅, a ∈ s, b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
Used simplifier rules: size-zero-01: ⊦ s ≠ ∅ → # s ≠ 0; (forward) from specification set-basic ne-01: ⊦ a ∈ s → s ≠ ∅; (forward) from specification set-basic
| # s ≠ 0, # s0 ≠ 0, s ≠ ∅, s0 ≠ ∅, a ∈ s, b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
edge(g)(a, b) ↔ b ∈ s0, # s ≠ 0, # s0 ≠ 0, s ≠ ∅, s0 ≠ ∅, b ∈ s0, a ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
Used terms: b
| edge(g)(a, b) ↔ b ∈ s0, # s ≠ 0, # s0 ≠ 0, s ≠ ∅, s0 ≠ ∅, b ∈ s0, a ∈ s, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
# s ≠ 0, # s0 ≠ 0, s ≠ ∅, s0 ≠ ∅, edge(g)(a, b), a ∈ s, b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b)
| # s ≠ 0, # s0 ≠ 0, s ≠ ∅, s0 ≠ ∅, edge(g)(a, b), a ∈ s, b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s ∧ edge(g)(a, b) |
Used terms: a
| # s ≠ 0, s ≠ ∅, a ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∃ a. a ∈ s ∧ edge(g)(a, b), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ |
# s ≠ 0, s ≠ ∅, edge(g)(a0, b), a0 ∈ s, a ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦
| # s ≠ 0, s ≠ ∅, edge(g)(a0, b), a0 ∈ s, a ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ b. b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ |
# s ≠ 0, s ≠ ∅, edge(g)(a0, b), a ∈ s, a0 ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦
Used terms: b
| # s ≠ 0, s ≠ ∅, edge(g)(a0, b), a ∈ s, a0 ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, b ∈ s1 ↔ (∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)), ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ |
# s ≠ 0, s ≠ ∅, edge(g)(a0, b), a0 ∈ s, a ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)
| # s ≠ 0, s ≠ ∅, edge(g)(a0, b), a0 ∈ s, a ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b) |
# s ≠ 0, s ≠ ∅, edge(g)(a0, b), a ∈ s, a0 ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b), a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)
Used terms: a0
| # s ≠ 0, s ≠ ∅, edge(g)(a0, b), a ∈ s, a0 ∈ s, ¬ b ∈ s1, ¬ b ∈ s0, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b), a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b) |
# s ≠ 0, s ≠ ∅, edge(g)(a, b), a ∈ s, ¬ b ∈ s0, ¬ b ∈ s1, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b)
| # s ≠ 0, s ≠ ∅, edge(g)(a, b), a ∈ s, ¬ b ∈ s0, ¬ b ∈ s1, ∀ b. edge(g)(a, b) ↔ b ∈ s0, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a0. a0 ≠ a ∧ a0 ∈ s ∧ edge(g)(a0, b) |
Used terms: b
| ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ s0. ∀ b. b ∈ s0 ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)), ∃ a. a ∈ s |
∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∀ b. b ∈ ∅ ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)), ∃ a. a ∈ s
Used terms: ∅
| ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∀ b. b ∈ ∅ ↔ (∃ a. a ∈ s ∧ edge(g)(a, b)), ∃ a. a ∈ s |
# s ≠ 0, s ≠ ∅, edge(g)(a, b), a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s
Used simplifier rules: size-zero-01: ⊦ s ≠ ∅ → # s ≠ 0; (forward) from specification set-basic ne-01: ⊦ a ∈ s → s ≠ ∅; (forward) from specification set-basic ⊦ ¬ a ∈ ∅; (s)
| # s ≠ 0, s ≠ ∅, edge(g)(a, b), a ∈ s, ∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s, ∀ s0, g. # s0 < # s → (∀ a. ∃ s. ∀ b. edge(g)(a, b) ↔ b ∈ s) → (∃ s1. ∀ b. b ∈ s1 ↔ (∃ a. a ∈ s0 ∧ edge(g)(a, b))) ⊦ ∃ a. a ∈ s |
Used terms: 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.