cases l <;> dsimp
case cons
α : Type u
β : Type v
inst✝² : BishopFin α
inst✝¹ : BishopFin β
inst✝ : Subsingleton α
a : α
l : List α
hl : elems α = a :: l
⊢ Nat.succ (List.length l) ≤ 1
case cons.nil
α : Type u
β : Type v
inst✝² : BishopFin α
inst✝¹ : BishopFin β
inst✝ : Subsingleton α
a : α
hl : elems α = [a]
⊢ Nat.succ 0 ≤ 1

case cons.cons
α : Type u
β : Type v
inst✝² : BishopFin α
inst✝¹ : BishopFin β
inst✝ : Subsingleton α
a head✝ : α
tail✝ : List α
hl : elems α = a :: head✝ :: tail✝
⊢ Nat.succ (Nat.succ (List.length tail✝)) ≤ 1