Zulip Chat Archive
Stream: general
Topic: pequiv vs local_equiv
Yury G. Kudryashov (Mar 25 2020 at 16:40):
It seems to me that they both model the same mathematical concept. Do we need both of them?
Yury G. Kudryashov (Mar 25 2020 at 16:41):
pequiv
s have better definitional equality at the cost of bad codomains of to_fun
and inv_fun
.
Chris Hughes (Mar 25 2020 at 17:33):
pequiv
s also have better equality. I think, though I may be wrong, that equality of local_equiv
depends on the out of domain behaviour. There's redundant information in a local equiv, which mucks up equality.
Kevin Buzzard (Mar 25 2020 at 17:45):
whatever is "out of domain behaviour"?
Chris Hughes (Mar 25 2020 at 17:45):
An example is how
Chris Hughes (Mar 25 2020 at 17:47):
local_equiv
is a partial function, but it's implemented as a total function that returns junk outside of the domain of the partial function.
Reid Barton (Mar 25 2020 at 17:50):
I think the answer is: try to port manifolds to pequiv
or something else that has the correct equality and see if you can do it without everything falling over.
Reid Barton (Mar 25 2020 at 17:50):
If you can, it will be great.
Yury G. Kudryashov (Mar 25 2020 at 18:13):
pequiv
won't work, e.g., in the inverse function theorem because I want (h.to_local_homeomorph f).to_fun = f
to be defeq. This way it's much easier to prove theorems about local_homeomorph
s and apply to the original function. Probably the same is the case in many places in manifold
s.
Yury G. Kudryashov (Mar 25 2020 at 18:15):
Probably we should mention each equivalence in the docstring of another and prove that the quotient of local_equiv
by eq_on_source
is the same as pequiv
.
Mario Carneiro (Mar 25 2020 at 18:16):
that's not true either, unfortunately, because of empty types
Mario Carneiro (Mar 25 2020 at 18:16):
it's not always possible to add "junk" to complete the function
Yury G. Kudryashov (Mar 25 2020 at 18:17):
OK, it's the same provided [nonempty α] [nonempty β]
Mario Carneiro (Mar 25 2020 at 18:19):
I think you can get a pequiv to invert to the original function, but you have to supply a proof that it is total
Mario Carneiro (Mar 25 2020 at 18:21):
When you are working with a pequiv, you should never talk about out of range values, and as long as you are in range it should be defeq to the original function f
Yury G. Kudryashov (Mar 25 2020 at 18:34):
Another difficulty with calculus and pequiv
: I can't say that the forward/inverse function is differentiable because it has a bad codomain.
Mario Carneiro (Mar 25 2020 at 18:35):
what do you mean? I thought we had support for differentiating partial functions
Yury G. Kudryashov (Mar 25 2020 at 18:36):
Do we?
Mario Carneiro (Mar 25 2020 at 18:37):
ah, we had a big discussion about this when it was getting set up. Looks like the core definitions all assume f
itself is total
Mario Carneiro (Mar 25 2020 at 18:37):
There are some useful filters for partial functions but they weren't hooked up to deriv
Mario Carneiro (Mar 25 2020 at 18:38):
I guess the nearest approximation is to say that a pequiv
is differentiable if it extends to a function that is differentiable on the subset
Last updated: Dec 20 2023 at 11:08 UTC