Theorem: Smt.Reconstruct.Builtin.cnfItePos3 (Smt/Reconstruct/Builtin/Lemmas.lean)

State before:
c a b : Prop
h : Decidable c
⊢ (¬if c then a else b) ∨ a ∨ b
Tactic:
apply orImplies
State after:
case a
c a b : Prop
h : Decidable c
⊢ (¬¬if c then a else b) → a ∨ b

State before:
case a
c a b : Prop
h : Decidable c
⊢ (¬¬if c then a else b) → a ∨ b
Tactic:
intro hite
State after:
case a
c a b : Prop
h : Decidable c
hite : ¬¬if c then a else b
⊢ a ∨ b

State before:
case a
c a b : Prop
h : Decidable c
hite : ¬¬if c then a else b
⊢ a ∨ b
Tactic:
have hite' := notNotElim hite
State after:
case a
c a b : Prop
h : Decidable c
hite : ¬¬if c then a else b
hite' : if c then a else b
⊢ a ∨ b

State before:
case a
c a b : Prop
h : Decidable c
hite : ¬¬if c then a else b
hite' : if c then a else b
⊢ a ∨ b
Tactic:
match h with
| isFalse _ => exact Or.inr hite'
| isTrue _  => exact Or.inl hite'
State after:
no goals

State before:
c a b : Prop
h : Decidable c
h✝ : ¬c
hite : ¬¬if c then a else b
hite' : if c then a else b
⊢ a ∨ b
Tactic:
exact Or.inr hite'
State after:
no goals

State before:
c a b : Prop
h : Decidable c
h✝ : c
hite : ¬¬if c then a else b
hite' : if c then a else b
⊢ a ∨ b
Tactic:
exact Or.inl hite'
State after:
no goals