simp only [incrCounts, map, List.not_mem_nil, ite_false]
case cons.nil
α : Type u_1
inst✝ : DecidableEq α
x : α
xs : List α
ih :
  ∀ (acc : List (α × Nat)),
    length (foldl (fun acc v => incrCounts acc v) acc xs) = length (uniqueAux xs (map Prod.fst acc))
⊢ length (foldl (fun acc v => incrCounts acc v) (incrCounts [] x) xs) =
    length (if x ∈ map Prod.fst [] then uniqueAux xs (map Prod.fst []) else uniqueAux xs (x :: map Prod.fst []))
case cons.nil
α : Type u_1
inst✝ : DecidableEq α
x : α
xs : List α
ih :
  ∀ (acc : List (α × Nat)),
    length (foldl (fun acc v => incrCounts acc v) acc xs) = length (uniqueAux xs (map Prod.fst acc))
⊢ length (foldl (fun acc v => incrCounts acc v) [(x, 1)] xs) = length (uniqueAux xs [x])