| n < #oc(a, a0 ') + #oc(a, x0), a = a0 ∨ a ∈ x0, ∀ n0, a1. n0 < #oc(a1, x0) ∧ a1 ∈ x0 → #oc(a1, x0) = 1 ⊦ #oc(a, a0 ') + #oc(a, x0) = 0, a0 ∈ x0, dups(x0), a ≠ a0 ∧ #oc(a, x0) = 1, ¬ a ∈ x0 ∧ #oc(a, a0 ') = 1 |
n < #oc(a, a0 ') + #oc(a, x0), a = a0 ∨ a ∈ x0, ∀ n0, a1. n0 < #oc(a1, x0) ∧ a1 ∈ x0 → #oc(a1, x0) = 1 ⊦ a0 = a, #oc(a, a0 ') + #oc(a, x0) = 0, a0 ∈ x0, dups(x0), a ≠ a0 ∧ #oc(a, x0) = 1, ¬ a ∈ x0 ∧ #oc(a, a0 ') = 1
Used simplifier rules: one: ⊦ #oc(a, a ') = 1;%notin: ⊦ ¬ a ∈ x → #oc(a, x) = 0;%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%c: ⊦ m + n = n + m; from specification nat-basic2%one-01: ⊦ m < 1 ↔ m = 0; from specification nat-basic1 Used formulas: a0 = a