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