| m < # x ⊦ #oc(a, x[m, b]) = #oc(a, x), x[m] = a, a = b, x = [] |
m < #(a0 + x0), ∀ m, a, b. m < # x0 → #oc(a, x0[m, b]) = #oc(a, x0) ∨ x0[m] = a ∨ a = b ∨ x0 = [] ⊦ #oc(a, (a0 + x0)[m, b]) = #oc(a, a0 + x0), a0 + x0 = [], (a0 + x0)[m] = a, a = b
Used simplifier rules: list freely generated by [], +;;