| ∀ s0, a. # s0 < # s → true → (a ∈ set2list(s0) ↔ a ∈ s0) ⊦ # s = 0, a ∈ set2list(s.butmin) ∨ a = s.min ↔ a ∈ s, s = ∅ |
Used simplifier rules: ⊦ ¬ a ∈ s.butmin → (a ∈ s ↔ ¬ ¬(a = s.min ∧ s ≠ ∅));% ⊦ ¬ a ∈ s ∧ s ≠ ∅ → ¬ a ∈ s.butmin;% ⊦ ¬ s.min ∈ s ↔ s = ∅;% ⊦ s ≠ ∅ → # s.butmin = # s - 1;% ⊦ ¬ m < n ↔ n ≤ m;% ⊦ m ≤ m - 1 → m = 0; (forward)% ⊦ m < 1 ↔ m = 0;% ⊦ ¬ m ≤ n ↔ n < m;%n0 ≤ n ⊦ n - n0 < m ↔ n < m + n0;% ⊦ m < n + 1 ↔ ¬ n < m;% ⊦ ¬ n < n;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m + n = n + m; Used terms: s.butmin, a