| #(s0 ++ a0) < 2, ∀ a, b. # s0 < 2 ∧ a ∈ s0 ∧ b ∈ s0 → a = b, a = a0 ∨ a ∈ s0, b = a0 ∨ b ∈ s0 ⊦ a = b |
#(s0 ++ a0) < 2, a ∈ s0, ∀ a, b. # s0 < 2 ∧ a ∈ s0 ∧ b ∈ s0 → a = b, b = a0 ∨ b ∈ s0, a = a0 ∨ a ∈ s0 ⊦ a = b
Used simplifier rules: ne-01: ⊦ a ∈ s → s ≠ ∅;%ne-02: ⊦ a ∈ s → (s = ∅ ↔ false);%Size-insert: ⊦ ¬ a ∈ s → #(s ++ a) = # s + 1;%size-zero-02: ⊦ # s = 0 → s = ∅;%Size-empty: ⊦ # ∅ = 0;%In-empty: ⊦ ¬ a ∈ ∅;%n < n0 ⊦ m + (* n) < (* n0) ↔ m < n0 - n; (s)% ⊦ m < 1 ↔ m = 0; (s)%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic%c: ⊦ m + n = n + m; from specification nat-basic Used formulas: a ∈ s0