File: Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean

full_name: Asymptotics.IsEquivalent
code: /-- Two functions `u` and `v` are said to be asymptotically equivalent along a filter `l` when
    `u x - v x = o(v x)` as `x` converges along `l`. -/
def IsEquivalent (l : Filter α) (u v : α → β) 
goal: Prop

full_name: Asymptotics._aux_Mathlib_Analysis_Asymptotics_AsymptoticEquivalent___unexpand_Asymptotics_IsEquivalent_1
code: @[inherit_doc] scoped notation:50 u " ~[" l:50 "] " v:50 => Asymptotics.IsEquivalent l u v
goal: Lean.PrettyPrinter.Unexpander

full_name: Asymptotics.«_aux_Mathlib_Analysis_Asymptotics_AsymptoticEquivalent___macroRules_Asymptotics_term_~[_]__1»
code: @[inherit_doc] scoped notation:50 u " ~[" l:50 "] " v:50 => Asymptotics.IsEquivalent l u v
goal: Lean.Macro

full_name: Asymptotics.IsEquivalent.isLittleO
code: theorem IsEquivalent.isLittleO (h : u ~[l] v) : (u - v) =o[l] v 
goal: (u - v) =o[l] v

full_name: Asymptotics.IsEquivalent.isBigO
code: nonrec theorem IsEquivalent.isBigO (h : u ~[l] v) : u =O[l] v 
goal: u =O[l] v

full_name: Asymptotics.IsEquivalent.isBigO_symm
code: theorem IsEquivalent.isBigO_symm (h : u ~[l] v) : v =O[l] u 
goal: v =O[l] u

full_name: Asymptotics.IsEquivalent.isTheta
code: theorem IsEquivalent.isTheta (h : u ~[l] v) : u =Θ[l] v 
goal: u =Θ[l] v

full_name: Asymptotics.IsEquivalent.isTheta_symm
code: theorem IsEquivalent.isTheta_symm (h : u ~[l] v) : v =Θ[l] u 
goal: v =Θ[l] u

full_name: Asymptotics.IsEquivalent.refl
code: @[refl]
theorem IsEquivalent.refl : u ~[l] u 
goal: u ~[l] u

full_name: Asymptotics.IsEquivalent.symm
code: @[symm]
theorem IsEquivalent.symm (h : u ~[l] v) : v ~[l] u 
goal: v ~[l] u

full_name: Asymptotics.IsEquivalent.trans
code: @[trans]
theorem IsEquivalent.trans {l : Filter α} {u v w : α → β} (huv : u ~[l] v) (hvw : v ~[l] w) :
    u ~[l] w 
goal: u ~[l] w

full_name: Asymptotics.IsEquivalent.congr_left
code: theorem IsEquivalent.congr_left {u v w : α → β} {l : Filter α} (huv : u ~[l] v) (huw : u =ᶠ[l] w) :
    w ~[l] v 
goal: w ~[l] v

full_name: Asymptotics.IsEquivalent.congr_right
code: theorem IsEquivalent.congr_right {u v w : α → β} {l : Filter α} (huv : u ~[l] v) (hvw : v =ᶠ[l] w) :
    u ~[l] w 
goal: u ~[l] w

full_name: Asymptotics.isEquivalent_zero_iff_eventually_zero
code: theorem isEquivalent_zero_iff_eventually_zero : u ~[l] 0 ↔ u =ᶠ[l] 0 
goal: u ~[l] 0 ↔ u =ᶠ[l] 0

full_name: Asymptotics.isEquivalent_zero_iff_isBigO_zero
code: theorem isEquivalent_zero_iff_isBigO_zero : u ~[l] 0 ↔ u =O[l] (0 : α → β) 
goal: u ~[l] 0 ↔ u =O[l] 0

full_name: Asymptotics.isEquivalent_const_iff_tendsto
code: theorem isEquivalent_const_iff_tendsto {c : β} (h : c ≠ 0) :
    u ~[l] const _ c ↔ Tendsto u l (𝓝 c) 
goal: u ~[l] Function.const α c ↔ Filter.Tendsto u l (nhds c)

full_name: Asymptotics.IsEquivalent.tendsto_const
code: theorem IsEquivalent.tendsto_const {c : β} (hu : u ~[l] const _ c) : Tendsto u l (𝓝 c) 
goal: Filter.Tendsto u l (nhds c)

