Theorem: Filter.map₂_distrib_le_right
File: Mathlib/Order/Filter/NAry.lean

tactic: rintro s ⟨t₁, t₂, ⟨u, w₁, hu, hw₁, ht₁⟩, ⟨v, w₂, hv, hw₂, ht₂⟩, hs⟩
state_before: α : Type u_4
α' : Type u_6
β : Type u_5
β' : Type u_7
γ : Type u_3
γ' : Type ?u.42546
δ : Type u_2
δ' : Type ?u.42552
ε : Type u_1
ε' : Type ?u.42558
m✝ : α → β → γ
f f₁ f₂ : Filter α
g g₁ g₂ : Filter β
h h₁ h₂ : Filter γ
s s₁ s₂ : Set α
t t₁ t₂ : Set β
u : Set γ
v : Set δ
a : α
b : β
c : γ
m : δ → γ → ε
n : α → β → δ
m₁ : α → γ → α'
m₂ : β → γ → β'
n' : α' → β' → ε
h_distrib : ∀ (a : α) (b : β) (c : γ), m (n a b) c = n' (m₁ a c) (m₂ b c)
⊢ map₂ m (map₂ n f g) h ≤ map₂ n' (map₂ m₁ f h) (map₂ m₂ g h)

tactic: refine' ⟨_, w₁ ∩ w₂, image2_mem_map₂ hu hv, inter_mem hw₁ hw₂, _⟩
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_4
α' : Type u_6
β : Type u_5
β' : Type u_7
γ : Type u_3
γ' : Type ?u.42546
δ : Type u_2
δ' : Type ?u.42552
ε : Type u_1
ε' : Type ?u.42558
m✝ : α → β → γ
f f₁ f₂ : Filter α
g g₁ g₂ : Filter β
h h₁ h₂ : Filter γ
s✝ s₁ s₂ : Set α
t t₁✝ t₂✝ : Set β
u✝ : Set γ
v✝ : Set δ
a : α
b : β
c : γ
m : δ → γ → ε
n : α → β → δ
m₁ : α → γ → α'
m₂ : β → γ → β'
n' : α' → β' → ε
h_distrib : ∀ (a : α) (b : β) (c : γ), m (n a b) c = n' (m₁ a c) (m₂ b c)
s : Set ε
t₁ : Set α'
t₂ : Set β'
u : Set α
w₁ : Set γ
hu : u ∈ f
hw₁ : w₁ ∈ h
ht₁ : image2 m₁ u w₁ ⊆ t₁
hs : image2 n' t₁ t₂ ⊆ s
v : Set β
w₂ : Set γ
hv : v ∈ g
hw₂ : w₂ ∈ h
ht₂ : image2 m₂ v w₂ ⊆ t₂
⊢ s ∈ map₂ m (map₂ n f g) h

tactic: refine' (image2_distrib_subset_right h_distrib).trans ((image2_subset _ _).trans hs)
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_4
α' : Type u_6
β : Type u_5
β' : Type u_7
γ : Type u_3
γ' : Type ?u.42546
δ : Type u_2
δ' : Type ?u.42552
ε : Type u_1
ε' : Type ?u.42558
m✝ : α → β → γ
f f₁ f₂ : Filter α
g g₁ g₂ : Filter β
h h₁ h₂ : Filter γ
s✝ s₁ s₂ : Set α
t t₁✝ t₂✝ : Set β
u✝ : Set γ
v✝ : Set δ
a : α
b : β
c : γ
m : δ → γ → ε
n : α → β → δ
m₁ : α → γ → α'
m₂ : β → γ → β'
n' : α' → β' → ε
h_distrib : ∀ (a : α) (b : β) (c : γ), m (n a b) c = n' (m₁ a c) (m₂ b c)
s : Set ε
t₁ : Set α'
t₂ : Set β'
u : Set α
w₁ : Set γ
hu : u ∈ f
hw₁ : w₁ ∈ h
ht₁ : image2 m₁ u w₁ ⊆ t₁
hs : image2 n' t₁ t₂ ⊆ s
v : Set β
w₂ : Set γ
hv : v ∈ g
hw₂ : w₂ ∈ h
ht₂ : image2 m₂ v w₂ ⊆ t₂
⊢ image2 m (image2 n u v) (w₁ ∩ w₂) ⊆ s

tactic: exact (image2_subset_left <| inter_subset_left _ _).trans ht₁
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_1
α : Type u_4
α' : Type u_6
β : Type u_5
β' : Type u_7
γ : Type u_3
γ' : Type ?u.42546
δ : Type u_2
δ' : Type ?u.42552
ε : Type u_1
ε' : Type ?u.42558
m✝ : α → β → γ
f f₁ f₂ : Filter α
g g₁ g₂ : Filter β
h h₁ h₂ : Filter γ
s✝ s₁ s₂ : Set α
t t₁✝ t₂✝ : Set β
u✝ : Set γ
v✝ : Set δ
a : α
b : β
c : γ
m : δ → γ → ε
n : α → β → δ
m₁ : α → γ → α'
m₂ : β → γ → β'
n' : α' → β' → ε
h_distrib : ∀ (a : α) (b : β) (c : γ), m (n a b) c = n' (m₁ a c) (m₂ b c)
s : Set ε
t₁ : Set α'
t₂ : Set β'
u : Set α
w₁ : Set γ
hu : u ∈ f
hw₁ : w₁ ∈ h
ht₁ : image2 m₁ u w₁ ⊆ t₁
hs : image2 n' t₁ t₂ ⊆ s
v : Set β
w₂ : Set γ
hv : v ∈ g
hw₂ : w₂ ∈ h
ht₂ : image2 m₂ v w₂ ⊆ t₂
⊢ image2 (fun a c => m₁ a c) u (w₁ ∩ w₂) ⊆ t₁

tactic: exact (image2_subset_left <| inter_subset_right _ _).trans ht₂
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_2
α : Type u_4
α' : Type u_6
β : Type u_5
β' : Type u_7
γ : Type u_3
γ' : Type ?u.42546
δ : Type u_2
δ' : Type ?u.42552
ε : Type u_1
ε' : Type ?u.42558
m✝ : α → β → γ
f f₁ f₂ : Filter α
g g₁ g₂ : Filter β
h h₁ h₂ : Filter γ
s✝ s₁ s₂ : Set α
t t₁✝ t₂✝ : Set β
u✝ : Set γ
v✝ : Set δ
a : α
b : β
c : γ
m : δ → γ → ε
n : α → β → δ
m₁ : α → γ → α'
m₂ : β → γ → β'
n' : α' → β' → ε
h_distrib : ∀ (a : α) (b : β) (c : γ), m (n a b) c = n' (m₁ a c) (m₂ b c)
s : Set ε
t₁ : Set α'
t₂ : Set β'
u : Set α
w₁ : Set γ
hu : u ∈ f
hw₁ : w₁ ∈ h
ht₁ : image2 m₁ u w₁ ⊆ t₁
hs : image2 n' t₁ t₂ ⊆ s
v : Set β
w₂ : Set γ
hv : v ∈ g
hw₂ : w₂ ∈ h
ht₂ : image2 m₂ v w₂ ⊆ t₂
⊢ image2 (fun b c => m₂ b c) v (w₁ ∩ w₂) ⊆ t₂