Documentation

Mathlib.Analysis.Asymptotics.Prod

Asymptotic relations and product types #

This file contains lemmas about asymptotic relations for product-valued functions and product filters.

Product of functions (right) #

theorem Asymptotics.isBigOWith_fst_prod {α : Type u_1} {E' : Type u_5} {F' : Type u_6} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {f' : αE'} {g' : αF'} {l : Filter α} :
IsBigOWith 1 l f' fun (x : α) => (f' x, g' x)
theorem Asymptotics.isBigOWith_snd_prod {α : Type u_1} {E' : Type u_5} {F' : Type u_6} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {f' : αE'} {g' : αF'} {l : Filter α} :
IsBigOWith 1 l g' fun (x : α) => (f' x, g' x)
theorem Asymptotics.isBigO_fst_prod {α : Type u_1} {E' : Type u_5} {F' : Type u_6} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {f' : αE'} {g' : αF'} {l : Filter α} :
f' =O[l] fun (x : α) => (f' x, g' x)
theorem Asymptotics.isBigO_snd_prod {α : Type u_1} {E' : Type u_5} {F' : Type u_6} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {f' : αE'} {g' : αF'} {l : Filter α} :
g' =O[l] fun (x : α) => (f' x, g' x)
theorem Asymptotics.isBigO_fst_prod' {α : Type u_1} {E' : Type u_5} {F' : Type u_6} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {l : Filter α} {f' : αE' × F'} :
(fun (x : α) => (f' x).1) =O[l] f'
theorem Asymptotics.isBigO_snd_prod' {α : Type u_1} {E' : Type u_5} {F' : Type u_6} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {l : Filter α} {f' : αE' × F'} :
(fun (x : α) => (f' x).2) =O[l] f'
theorem Asymptotics.IsBigOWith.prod_rightl {α : Type u_1} {E : Type u_3} {F' : Type u_6} {G' : Type u_7} [Norm E] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {c : } {f : αE} {g' : αF'} (k' : αG') {l : Filter α} (h : IsBigOWith c l f g') (hc : 0 c) :
IsBigOWith c l f fun (x : α) => (g' x, k' x)
theorem Asymptotics.IsBigO.prod_rightl {α : Type u_1} {E : Type u_3} {F' : Type u_6} {G' : Type u_7} [Norm E] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f : αE} {g' : αF'} (k' : αG') {l : Filter α} (h : f =O[l] g') :
f =O[l] fun (x : α) => (g' x, k' x)
theorem Asymptotics.IsLittleO.prod_rightl {α : Type u_1} {E : Type u_3} {F' : Type u_6} {G' : Type u_7} [Norm E] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f : αE} {g' : αF'} (k' : αG') {l : Filter α} (h : f =o[l] g') :
f =o[l] fun (x : α) => (g' x, k' x)
theorem Asymptotics.IsBigOWith.prod_rightr {α : Type u_1} {E : Type u_3} {E' : Type u_5} {F' : Type u_6} [Norm E] [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {c : } {f : αE} (f' : αE') {g' : αF'} {l : Filter α} (h : IsBigOWith c l f g') (hc : 0 c) :
IsBigOWith c l f fun (x : α) => (f' x, g' x)
theorem Asymptotics.IsBigO.prod_rightr {α : Type u_1} {E : Type u_3} {E' : Type u_5} {F' : Type u_6} [Norm E] [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {f : αE} (f' : αE') {g' : αF'} {l : Filter α} (h : f =O[l] g') :
f =O[l] fun (x : α) => (f' x, g' x)
theorem Asymptotics.IsLittleO.prod_rightr {α : Type u_1} {E : Type u_3} {E' : Type u_5} {F' : Type u_6} [Norm E] [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] {f : αE} (f' : αE') {g' : αF'} {l : Filter α} (h : f =o[l] g') :
f =o[l] fun (x : α) => (f' x, g' x)
theorem Asymptotics.IsBigO.fiberwise_right {α : Type u_1} {β : Type u_2} {E : Type u_3} {F : Type u_4} [Norm E] [Norm F] {l : Filter α} {f : α × βE} {g : α × βF} {l' : Filter β} :
f =O[l ×ˢ l'] g∀ᶠ (a : α) in l, (fun (x : β) => f (a, x)) =O[l'] fun (x : β) => g (a, x)
theorem Asymptotics.IsBigO.fiberwise_left {α : Type u_1} {β : Type u_2} {E : Type u_3} {F : Type u_4} [Norm E] [Norm F] {l : Filter α} {f : α × βE} {g : α × βF} {l' : Filter β} :
f =O[l ×ˢ l'] g∀ᶠ (b : β) in l', (fun (x : α) => f (x, b)) =O[l] fun (x : α) => g (x, b)
theorem Asymptotics.IsBigO.comp_fst {α : Type u_1} {β : Type u_2} {E : Type u_3} {F : Type u_4} [Norm E] [Norm F] {f : αE} {g : αF} {l : Filter α} (l' : Filter β) :
f =O[l] g → (f Prod.fst) =O[l ×ˢ l'] (g Prod.fst)
theorem Asymptotics.IsBigO.comp_snd {α : Type u_1} {β : Type u_2} {E : Type u_3} {F : Type u_4} [Norm E] [Norm F] {f : αE} {g : αF} {l : Filter α} (l' : Filter β) :
f =O[l] g → (f Prod.snd) =O[l' ×ˢ l] (g Prod.snd)
theorem Asymptotics.IsLittleO.comp_fst {α : Type u_1} {β : Type u_2} {E : Type u_3} {F : Type u_4} [Norm E] [Norm F] {f : αE} {g : αF} {l : Filter α} (l' : Filter β) :
f =o[l] g → (f Prod.fst) =o[l ×ˢ l'] (g Prod.fst)
theorem Asymptotics.IsLittleO.comp_snd {α : Type u_1} {β : Type u_2} {E : Type u_3} {F : Type u_4} [Norm E] [Norm F] {f : αE} {g : αF} {l : Filter α} (l' : Filter β) :
f =o[l] g → (f Prod.snd) =o[l' ×ˢ l] (g Prod.snd)
theorem Asymptotics.IsBigOWith.prod_left_same {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {c : } {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} (hf : IsBigOWith c l f' k') (hg : IsBigOWith c l g' k') :
IsBigOWith c l (fun (x : α) => (f' x, g' x)) k'
theorem Asymptotics.IsBigOWith.prod_left {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {c c' : } {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} (hf : IsBigOWith c l f' k') (hg : IsBigOWith c' l g' k') :
IsBigOWith (max c c') l (fun (x : α) => (f' x, g' x)) k'
theorem Asymptotics.IsBigOWith.prod_left_fst {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {c : } {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} (h : IsBigOWith c l (fun (x : α) => (f' x, g' x)) k') :
IsBigOWith c l f' k'
theorem Asymptotics.IsBigOWith.prod_left_snd {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {c : } {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} (h : IsBigOWith c l (fun (x : α) => (f' x, g' x)) k') :
IsBigOWith c l g' k'
theorem Asymptotics.isBigOWith_prod_left {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {c : } {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} :
IsBigOWith c l (fun (x : α) => (f' x, g' x)) k' IsBigOWith c l f' k' IsBigOWith c l g' k'
theorem Asymptotics.IsBigO.prod_left {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} (hf : f' =O[l] k') (hg : g' =O[l] k') :
(fun (x : α) => (f' x, g' x)) =O[l] k'
theorem Asymptotics.IsBigO.prod_left_fst {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} :
(fun (x : α) => (f' x, g' x)) =O[l] k'f' =O[l] k'
theorem Asymptotics.IsBigO.prod_left_snd {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} :
(fun (x : α) => (f' x, g' x)) =O[l] k'g' =O[l] k'
@[simp]
theorem Asymptotics.isBigO_prod_left {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} :
(fun (x : α) => (f' x, g' x)) =O[l] k' f' =O[l] k' g' =O[l] k'
theorem Asymptotics.IsLittleO.prod_left {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} (hf : f' =o[l] k') (hg : g' =o[l] k') :
(fun (x : α) => (f' x, g' x)) =o[l] k'
theorem Asymptotics.IsLittleO.prod_left_fst {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} :
(fun (x : α) => (f' x, g' x)) =o[l] k'f' =o[l] k'
theorem Asymptotics.IsLittleO.prod_left_snd {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} :
(fun (x : α) => (f' x, g' x)) =o[l] k'g' =o[l] k'
@[simp]
theorem Asymptotics.isLittleO_prod_left {α : Type u_1} {E' : Type u_5} {F' : Type u_6} {G' : Type u_7} [SeminormedAddCommGroup E'] [SeminormedAddCommGroup F'] [SeminormedAddCommGroup G'] {f' : αE'} {g' : αF'} {k' : αG'} {l : Filter α} :
(fun (x : α) => (f' x, g' x)) =o[l] k' f' =o[l] k' g' =o[l] k'