full_name: Asymptotics.IsEquivalent.tendsto_nhds
code: theorem IsEquivalent.tendsto_nhds {c : β} (huv : u ~[l] v) (hu : Tendsto u l (𝓝 c)) :
    Tendsto v l (𝓝 c) 
goal: Filter.Tendsto v l (nhds c)

full_name: Asymptotics.IsEquivalent.tendsto_nhds_iff
code: theorem IsEquivalent.tendsto_nhds_iff {c : β} (huv : u ~[l] v) :
    Tendsto u l (𝓝 c) ↔ Tendsto v l (𝓝 c) 
goal: Filter.Tendsto u l (nhds c) ↔ Filter.Tendsto v l (nhds c)

full_name: Asymptotics.IsEquivalent.add_isLittleO
code: theorem IsEquivalent.add_isLittleO (huv : u ~[l] v) (hwv : w =o[l] v) : u + w ~[l] v 
goal: u + w ~[l] v

full_name: Asymptotics.IsEquivalent.sub_isLittleO
code: theorem IsEquivalent.sub_isLittleO (huv : u ~[l] v) (hwv : w =o[l] v) : u - w ~[l] v 
goal: u - w ~[l] v

full_name: Asymptotics.IsLittleO.add_isEquivalent
code: theorem IsLittleO.add_isEquivalent (hu : u =o[l] w) (hv : v ~[l] w) : u + v ~[l] w 
goal: u + v ~[l] w

full_name: Asymptotics.IsLittleO.isEquivalent
code: theorem IsLittleO.isEquivalent (huv : (u - v) =o[l] v) : u ~[l] v 
goal: u ~[l] v

full_name: Asymptotics.IsEquivalent.neg
code: theorem IsEquivalent.neg (huv : u ~[l] v) : (fun x ↦ -u x) ~[l] fun x ↦ -v x 
goal: (fun x => -u x) ~[l] fun x => -v x

full_name: Asymptotics.isEquivalent_iff_exists_eq_mul
code: theorem isEquivalent_iff_exists_eq_mul :
    u ~[l] v ↔ ∃ (φ : α → β) (_ : Tendsto φ l (𝓝 1)), u =ᶠ[l] φ * v 
goal: u ~[l] v ↔ ∃ φ, ∃ (_ : Filter.Tendsto φ l (nhds 1)), u =ᶠ[l] φ * v

full_name: Asymptotics.IsEquivalent.exists_eq_mul
code: theorem IsEquivalent.exists_eq_mul (huv : u ~[l] v) :
    ∃ (φ : α → β) (_ : Tendsto φ l (𝓝 1)), u =ᶠ[l] φ * v 
goal: ∃ φ, ∃ (_ : Filter.Tendsto φ l (nhds 1)), u =ᶠ[l] φ * v

full_name: Asymptotics.isEquivalent_of_tendsto_one
code: theorem isEquivalent_of_tendsto_one (hz : ∀ᶠ x in l, v x = 0 → u x = 0)
    (huv : Tendsto (u / v) l (𝓝 1)) : u ~[l] v 
goal: u ~[l] v

full_name: Asymptotics.isEquivalent_of_tendsto_one'
code: theorem isEquivalent_of_tendsto_one' (hz : ∀ x, v x = 0 → u x = 0) (huv : Tendsto (u / v) l (𝓝 1)) :
    u ~[l] v 
goal: u ~[l] v

full_name: Asymptotics.isEquivalent_iff_tendsto_one
code: theorem isEquivalent_iff_tendsto_one (hz : ∀ᶠ x in l, v x ≠ 0) :
    u ~[l] v ↔ Tendsto (u / v) l (𝓝 1) 
goal: u ~[l] v ↔ Filter.Tendsto (u / v) l (nhds 1)

full_name: Asymptotics.IsEquivalent.smul
code: theorem IsEquivalent.smul {α E 𝕜 : Type*} [NormedField 𝕜] [NormedAddCommGroup E] [NormedSpace 𝕜 E]
    {a b : α → 𝕜} {u v : α → E} {l : Filter α} (hab : a ~[l] b) (huv : u ~[l] v) :
    (fun x ↦ a x • u x) ~[l] fun x ↦ b x • v x 
goal: (fun x => a x • u x) ~[l] fun x => b x • v x

