Zulip Chat Archive

Stream: maths

Topic: generalizing deriv to TVS


Yury G. Kudryashov (May 18 2023 at 00:14):

It seems that I've missed this thread in 2022. I suggest that we redefine docs#fderiv in similar terms. What do you think?

Yury G. Kudryashov (May 18 2023 at 00:35):

@Sebastien Gouezel @Heather Macbeth @Anatole Dedecker :up:

Yury G. Kudryashov (May 18 2023 at 00:40):

We can redefine has_fderiv_at f f' a as βˆ€ (U ∈ 𝓝 0) (r' β‰  0) s, is_vonN_bounded π•œ s β†’ βˆ€αΆ  r : π•œ in 𝓝[β‰ ] 0, maps_to (Ξ» x, f (a + x) - f a - f' x) (r β€’ s) (r' β€’ r β€’ U) (not tested, may contain typos)

Yury G. Kudryashov (May 18 2023 at 00:57):

BTW, we can redefine topology on multilinear forms in a similar way.

Yury G. Kudryashov (May 18 2023 at 00:58):

Then many facts will work without norms.

Yury G. Kudryashov (May 18 2023 at 00:58):

(though proofs will be harder)

Moritz Doll (May 18 2023 at 01:00):

I think we had a similar discussion before. I am generally in favor of this, however there might be subtleties when it comes to higher derivatives. The only reference for something like this I know is Hamilton's 1982 paper on Nash-Moser theory and he uses directional derivatives and I don't know whether his smoothness is the same as your proposed smoothness (which would make mathlib's smooth FrΓ©chet manifolds weaker).

Yury G. Kudryashov (May 18 2023 at 01:09):

I suggest that the following plan (each step is 1 or more PRs):

  1. Drop has_fderiv_at_filter, leave only has_fderiv_within_at and has_fderiv_at (defined as has_fderiv_within_at ... univ).
  2. Redefine has_fderiv_within_at for topological vector spaces. Prove equivalence to the old definition, leave all theorems as is.
  3. Gradually migrate theorems to topological vector spaces.

Sebastien Gouezel (May 18 2023 at 07:52):

Do you have an application in mind? I have no objection in theory, but I am not sure I see the point yet.

Eric Wieser (May 18 2023 at 08:00):

I have one; I can't talk about derivatives of matrix functions because to even state the results I have to choose a norm

Yury G. Kudryashov (May 18 2023 at 08:00):

This :up: and some other finite dimensional spaces.

Eric Wieser (May 18 2023 at 08:01):

So right now if I wanted to write down how derivatives (by a scalar) distribute across a matrix product, I need to repeat the lemma for every currently-available norm on matrices (I think we have 3 right now via local attribute [instance] and nothing globally)

Sebastien Gouezel (May 18 2023 at 08:05):

Your lemmas should be true for any norm on matrices, so why not write them right away in this generality?

Yury G. Kudryashov (May 18 2023 at 08:08):

What other examples of "canonical topology, no canonical norm" do we have?

Yury G. Kudryashov (May 18 2023 at 08:14):

This came up in a discussion with @Heather Macbeth about tensor products of vector bundles. But in that case there is no canonical topology either.

Eric Wieser (May 18 2023 at 08:25):

Sebastien Gouezel said:

Your lemmas should be true for any norm on matrices, so why not write them right away in this generality?

How do you suggest I state something like

lemma has_deriv_at.matrix_mul (X : R β†’ matrix m n R) (Y : R β†’ matrix n p R)
  (X' : matrix m n R) (Y' : matrix n p R) (r : R)
  (hX : has_deriv_at X X' r) (hY : has_deriv_at Y Y' r) :
  has_deriv_at (λ a, (X a) ⬝ (Y a)) (X' ⬝ Y r + X r ⬝ Y') r :=
begin

Sebastien Gouezel (May 18 2023 at 08:26):

Can you add some typeclasses here? You need some topology somewhere.

Eric Wieser (May 18 2023 at 08:27):

Sure, here's the #mwe, extracted from lean-matrix-cookbook

import analysis.matrix

variables {ΞΉ : Type*} {R : Type*} {m n p : Type*}
variables [fintype m] [fintype n] [fintype p]
variables [decidable_eq m] [decidable_eq n] [decidable_eq p]
variables [nontrivially_normed_field R]

open matrix
open_locale matrix

local attribute [instance] matrix.normed_add_comm_group matrix.normed_space

lemma has_deriv_at_matrix {f : R β†’ matrix m n R} {r : R} {f' : matrix m n R} :
  has_deriv_at f f' r ↔ (βˆ€ i j, has_deriv_at (Ξ» r, f r i j) (f' i j) r) :=
