Theorem: Set.inter_distrib_right (GMLInit/Data/Set/Basic.lean)

State before:
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
⊢ (s.union t).inter u = (s.inter u).union (t.inter u)
Tactic:
apply Set.ext
State after:
case a
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
⊢ ∀ (x : α), x ∈ (s.union t).inter u ↔ x ∈ (s.inter u).union (t.inter u)

State before:
case a
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
⊢ ∀ (x : α), x ∈ (s.union t).inter u ↔ x ∈ (s.inter u).union (t.inter u)
Tactic:
intro x
State after:
case a
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
⊢ x ∈ (s.union t).inter u ↔ x ∈ (s.inter u).union (t.inter u)

State before:
case a
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
⊢ x ∈ (s.union t).inter u ↔ x ∈ (s.inter u).union (t.inter u)
Tactic:
constructor
State after:
case a.mp
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
⊢ x ∈ (s.union t).inter u → x ∈ (s.inter u).union (t.inter u)

case a.mpr
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
⊢ x ∈ (s.inter u).union (t.inter u) → x ∈ (s.union t).inter u

State before:
case a.mp
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
⊢ x ∈ (s.union t).inter u → x ∈ (s.inter u).union (t.inter u)
Tactic:
open Or in intro
| ⟨inl hs, hu⟩ => left; constructor; exact hs; exact hu
| ⟨inr ht, hu⟩ => right; constructor; exact ht; exact hu
State after:
no goals

State before:
case a.mp
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
⊢ x ∈ (s.union t).inter u → x ∈ (s.inter u).union (t.inter u)
Tactic:
intro
| ⟨inl hs, hu⟩ => left; constructor; exact hs; exact hu
| ⟨inr ht, hu⟩ => right; constructor; exact ht; exact hu
State after:
no goals

State before:
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ (s.inter u).union (t.inter u)
Tactic:
left
State after:
case h
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ s.inter u

State before:
case h
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ s.inter u
Tactic:
constructor
State after:
case h.left
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ s

case h.right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u

State before:
case h.left
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ s

case h.right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u
Tactic:
exact hs
State after:
case h.right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u

State before:
case h.right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u
Tactic:
exact hu
State after:
no goals

State before:
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ (s.inter u).union (t.inter u)
Tactic:
right
State after:
case h
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ t.inter u

State before:
case h
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ t.inter u
Tactic:
constructor
State after:
case h.left
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ t

case h.right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u

State before:
case h.left
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ t

case h.right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u
Tactic:
exact ht
State after:
case h.right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u

State before:
case h.right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.union t).inter u
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u
Tactic:
exact hu
State after:
no goals

State before:
case a.mpr
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
⊢ x ∈ (s.inter u).union (t.inter u) → x ∈ (s.union t).inter u
Tactic:
open Or in intro
| inl ⟨hs, hu⟩ => constructor; left; exact hs; exact hu
| inr ⟨ht, hu⟩ => constructor; right; exact ht; exact hu
State after:
no goals

State before:
case a.mpr
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
⊢ x ∈ (s.inter u).union (t.inter u) → x ∈ (s.union t).inter u
Tactic:
intro
| inl ⟨hs, hu⟩ => constructor; left; exact hs; exact hu
| inr ⟨ht, hu⟩ => constructor; right; exact ht; exact hu
State after:
no goals

State before:
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ (s.union t).inter u
Tactic:
constructor
State after:
case left
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ s.union t

case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u

State before:
case left
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ s.union t

case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u
Tactic:
left
State after:
case left.h
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ s

case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u

State before:
case left.h
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ s

case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u
Tactic:
exact hs
State after:
case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u

State before:
case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
hs : x ∈ s
hu : x ∈ u
⊢ x ∈ u
Tactic:
exact hu
State after:
no goals

State before:
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ (s.union t).inter u
Tactic:
constructor
State after:
case left
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ s.union t

case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u

State before:
case left
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ s.union t

case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u
Tactic:
right
State after:
case left.h
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ t

case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u

State before:
case left.h
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ t

case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u
Tactic:
exact ht
State after:
case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u

State before:
case right
α : Sort u_1
β : ?m.22335
γ : ?m.22338
s t u : Set α
x : α
x✝ : x ∈ (s.inter u).union (t.inter u)
ht : x ∈ t
hu : x ∈ u
⊢ x ∈ u
Tactic:
exact hu
State after:
no goals