full_name: Asymptotics.IsEquivalent.mul
code: theorem IsEquivalent.mul (htu : t ~[l] u) (hvw : v ~[l] w) : t * v ~[l] u * w 
goal: t * v ~[l] u * w

full_name: Asymptotics.IsEquivalent.inv
code: theorem IsEquivalent.inv (huv : u ~[l] v) : (fun x ↦ (u x)⁻¹) ~[l] fun x ↦ (v x)⁻¹ 
goal: (fun x => (u x)⁻¹) ~[l] fun x => (v x)⁻¹

full_name: Asymptotics.IsEquivalent.div
code: theorem IsEquivalent.div (htu : t ~[l] u) (hvw : v ~[l] w) :
    (fun x ↦ t x / v x) ~[l] fun x ↦ u x / w x 
goal: (fun x => t x / v x) ~[l] fun x => u x / w x

full_name: Asymptotics.IsEquivalent.tendsto_atTop
code: theorem IsEquivalent.tendsto_atTop [OrderTopology β] (huv : u ~[l] v) (hu : Tendsto u l atTop) :
    Tendsto v l atTop 
goal: Filter.Tendsto v l Filter.atTop

full_name: Asymptotics.IsEquivalent.tendsto_atTop_iff
code: theorem IsEquivalent.tendsto_atTop_iff [OrderTopology β] (huv : u ~[l] v) :
    Tendsto u l atTop ↔ Tendsto v l atTop 
goal: Filter.Tendsto u l Filter.atTop ↔ Filter.Tendsto v l Filter.atTop

full_name: Asymptotics.IsEquivalent.tendsto_atBot
code: theorem IsEquivalent.tendsto_atBot [OrderTopology β] (huv : u ~[l] v) (hu : Tendsto u l atBot) :
    Tendsto v l atBot 
goal: Filter.Tendsto v l Filter.atBot

full_name: Asymptotics.IsEquivalent.tendsto_atBot_iff
code: theorem IsEquivalent.tendsto_atBot_iff [OrderTopology β] (huv : u ~[l] v) :
    Tendsto u l atBot ↔ Tendsto v l atBot 
goal: Filter.Tendsto u l Filter.atBot ↔ Filter.Tendsto v l Filter.atBot

full_name: Filter.EventuallyEq.isEquivalent
code: theorem Filter.EventuallyEq.isEquivalent {u v : α → β} (h : u =ᶠ[l] v) : u ~[l] v 
goal: u ~[l] v

full_name: Filter.EventuallyEq.trans_isEquivalent
code: @[trans]
theorem Filter.EventuallyEq.trans_isEquivalent {f g₁ g₂ : α → β} (h : f =ᶠ[l] g₁)
    (h₂ : g₁ ~[l] g₂) : f ~[l] g₂ 
goal: f ~[l] g₂

full_name: Asymptotics.transIsEquivalentIsEquivalent
code: instance transIsEquivalentIsEquivalent :
    @Trans (α → β) (α → β) (α → β) (IsEquivalent l) (IsEquivalent l) (IsEquivalent l) 
goal: Trans (Asymptotics.IsEquivalent l) (Asymptotics.IsEquivalent l) (Asymptotics.IsEquivalent l)

full_name: Asymptotics.transEventuallyEqIsEquivalent
code: instance transEventuallyEqIsEquivalent :
    @Trans (α → β) (α → β) (α → β) (EventuallyEq l) (IsEquivalent l) (IsEquivalent l) 
goal: Trans l.EventuallyEq (Asymptotics.IsEquivalent l) (Asymptotics.IsEquivalent l)

full_name: Asymptotics.IsEquivalent.trans_eventuallyEq
code: @[trans]
theorem IsEquivalent.trans_eventuallyEq {f g₁ g₂ : α → β} (h : f ~[l] g₁)
    (h₂ : g₁ =ᶠ[l] g₂) : f ~[l] g₂ 
goal: f ~[l] g₂

full_name: Asymptotics.transIsEquivalentEventuallyEq
code: instance transIsEquivalentEventuallyEq :
    @Trans (α → β) (α → β) (α → β) (IsEquivalent l) (EventuallyEq l) (IsEquivalent l) 
goal: Trans (Asymptotics.IsEquivalent l) l.EventuallyEq (Asymptotics.IsEquivalent l)

