Theorem: LO.System.iff_concact_disj'! (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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! (Γ ++ Δ).disj' ↔ 𝓢 ⊢! Γ.disj' ⋎ Δ.disj'
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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! (Γ ++ Δ).disj' → 𝓢 ⊢! Γ.disj' ⋎ Δ.disj'

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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! Γ.disj' ⋎ Δ.disj' → 𝓢 ⊢! (Γ ++ Δ).disj'

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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! (Γ ++ Δ).disj' → 𝓢 ⊢! Γ.disj' ⋎ Δ.disj'

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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! Γ.disj' ⋎ Δ.disj' → 𝓢 ⊢! (Γ ++ Δ).disj'
Tactic:
. intro h; exact (conj₁'! iff_concact_disj!) ⨀ 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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! Γ.disj' ⋎ Δ.disj' → 𝓢 ⊢! (Γ ++ Δ).disj'

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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! Γ.disj' ⋎ Δ.disj' → 𝓢 ⊢! (Γ ++ Δ).disj'
Tactic:
. intro h; exact (conj₂'! iff_concact_disj!) ⨀ 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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! (Γ ++ Δ).disj' → 𝓢 ⊢! Γ.disj' ⋎ Δ.disj'
Tactic:
intro h
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 𝓢
inst✝ : HasEFQ 𝓢
h : 𝓢 ⊢! (Γ ++ Δ).disj'
⊢ 𝓢 ⊢! Γ.disj' ⋎ Δ.disj'

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 𝓢
inst✝ : HasEFQ 𝓢
h : 𝓢 ⊢! (Γ ++ Δ).disj'
⊢ 𝓢 ⊢! Γ.disj' ⋎ Δ.disj'
Tactic:
exact (conj₁'! iff_concact_disj!) ⨀ 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 𝓢
inst✝ : HasEFQ 𝓢
⊢ 𝓢 ⊢! Γ.disj' ⋎ Δ.disj' → 𝓢 ⊢! (Γ ++ Δ).disj'
Tactic:
intro 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 𝓢
inst✝ : HasEFQ 𝓢
h : 𝓢 ⊢! Γ.disj' ⋎ Δ.disj'
⊢ 𝓢 ⊢! (Γ ++ Δ).disj'

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 𝓢
inst✝ : HasEFQ 𝓢
h : 𝓢 ⊢! Γ.disj' ⋎ Δ.disj'
⊢ 𝓢 ⊢! (Γ ++ Δ).disj'
Tactic:
exact (conj₂'! iff_concact_disj!) ⨀ h
State after:
no goals