{ exact Or.inr (ih.mp hbs) }
case cons.mp.some.none
α✝ : Type u
inst✝² : DecidableEq α✝
β✝ : Type v
inst✝¹ : DecidableEq β✝
m : Type ?u.146799 → Type ?u.146801
α : Type u_2
β : Type u_1
inst✝ : Monad m
f : α → Option β
a : α
l : List α
ih : mapM' f l = none ↔ ∃ a ∈ l, f a = none
H : ∀ (a_1 : β), f a = some a_1 → ∀ (a : List β), ¬mapM' f l = some a
b : β
hb : f a = some b
hbs : mapM' f l = none
⊢ some b = none ∨ ∃ a ∈ l, f a = none

case cons.mp.some.some
α✝ : Type u
inst✝² : DecidableEq α✝
β✝ : Type v
inst✝¹ : DecidableEq β✝
m : Type ?u.146799 → Type ?u.146801
α : Type u_2
β : Type u_1
inst✝ : Monad m
f : α → Option β
a : α
l : List α
ih : mapM' f l = none ↔ ∃ a ∈ l, f a = none
H : ∀ (a_1 : β), f a = some a_1 → ∀ (a : List β), ¬mapM' f l = some a
b : β
hb : f a = some b
bs : List β
hbs : mapM' f l = some bs
⊢ some b = none ∨ ∃ a ∈ l, f a = none
case cons.mp.some.some
α✝ : Type u
inst✝² : DecidableEq α✝
β✝ : Type v
inst✝¹ : DecidableEq β✝
m : Type ?u.146799 → Type ?u.146801
α : Type u_2
β : Type u_1
inst✝ : Monad m
f : α → Option β
a : α
l : List α
ih : mapM' f l = none ↔ ∃ a ∈ l, f a = none
H : ∀ (a_1 : β), f a = some a_1 → ∀ (a : List β), ¬mapM' f l = some a
b : β
hb : f a = some b
bs : List β
hbs : mapM' f l = some bs
⊢ some b = none ∨ ∃ a ∈ l, f a = none