by simp_rw has_deriv_at_pi

lemma has_deriv_at.matrix_mul (X : R β†’ matrix m n R) (Y : R β†’ matrix n p R)
  (X' : matrix m n R) (Y' : matrix n p R) (r : R)
  (hX : has_deriv_at X X' r) (hY : has_deriv_at Y Y' r) :
  has_deriv_at (λ a, (X a) ⬝ (Y a)) (X' ⬝ Y r + X r ⬝ Y') r :=
begin
  rw has_deriv_at_matrix at ⊒ hX hY,
  intros i j,
  simp only [mul_apply, pi.add_apply, ←finset.sum_add_distrib],
  exact has_deriv_at.sum (Ξ» k hk, (hX _ _).mul (hY _ _)),
end

Eric Wieser (May 18 2023 at 08:28):

But I cheated, this is only about matrix.normed_space and not the other norms

Anatole Dedecker (May 18 2023 at 08:28):

I’ve spent some time a year ago thinking about how to get meaningful differentiability (which really means a good notion of docs#is_o) without any norm, specifically for the case of finite dimensional vector spaces where we don’t want to impose the norm, but I didn’t think about using docs#is_vonN_bounded for that. This is interesting, do you have any reference ? (Or maybe this is well known and I’m just not aware of it)

Eric Wieser (May 18 2023 at 08:28):

I can't write [normed_add_comm_group (matrix m n R)] [normed_space R (matrix m n R)] because then I get a nonsense addition on the matrices that might not be elementwise

Sebastien Gouezel (May 18 2023 at 08:30):

In this generality, it's definitely not true for all norms (since norms are not all equivalent as you're not assuming your field is complete).

Sebastien Gouezel (May 18 2023 at 08:31):

But I agree I don't see a neat way to write it for all norms even if your field is nice, because normed_add_comm_group can't be expressed with a mixin.

Sebastien Gouezel (May 18 2023 at 08:32):

However, I wouldn't see a way to write it for all topologies either, for the same reason.

Anatole Dedecker (May 18 2023 at 08:33):

One case I’ve heard about a few weeks ago is when you have docs#with_seminorms, then it makes perfect sense to say that docs#is_o means "is_o with respect to each seminorm" and then I think that agrees with the version Yury gave

Sebastien Gouezel (May 18 2023 at 08:33):

Scratch that, for topologies we can definitely use mixins.

Anatole Dedecker (May 18 2023 at 08:34):

For matrices that’s no problem anyway, we have docs#matrix.topological_space

Yury G. Kudryashov (May 18 2023 at 08:44):

Anatole Dedecker said:

