Theorem: LO.System.implyLeftReplaceIff'! (Logic/Logic/HilbertStyle/Supplemental.lean)

State before:
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! p ⟶ r ↔ 𝓢 ⊢! q ⟶ r
Tactic:
constructor
State after:
case mp
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! p ⟶ r → 𝓢 ⊢! q ⟶ r

case mpr
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! q ⟶ r → 𝓢 ⊢! p ⟶ r

State before:
case mp
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! p ⟶ r → 𝓢 ⊢! q ⟶ r

case mpr
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! q ⟶ r → 𝓢 ⊢! p ⟶ r
Tactic:
. exact imp_trans! $ conj₂'! h;
State after:
case mpr
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! q ⟶ r → 𝓢 ⊢! p ⟶ r

State before:
case mpr
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! q ⟶ r → 𝓢 ⊢! p ⟶ r
Tactic:
. exact imp_trans! $ conj₁'! h;
State after:
no goals

State before:
case mp
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! p ⟶ r → 𝓢 ⊢! q ⟶ r
Tactic:
exact imp_trans! $ conj₂'! h
State after:
no goals

State before:
case mpr
F : Type u_1
inst✝⁴ : LogicalConnective F
inst✝³ : DecidableEq F
S : Type u_2
inst✝² : System F S
𝓢 : S
inst✝¹ : Minimal 𝓢
p q r : F
Γ Δ : List F
inst✝ : System.NegationEquiv 𝓢
h : 𝓢 ⊢! p ⟷ q
⊢ 𝓢 ⊢! q ⟶ r → 𝓢 ⊢! p ⟶ r
Tactic:
exact imp_trans! $ conj₁'! h
State after:
no goals