full_name: Asymptotics.IsEquivalent.trans_isBigO
code: @[trans]
theorem IsEquivalent.trans_isBigO {f g₁ : α → β} {g₂ : α → β₂} (h : f ~[l] g₁) (h₂ : g₁ =O[l] g₂) :
    f =O[l] g₂ 
goal: f =O[l] g₂

full_name: Asymptotics.transIsEquivalentIsBigO
code: instance transIsEquivalentIsBigO :
    @Trans (α → β) (α → β) (α → β₂) (IsEquivalent l) (IsBigO l) (IsBigO l) 
goal: Trans (Asymptotics.IsEquivalent l) (Asymptotics.IsBigO l) (Asymptotics.IsBigO l)

full_name: Asymptotics.IsBigO.trans_isEquivalent
code: @[trans]
theorem IsBigO.trans_isEquivalent {f : α → β₂} {g₁ g₂ : α → β} (h : f =O[l] g₁) (h₂ : g₁ ~[l] g₂) :
    f =O[l] g₂ 
goal: f =O[l] g₂

full_name: Asymptotics.transIsBigOIsEquivalent
code: instance transIsBigOIsEquivalent :
    @Trans (α → β₂) (α → β) (α → β) (IsBigO l) (IsEquivalent l) (IsBigO l) 
goal: Trans (Asymptotics.IsBigO l) (Asymptotics.IsEquivalent l) (Asymptotics.IsBigO l)

full_name: Asymptotics.IsEquivalent.trans_isLittleO
code: @[trans]
theorem IsEquivalent.trans_isLittleO {f g₁ : α → β} {g₂ : α → β₂} (h : f ~[l] g₁)
    (h₂ : g₁ =o[l] g₂) : f =o[l] g₂ 
goal: f =o[l] g₂

full_name: Asymptotics.transIsEquivalentIsLittleO
code: instance transIsEquivalentIsLittleO :
    @Trans (α → β) (α → β) (α → β₂) (IsEquivalent l) (IsLittleO l) (IsLittleO l) 
goal: Trans (Asymptotics.IsEquivalent l) (Asymptotics.IsLittleO l) (Asymptotics.IsLittleO l)

full_name: Asymptotics.IsLittleO.trans_isEquivalent
code: @[trans]
theorem IsLittleO.trans_isEquivalent {f : α → β₂} {g₁ g₂ : α → β} (h : f =o[l] g₁)
    (h₂ : g₁ ~[l] g₂) : f =o[l] g₂ 
goal: f =o[l] g₂

full_name: Asymptotics.transIsLittleOIsEquivalent
code: instance transIsLittleOIsEquivalent :
    @Trans (α → β₂) (α → β) (α → β) (IsLittleO l) (IsEquivalent l) (IsLittleO l) 
goal: Trans (Asymptotics.IsLittleO l) (Asymptotics.IsEquivalent l) (Asymptotics.IsLittleO l)

full_name: Asymptotics.IsEquivalent.trans_isTheta
code: @[trans]
theorem IsEquivalent.trans_isTheta {f g₁ : α → β} {g₂ : α → β₂} (h : f ~[l] g₁)
    (h₂ : g₁ =Θ[l] g₂) : f =Θ[l] g₂ 
goal: f =Θ[l] g₂

full_name: Asymptotics.transIsEquivalentIsTheta
code: instance transIsEquivalentIsTheta :
    @Trans (α → β) (α → β) (α → β₂) (IsEquivalent l) (IsTheta l) (IsTheta l) 
goal: Trans (Asymptotics.IsEquivalent l) (Asymptotics.IsTheta l) (Asymptotics.IsTheta l)

full_name: Asymptotics.IsTheta.trans_isEquivalent
code: @[trans]
theorem IsTheta.trans_isEquivalent {f : α → β₂} {g₁ g₂ : α → β} (h : f =Θ[l] g₁)
    (h₂ : g₁ ~[l] g₂) : f =Θ[l] g₂ 
goal: f =Θ[l] g₂

full_name: Asymptotics.transIsThetaIsEquivalent
code: instance transIsThetaIsEquivalent :
    @Trans (α → β₂) (α → β) (α → β) (IsTheta l) (IsEquivalent l) (IsTheta l) 
goal: Trans (Asymptotics.IsTheta l) (Asymptotics.IsEquivalent l) (Asymptotics.IsTheta l)