Zulip Chat Archive

Stream: Is there code for X?

Topic: continuousAt_iff_isLittleO


Alex Kontorovich (Jan 04 2024 at 23:33):

Is this missing from the library? (It's easy to chain together, but is it worth adding separately?)

import Mathlib

open Topology

theorem continuousAt_iff_isLittleO {f :   } {z : } :
    (ContinuousAt f z)  (fun w  f w - f z) =o[𝓝 z] (1 :   ) := by
  sorry

Alex Kontorovich (Jan 04 2024 at 23:33):

(Of course more generally than ℂ...)

Alex Kontorovich (Jan 04 2024 at 23:39):

Also something like this?

import Mathlib

theorem Asymptotics.tendsto_zero_iff_isLittleO {α : Type*} {E : Type*} [NormedRing E]
    {f : α  E} {l : Filter α} : (Filter.Tendsto f l (nhds 0))  f =o[l] (1 : α  E) := by
  sorry

Michael Stoll (Jan 05 2024 at 11:14):

I was looking for very similar statements just yesterday, so +1 from me!

Anatole Dedecker (Jan 05 2024 at 12:27):

Does docs#Asymptotics.isLittleO_one_iff do the trick?

Alex Kontorovich (Jan 05 2024 at 15:24):

Argh... I wish exact? could've found it... :(

Alex Kontorovich (Jan 05 2024 at 15:27):

How about the other one, is this worth adding?

import Mathlib

open Topology

theorem continuousAt_iff_isLittleO {f :   } {z : } :
    (ContinuousAt f z)  (fun w  f w - f z) =o[𝓝 z] (1 :   ) := by
  convert (Asymptotics.isLittleO_one_iff (f' := fun (w:) => f w - f z) (l := 𝓝 z) (F := )).symm
  exact Iff.symm tendsto_sub_nhds_zero_iff

Alex Kontorovich (Jan 05 2024 at 15:40):

Is there a bug in this?

@[simp]
theorem Asymptotics.isLittleO_one_iff{α : Type u_1} (F : Type u_4) {E' : Type u_6} [Norm F] [SeminormedAddCommGroup E'] {f' : α  E'} {l : Filter α} [One F] [NormOneClass F] :
(f' =o[l] fun (_x : α) => 1)  Filter.Tendsto f' l (nhds 0)

What does F have to do with anything? The map f' goes from α → E', the filter is on α; why is it asking me about F?...

Jireh Loreaux (Jan 05 2024 at 15:42):

That's 1 : F

Jireh Loreaux (Jan 05 2024 at 15:43):

if you click the source code you'll see it.

Alex Kontorovich (Jan 05 2024 at 15:44):

Ah, thanks. So I can set F := E' in applications... I guess that level of generality makes sense...

Jireh Loreaux (Jan 05 2024 at 15:44):

That's also the reason F is an explicit argument (i.e., the RHS of the iff doesn't reference it).

Alex Kontorovich (Jan 05 2024 at 15:51):

So is this a good thing to add?

import Mathlib

open Topology

namespace Asymptotics

theorem continuousAt_iff_isLittleO {α : Type*} {E : Type*} [NormedRing E] [NormOneClass E]
    [TopologicalSpace α] {f : α  E} {x : α} :
    (ContinuousAt f x)  (fun (y : α)  f y - f x) =o[𝓝 x] (fun (_ : α)  (1 : E)) := by
  convert (Asymptotics.isLittleO_one_iff (f' := fun (y : α) => f y - f x) (l := 𝓝 x) (F := E)).symm
  exact Iff.symm tendsto_sub_nhds_zero_iff

end Asymptotics

Jireh Loreaux (Jan 05 2024 at 15:57):

Looks good. I can't find it.

Jireh Loreaux (Jan 05 2024 at 15:59):

Potentially just use a generic constant instead of 1 for convenience (or add both versions).


Last updated: May 02 2025 at 03:31 UTC