I’ve spent some time a year ago thinking about how to get meaningful differentiability (which really means a good notion of docs#is_o) without any norm, specifically for the case of finite dimensional vector spaces where we don’t want to impose the norm, but I didn’t think about using docs#is_vonN_bounded for that. This is interesting, do you have any reference ? (Or maybe this is well known and I’m just not aware of it)

I don't know about references. I just made it up.

Yury G. Kudryashov (May 18 2023 at 08:44):

Possibly, there are better ways to generalize it to topological vector spaces - I don't know.

Eric Wieser (May 18 2023 at 08:51):

Sebastien Gouezel said:

But I agree I don't see a neat way to write it for all norms even if your field is nice, because normed_add_comm_group can't be expressed with a mixin.

I attempted to change it to be a mixin in #18462, but that's lost to the porting tide now (and wasn't looking promising performance-wise)

Oliver Nash (May 18 2023 at 09:01):

I've occasionally mused about generalising fderiv in another direction, where we weaken the module structure on the domain so that the axioms smul_add and add_smul are only required to hold for sufficiently small scalars. The motivation is that the circle (or tori) possess such scalar actions so we could speak of smooth functions on them without having to regard them as manifolds.

Oliver Nash (May 18 2023 at 09:01):

(I'm not seriously suggesting we actually do this.)

Tomas Skrivan (Jun 07 2023 at 16:52):

Why is deriv defined from a normed field to a normed vector space? For example this wiki article talks about well defined and well behaved derivative from finite dimensional spaces to a general topological vector space. Is this because deriv is defined through fderiv?


edit: this was originally the first post in this thread but earlier discussion from a different thread was moved here. Also those two threads got interleaved so it is a bit incoherent right now ...

Jireh Loreaux (Jun 07 2023 at 17:31):

I think there was a recent discussion about generalizing both, but I'm on mobile so I can't find it now.

Tomas Skrivan (Jun 07 2023 at 17:39):

A link to such discussion would be appreciated, I did some searching but I couldn't find any relevant discussions.

Eric Wieser (Jun 07 2023 at 17:53):

Maybe this thread?

Yury G. Kudryashov (Jun 07 2023 at 18:39):

Probably, we should generalize it but this can't be done before the port is over.

Tomas Skrivan (Jun 07 2023 at 20:06):

Waiting for the port to be done makes total sense. I was curious what are the thoughts on this topic as I need the generalization for my project.

Anatole Dedecker (Jun 07 2023 at 20:31):

Since this thread has been linked from somewhere else, I just want to add that the second part of this discussions is not really related to the original topic: unless I’m missing something obvious, the topology on continuous linear maps does not matter here

Tomas Skrivan (Jun 07 2023 at 20:46):

I initialized the other thread and my motivation for generalizing derivative and differentiability is to allow for isomorphism: C∞(R2,R)β‰…C∞(R,C∞(R,R))C^\infty(\mathbb{R}^2, \mathbb{R}) \cong C^\infty(\mathbb{R}, C^\infty(\mathbb{R}, \mathbb{R})) which requires to define suitable topology on C∞(R,R)C^\infty(\mathbb{R}, \mathbb{R}).

After this is done, I want to do some variational calculus calculations.

Kevin Buzzard (Jun 07 2023 at 20:49):

What topology are you proposing to put on C∞(R,R)C^\infty(\R,\R) to make that assertion true?

Tomas Skrivan (Jun 07 2023 at 20:56):

The topology of uniform convergence on compact sets of each derivative separately, see wiki on convenient vector spaces.

Tomas Skrivan (Jun 07 2023 at 20:58):

You can define such topology for any locally convex TVS with some mild completeness condition and you have a general isomoprhism C∞(XΓ—Y,Z)β‰…C∞(X,C∞(Y,Z))C^\infty(X\times Y, Z) \cong C^\infty(X, C^\infty(Y, Z))

Kevin Buzzard (Jun 07 2023 at 21:02):

Oh nice! I could see that it would have to be subtle but I didn't know the answer.

Tomas Skrivan (Jun 07 2023 at 21:03):

It is kind of messed up because you end up with functions that are differentiable but not continuous.

Yury G. Kudryashov (Jun 07 2023 at 21:04):

What are your applications?

Tomas Skrivan (Jun 07 2023 at 21:04):

(deleted)

Yury G. Kudryashov (Jun 07 2023 at 21:05):

Let me move the second part of this thread to the new one.

Tomas Skrivan (Jun 07 2023 at 21:05):

I'm working on symbolic and automatic differentiation for SciLean and if I hope to have it verified I need this generalization of derivative.

Notification Bot (Jun 07 2023 at 21:05):

40 messages were moved here from #maths > Topology on continuous_maps without a norm by Yury G. Kudryashov.

Yury G. Kudryashov (Jun 07 2023 at 21:07):

Now the history looks a bit strange ;)

Tomas Skrivan (Jun 07 2023 at 21:09):

ohh well :man_shrugging: I added a small explanation to my first post at least.

Anatole Dedecker (Jun 07 2023 at 21:42):

To get back to your original question, I think the reason we don't have this easy generalization (talking about deriv here, not fderiv) is indeed because we tend to see deriv as the one-dimensional FrΓ©chet derivative instead of the one-dimensional GΓ’teaux dΓ©rivative. Of course they give the same notion, but because we want the APIs of fderiv and deriv to be similar we probably miss some easy generalizations of deriv.

Yury G. Kudryashov (Jun 07 2023 at 22:39):

But we can generalize fderiv too (see above)

Yury G. Kudryashov (Jun 07 2023 at 22:40):

So, the answer is: at the time derivatives were added to mathlib (~4 years ago), nobody cared about this generality.

Anatole Dedecker (Jun 07 2023 at 22:47):

I agree, my point (and I think Tomas' original message too) was about the fact that the generalization to TVS of deriv is way easier: you can just take the usual limit of (f (x + h) - f x) / h and you don't need any more machinery. But if we make the generalization you suggest (and check that it is indeed a strict generalization of this) then that's even better.

Tomas Skrivan (Jun 07 2023 at 22:48):

@Yury G. Kudryashov I'm not familiar with von Neumann bounded sets. Do you know the relationship between your suggested generalization and differentiability between convenient vector spaces?

Yury G. Kudryashov (Jun 07 2023 at 22:56):

What definition are you talking about? I don't know any references on the subject. I made up the definition above in some conversation.

Yury G. Kudryashov (Jun 07 2023 at 22:57):

Wikipedia says that it is possible to generalize derivatives to TVS "in muliple ways" but doesn't give references.

Yury G. Kudryashov (Jun 07 2023 at 23:04):

I think that my definition should be equivalent to https://en.wikipedia.org/wiki/Fr%C3%A9chet_derivative#Generalization_to_topological_vector_spaces

Yury G. Kudryashov (Jun 07 2023 at 23:07):

UPD: my definition is a bit different but should be equivalent for "nice" TVS domains (probably, locally bounded).

Yury G. Kudryashov (Jun 07 2023 at 23:09):

I guess, we should use the one from Wikipedia instead. UPD: but we need to generalize it to any normed field instead of real numbers.

Yury G. Kudryashov (Jun 07 2023 at 23:11):

Should we add a version of docs4#Asymptotics.IsLittleO for TVS?

Yury G. Kudryashov (Jun 07 2023 at 23:12):

We can't generalize this definition becase it doesn't require a vector space structure; some properties work for a normed group.

Eric Wieser (Jun 07 2023 at 23:12):

image.png

:angry:

Eric Wieser (Jun 07 2023 at 23:13):

What would the TVS version look like?

Yury G. Kudryashov (Jun 07 2023 at 23:14):

We need special support for irreducible_def in doc-gen4

Reid Barton (Jun 07 2023 at 23:14):

Eric Wieser said:

What would the TVS version look like?

Probably it would look the same

Eric Wieser (Jun 07 2023 at 23:14):

I meant, what would the lean definition look like, not the docs!

Yury G. Kudryashov (Jun 07 2023 at 23:16):

/me is thinking

Yury G. Kudryashov (Jun 07 2023 at 23:29):

Not tested:

import Mathlib.Analysis.Asymptotics.Asymptotics

open Set Filter Topology Pointwise

def IsLittleOTVS (π•œ : Type _) [NontriviallyNormedField π•œ] {Ξ± E F : Type _}
    [AddCommGroup E] [Module π•œ E] [TopologicalSpace E] [TopologicalAddGroup E] [ContinuousSMul π•œ E]
    [AddCommGroup F] [Module π•œ F] [TopologicalSpace F] [TopologicalAddGroup F] [ContinuousSMul π•œ F]
    (f : Ξ± β†’ E) (g : Ξ± β†’ F) (l : Filter Ξ±) : Prop :=
    βˆ€ V ∈ 𝓝 (0 : F), βˆƒ U ∈ 𝓝 (0 : E), βˆƒ (Ο† : Ξ± β†’ ℝ), Tendsto Ο† l (𝓝[>] 0) ∧
      βˆ€αΆ  x in l, βˆ€ a b : π•œ, β€–aβ€– ≀ Ο† x * β€–bβ€– β†’ g x ∈ b β€’ V β†’ f x ∈ a β€’ U

Yury G. Kudryashov (Jun 07 2023 at 23:32):

Trying to prove

theorem isLittleOTVS_iff_isLittleO (π•œ : Type _) [NontriviallyNormedField π•œ] {Ξ± E F : Type _}
    [NormedAddCommGroup E] [NormedSpace π•œ E] [NormedAddCommGroup F] [NormedSpace π•œ F]
    {f : Ξ± β†’ E} {g : Ξ± β†’ F} {l : Filter Ξ±} :
    IsLittleOTVS π•œ f g l ↔ f =o[l] g := by

Yury G. Kudryashov (Jun 07 2023 at 23:41):

This :up: definition is wrong. Thinking.

Yury G. Kudryashov (Jun 07 2023 at 23:41):

You can always take U = univ

Yury G. Kudryashov (Jun 07 2023 at 23:41):

(no, you can almost always take a = 0 to fail the definition)

Tomas Skrivan (Jun 07 2023 at 23:56):

Yury G. Kudryashov said:

What definition are you talking about? I don't know any references on the subject. I made up the definition above in some conversation.

I would say that f : E β†’ F is differentiable at x if for every curve Ξ³ : π•œ β†’ E differentiable at 0 and Ξ³ 0 = x the curve f ∘ Ξ³ : π•œ β†’ F is differentiable at 0.

Is that reasonable generalization? If you require smoothness in the definition then based on wiki this should recover any reasonable definition of smoothness for Frechet spaces.

Yury G. Kudryashov (Jun 08 2023 at 00:06):

This is not a generalization of Frechet derivative.

Yury G. Kudryashov (Jun 08 2023 at 00:07):

For a normed vector space, it is not equivalent to docs4#HasFDerivAt

Tomas Skrivan (Jun 08 2023 at 00:10):

I see, then I do not understand these things properly. Why is not equivalent? Is there a counter example?

Yury G. Kudryashov (Jun 08 2023 at 00:17):

The problem is with "if you require smoothness"

Yury G. Kudryashov (Jun 08 2023 at 00:17):

First of all, your definition does not involve any continuous linear map.

Yury G. Kudryashov (Jun 08 2023 at 00:21):

I think that f(x,y)=x3x2+y2f(x, y)=\frac{x^3}{x^2+y^2} is differentiable at zero in the sense of curves but it is not Frechet differentiable.

Tomas Skrivan (Jun 08 2023 at 00:27):

Ahh right, it is mentioned here https://ncatlab.org/nlab/show/Boman%27s+theorem

My final suggestion would be:
f : E β†’ F is differentiable at x if for every Ξ³ : π•œΓ—π•œ β†’ E differentiable at 0 and Ξ³ 0 = x the f ∘ Ξ³ : π•œΓ—π•œ β†’ F is differentiable at 0.

but I really do not understand these things in depth, so I should stop suggesting anything further :)

Yury G. Kudryashov (Jun 08 2023 at 05:23):

I proved that the following:

import Mathlib.Analysis.Asymptotics.Asymptotics
import Mathlib.Analysis.SpecificLimits.Basic

open Set Filter Topology Pointwise Asymptotics Metric

section TVS

variable  (π•œ : Type _) [NontriviallyNormedField π•œ] {Ξ± E F : Type _}
    [AddCommGroup E] [Module π•œ E] [TopologicalSpace E] [TopologicalAddGroup E] [ContinuousSMul π•œ E]
    [AddCommGroup F] [Module π•œ F] [TopologicalSpace F] [TopologicalAddGroup F] [ContinuousSMul π•œ F]

def IsLittleOTVS (f : Ξ± β†’ E) (g : Ξ± β†’ F) (l : Filter Ξ±) : Prop :=
  βˆ€ U ∈ 𝓝 (0 : E), βˆƒ V ∈ 𝓝 (0 : F), βˆ€ c : ℝ, 0 < c β†’
    βˆ€αΆ  x in l, βˆ€ b : π•œ, b β‰  0 β†’ g x ∈ b β€’ V β†’ βˆƒ a : π•œ, β€–aβ€– ≀ c * β€–bβ€– ∧ f x ∈ a β€’ U

end TVS

theorem isLittleOTVS_iff_isLittleO (π•œ : Type _) [NontriviallyNormedField π•œ] {Ξ± E F : Type _}
    [SeminormedAddCommGroup E] [NormedSpace π•œ E] [SeminormedAddCommGroup F] [NormedSpace π•œ F]
    {f : Ξ± β†’ E} {g : Ξ± β†’ F} {l : Filter Ξ±} :
    IsLittleOTVS π•œ f g l ↔ f =o[l] g := by
  _

The proof is in branch4#YK-isO-TVS

Anatole Dedecker (Jun 08 2023 at 11:50):

@Tomas Skrivan We will definitely need to have different higher-dimensional-domain derivatives at some point (or rather of differentiability I guess, since when they are defined they all agree) anyway, the key point being that fderiv should keep being the usual one in the case of normed spaces. That said, I would guess and hope that we can stay with only one version in the case of one dimensional domain.

Tomas Skrivan (Jun 08 2023 at 12:16):

One thing I do not understand is what is the motivation to have Frechet derivative as the base definition? If a function has Frechet derivative then it has Gateaux derivative. Why not have Gateaux derivative as the basic definition and have theorem that on nice spaces and under nice differentiability conditions it is Frechet derivative.

Sebastien Gouezel (Jun 08 2023 at 12:22):

You want a notion that has nice properties, in the sense that it makes it possible to prove nice theorems. For instance the local inverse theorem, which says that if the derivative is invertible then the map is locally invertible. Or the implicit function theorem. These are true for the FrΓ©chet derivative, but not for the Gateaux derivative. In a sense, Gateaux derivative is a nice gadget, but not useful to prove theorems. While FrΓ©chet derivative is the fundamental notion.

Eric Wieser (Jun 08 2023 at 12:37):

Wikipedia says:

If F is FrΓ©chet differentiable, then it is also Gateaux differentiable, and its FrΓ©chet and Gateaux derivatives agree

If this is actually true in general and not just for the cases wikipedia cares about, then presumably the answer to "Why not have Gateaux derivative as the basic definition" is "it's convenient to have the derivative fderiv bundled as a multilinear map"?

Sebastien Gouezel (Jun 08 2023 at 12:49):

You could have a definition of a derivative as "if there is a continuous linear map which gives the directional derivative in every direction, then use it, and otherwise take 0". This would be the Gateaux derivative in mathlib conventions. And it would be essentially useless because it doesn't have nice properties without further assumptions which amount to saying that the function is in fact FrΓ©chet-differentiable. For instance, a function which is Gateaux-differentiable at a point doesn't have to be continuous there. Or, the composition of two Gateaux-differentiable maps is not in general Gateaux-differentiable. It's just a bad notion from the mathematical point of view.

Yury G. Kudryashov (Jun 08 2023 at 13:11):

Inverse theorem needs strict differentiability, not only FrΓ©chet.

Yury G. Kudryashov (Jun 08 2023 at 13:14):

You can define Gateaux derivative using FrΓ©chet:

def HasDirDerivAt (f : E β†’ F) (f' : F) (v x : E) : Prop :=
  HasDerivAt (f ∘ lineMap x (v + x) : π•œ β†’ F) f' 0

def dirDeriv (f : E β†’ F) (v x : E) : F :=
  deriv (f ∘ lineMap x (v + x) : π•œ β†’ F) 0

def GateauxDifferentiableAt (f : E β†’ F) (x : E) : Prop :=
  βˆ€ v, DifferentiableAt π•œ (f ∘ lineMap x (v + x) : π•œ β†’ F) 0

Tomas Skrivan (Jun 08 2023 at 13:24):

I think the only thing I'm suggesting is to have deriv and it's bundled version fderiv as general as possible and then of course have theorems about them with different notions of differentiability.

I would like to formalize Convenient Vector spaces, define a new notion of differentiability and reuse mathlib's deriv but I can't do that as it is restricted to normed spaces.

Sebastien Gouezel (Jun 08 2023 at 13:32):

This is a very niche and exotic notion. Are you sure you really need that for your formalization, instead of sticking with more mainstream and established mathematics?

Tomas Skrivan (Jun 08 2023 at 14:29):

I want to formalize computations in variational calculus, in particular calculations commonly done by physicists in mechanics or thermodynamics.

Using lebesgue/sobolev spaces is annoying as you have to deal with integrability which is completely unrelated to why you would do those computations.

I really want to work with smooth functions, but they do not behave well w.r.t. standard notions of vector spaces.

That is why I want to use convenient vector spaces, I get smooth functions and cartesian closed category which simplifies lot of arguments.

Yury G. Kudryashov (Jun 08 2023 at 15:01):

@Tomas Skrivan Once we generalize FrΓ©chet derivatives, you can define Gateaux derivatives as above, if you need them.

Yury G. Kudryashov (Jun 08 2023 at 15:59):

What do we need to assume about topology on the (co)domain to have IsLittleOTVS.add? The problem is that we can choose different as.

Jireh Loreaux (Jun 08 2023 at 16:15):

If π•œ were ℝ there would be no problem right? Because then if you get a₁ and aβ‚‚ for the individuals, you can take a := βˆ₯a₁βˆ₯ + βˆ₯aβ‚‚βˆ₯ for the sum. Just trying to make sure I understand the issue. (In my head the problem isn't that you have two as, it's that you don't know how to make them "point in the same direction")

Yury G. Kudryashov (Jun 08 2023 at 17:07):

Yes.

Yury G. Kudryashov (Jun 08 2023 at 17:15):

Probably, we should require that nhds of zero has a basis of docs4#Balanced sets.

Jireh Loreaux (Jun 08 2023 at 17:21):

It's still not clear how to pick a though.

Jireh Loreaux (Jun 08 2023 at 17:22):

Because you could have say a₁ = (1 : β„‚) and aβ‚‚ = Complex.I.

Yury G. Kudryashov (Jun 08 2023 at 20:13):

I think that Balanced should fix this but I don't have time now. Maybe, tomorrow.

Anatole Dedecker (Jun 08 2023 at 22:39):

Yury G. Kudryashov said:

Probably, we should require that nhds of zero has a basis of docs4#Balanced sets.

This is always true, see docs4#nhds_basis_balanced

Anatole Dedecker (Jun 08 2023 at 23:46):

I haven't spent enough times thinking about this to be sure about what I say, but I think that another reasonable definition would be the following:

import Mathlib.Analysis.Asymptotics.Asymptotics
import Mathlib.Analysis.SpecificLimits.Basic
import Mathlib.Analysis.Convex.Gauge

open Set Filter Topology Pointwise Asymptotics Metric
open scoped ENNReal

section TVS

variable  (π•œ : Type _) [NontriviallyNormedField π•œ] {Ξ± E F : Type _}
    [AddCommGroup E] [Module π•œ E] [TopologicalSpace E] [TopologicalAddGroup E] [ContinuousSMul π•œ E]
    [AddCommGroup F] [Module π•œ F] [TopologicalSpace F] [TopologicalAddGroup F] [ContinuousSMul π•œ F]

-- I would argue this should be the general replacement for `gauge`, but I could be wrong
noncomputable def gauge' (s : Set E) (x : E) : ℝβ‰₯0∞ := sInf ((β†‘β€–Β·β€–β‚Š) '' {k : π•œ | x ∈ k β€’ s})

def IsLittleOTVS (f : Ξ± β†’ E) (g : Ξ± β†’ F) (l : Filter Ξ±) : Prop :=
  βˆ€ U ∈ 𝓝 (0 : E), βˆƒ V ∈ 𝓝 (0 : F), βˆ€ (c : ℝβ‰₯0∞), 0 < c β†’ βˆ€αΆ  x in l, (gauge' π•œ U (f x)) ≀ c * (gauge' π•œ V (g x))

I am pretty confident that this gives the usual version in normed spaces, but not sure that it's the same notion as Wikipedia's or Yury's. The reason this feels natural is that, if topologies on E and F are generated by seminorms, I think you get a nice-looking characterization, but it's getting too late to even state it...

Anatole Dedecker (Jun 08 2023 at 23:49):

See docs4#gauge and the whole file around it. In particular, the gauge (or gauge’) of the unit ball of a normed space is exactly the norm

Yury G. Kudryashov (Jun 09 2023 at 00:20):

  1. I think that your gauge' should be added as egauge to the library, similar to edist. gauge should be redefined as (egauge _ _).toReal.
  2. I think that our definitions are equivalent. I didn't use docs#gauge in mine because it's not egauge.

YaΓ«l Dillies (Jun 09 2023 at 05:10):

So you lose the fact that the gauge returns a scalar?

Kevin Buzzard (Jun 09 2023 at 06:29):

In the p-adic theory Frechet spaces are topological vector spaces whose topology is defined by a family of seminorms and they play a big role in the p-adic Langlands program. I'm assuming this is material that we stole from the real analysts...

Yury G. Kudryashov (Jun 09 2023 at 12:56):

YaΓ«l Dillies said:

So you lose the fact that the gauge returns a scalar?

Currently, gauge is only defined for a real vector space.

Anatole Dedecker (Jun 09 2023 at 13:12):

I’m on mobile right now so I won’t develop all of my thoughts, but there are two distinct deviations from gauge at play.

  • The first one is indeed just a matter of taking values in ENNReal instead of Real. I would say we should definitely keep both
  • The other one is that, even where both the infimum is well defined, it’s not clear that the two agree for a non-symmetric set. On the other hand, I see no way to generalize gauge to arbitrary field that would preserve this property. This reminds me of the "real polar" VS "absolute polar" design choice, and iirc we chose the latter precisely because it works over other fields

Anatole Dedecker (Jun 09 2023 at 13:13):

Hence I have a question for people more familiar with convex analysis: do you care about the value of the gauge for non absorbent and balanced sets ?

Yury G. Kudryashov (Jun 09 2023 at 13:54):

@Brendan Seamas Murphy does to construct a homeomorphism with a ball.


Last updated: Dec 20 2023 at 11:08 UTC