sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.46k stars 485 forks source link

Pullbacks (preimages) of manifold subsets under continuous maps #31688

Closed mkoeppe closed 3 years ago

mkoeppe commented 3 years ago

Similar to #31653, given a continuous map \Phi: N -> M and a manifold subset S of M, we define the pullback (preimage) of S as the subset of N of points p with \Phi(p) in S.

Given a real scalar field Phi: N -> R and a RealSet S, we define the pullback in the same way.

Also, we view a chart C as a continuous function Phi: C.domain() -> R^n and allow pulling back any subset of R^n (an object with a __contains__ method; for example polyhedra, lattices, linear subspaces, tensor modules) by it as well.

In all cases, because Phi is continuous, topological closures/interiors pull back.

An application is in #31981.

Depends on #31883 Depends on #31904 Depends on #31653 Depends on #31916 Depends on #31644 Depends on #31959 Depends on #31990 Depends on #21243

CC: @egourgoulhon @tscrim @mjungmath

Component: manifolds

Author: Matthias Koeppe

Branch/Commit: 4558e26

Reviewer: Eric Gourgoulhon

Issue created by migration from https://trac.sagemath.org/ticket/31688

mkoeppe commented 3 years ago

Description changed:

--- 
+++ 
@@ -1,2 +1,7 @@
 Similar to #31653, given a continuous map `\Phi: N -> M` and a manifold subset `S` of `M`, we define the pullback (preimage) of `S` as the subset of `N` of points `p` with `\Phi(p)` in `S`.

+Given a real scalar field `Phi: N -> R` and a RealSet `S`, we define the pullback in the same way.
+
+In both cases, because `Phi` is continuous, topological closures/interiors pull back.
+
+
mkoeppe commented 3 years ago

Dependencies: #31883

mkoeppe commented 3 years ago

Branch: u/mkoeppe/pullbacks_of_manifold_subsets_under_continuous_maps

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Commit: 941001b

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

1942c71ScalarField.codomain: New, put scalar fields in category of continuous maps
8829d72Merge #31883
941001bManifoldSubsetPullback: More WIP
mkoeppe commented 3 years ago

Author: Matthias Koeppe

mkoeppe commented 3 years ago

Description changed:

--- 
+++ 
@@ -1,6 +1,6 @@
 Similar to #31653, given a continuous map `\Phi: N -> M` and a manifold subset `S` of `M`, we define the pullback (preimage) of `S` as the subset of `N` of points `p` with `\Phi(p)` in `S`.

-Given a real scalar field `Phi: N -> R` and a RealSet `S`, we define the pullback in the same way.
+Given a real scalar field `Phi: N -> R` and a `RealSet` `S`, we define the pullback in the same way.

 In both cases, because `Phi` is continuous, topological closures/interiors pull back.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from 941001b to 90f763f

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

90f763fManifoldSubsetPullback.__contains__: New
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

ff34765ManifoldSubsetPullback: In `__classcall_private__`, make immutable copies of the maps
b8dadf3ScalarField.pullback, ContinuousMap.pullback: New
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from 90f763f to b8dadf3

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

5abb86dManifoldSubsetPullback: More WIP
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from b8dadf3 to 5abb86d

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

e597e6dManifoldSubsetPullback: Allow pulling back by charts, pulling back polyehdra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from 5abb86d to e597e6d

mkoeppe commented 3 years ago

Description changed:

--- 
+++ 
@@ -2,6 +2,8 @@

 Given a real scalar field `Phi: N -> R` and a `RealSet` `S`, we define the pullback in the same way.

-In both cases, because `Phi` is continuous, topological closures/interiors pull back.
+Also, we view a chart `C` as a continuous function `Phi: C.domain() -> R^n` and allow pulling back by it as well. 
+
+In all cases, because `Phi` is continuous, topological closures/interiors pull back.
mkoeppe commented 3 years ago

Description changed:

--- 
+++ 
@@ -2,7 +2,7 @@

 Given a real scalar field `Phi: N -> R` and a `RealSet` `S`, we define the pullback in the same way.

-Also, we view a chart `C` as a continuous function `Phi: C.domain() -> R^n` and allow pulling back by it as well. 
+Also, we view a chart `C` as a continuous function `Phi: C.domain() -> R^n` and allow pulling back any subset of `R^n` (an object with a `__contains__` method; for example polyhedra) by it as well. 

 In all cases, because `Phi` is continuous, topological closures/interiors pull back.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

1623cc5ManifoldSubsetPullback: Move computation of names to __classcall_private__
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from e597e6d to 1623cc5

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

dcc1f9aManifoldSubsetPullback: Prepare for pullbacks of opens
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from 1623cc5 to dcc1f9a

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from dcc1f9a to a2dd182

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

a2dd182ManifoldSubsetPullback: Recognize more closed sets
mkoeppe commented 3 years ago

Changed dependencies from #31883 to #31883, #31904

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

459758eImageManifoldSubset, ContinuousMap.image: Add optional 'inverse' argument, use it in __contains__
26c7e56src/sage/manifolds/continuous_map_image.py: Update doctests
3e273bbTopologicalSubmanifold.as_subset: New
9726d36Docstring work
19762aeImageManifoldSubset: New parameter domain_subset, use it in ContinuousMap.image
964f9f7src/sage/manifolds/continuous_map.py: Update copyright
e711215src/sage/manifolds/continuous_map_image.py: Add tests
0f3e36dLink in documentation of sage.manifolds.continuous_map_image
4a13d8bMerge #31653
79232dbContinuousMap.preimage: New, make pullback an alias; add example
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from a2dd182 to 79232db

mkoeppe commented 3 years ago

Changed dependencies from #31883, #31904 to #31883, #31904, #31653

mkoeppe commented 3 years ago

Description changed:

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

3c6666aManifoldSubsetPullback: Make pullback of open RealSet under a ScalarField an open set
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from 79232db to 3c6666a

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from 3c6666a to e95c897

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

235d75aManifoldSubsetPullback.closure: Adjust doctest
aea4554#31904: Fix indentation in _pullback_chart
e95c897Merge #31904
mkoeppe commented 3 years ago

Description changed:

--- 
+++ 
@@ -2,7 +2,7 @@

 Given a real scalar field `Phi: N -> R` and a `RealSet` `S`, we define the pullback in the same way.

-Also, we view a chart `C` as a continuous function `Phi: C.domain() -> R^n` and allow pulling back any subset of `R^n` (an object with a `__contains__` method; for example polyhedra) by it as well. 
+Also, we view a chart `C` as a continuous function `Phi: C.domain() -> R^n` and allow pulling back any subset of `R^n` (an object with a `__contains__` method; for example polyhedra, lattices, or linear subspaces) by it as well. 

 In all cases, because `Phi` is continuous, topological closures/interiors pull back.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from e95c897 to ff5eb8b

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

ff5eb8bManifoldSubsetPullback: Add doctests
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from ff5eb8b to c268d34

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

c268d34ManifoldSubsetPullback: Fix example using the embedding map
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

56b22a3ManifoldSubsetPullback.__classcall_private__: Add doc
762e0a8ManifoldSubsetPullback.__init__: Add tests
2a01a07ManifoldSubsetPullback._an_element_: New
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from c268d34 to 2a01a07

mkoeppe commented 3 years ago
comment:24

This is not quite ready yet, but comments are very welcome

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from 2a01a07 to acc71c3

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

e9c670csage.geometry.polyhedron.relint, Polyhedron_base.relative_interior, Polyhedron_base.interior: New
86fc6cdMerge #31916
acc71c3ManifoldSubsetPullback: Pulling back interiors of polyhedra
mkoeppe commented 3 years ago

Changed dependencies from #31883, #31904, #31653 to #31883, #31904, #31653, #31916

mjungmath commented 3 years ago
comment:27

For a possible follow-up, it might be a good idea to bear in mind that the preimage of a regular value of a differentiable map between manifolds of dimension n and m respectively is a differentiable manifold of dimension n-m again.

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

9df2104sage.geometry.relative_interior: Move here from sage.geometry.polyhedron.relint
b8bfe20ConvexRationalPolyhedralCone: Add methods interior, relative_interior
6869673relative_interior: Fix for dimension 0
021d073RelativeInterior: Add documentation, tests, comparison methods, method relative_interior
8f38e04ConvexRationalPolyhedralCone.interior, relative_interior: Add doctests
3a5870eMerge #31916
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from acc71c3 to 3a5870e

mkoeppe commented 3 years ago

Description changed:

--- 
+++ 
@@ -2,7 +2,7 @@

 Given a real scalar field `Phi: N -> R` and a `RealSet` `S`, we define the pullback in the same way.

-Also, we view a chart `C` as a continuous function `Phi: C.domain() -> R^n` and allow pulling back any subset of `R^n` (an object with a `__contains__` method; for example polyhedra, lattices, or linear subspaces) by it as well. 
+Also, we view a chart `C` as a continuous function `Phi: C.domain() -> R^n` and allow pulling back any subset of `R^n` (an object with a `__contains__` method; for example polyhedra, lattices, linear subspaces, tensor modules) by it as well. 

 In all cases, because `Phi` is continuous, topological closures/interiors pull back.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

d11280esrc/sage/manifolds/subsets/pullback.py: Fixup import
cd3ca79Update doctests for refined category of ScalarField
105bb8bMerge #31883
5f9c852RelativeInterior.interior: New
5c089ecRelativeInterior.__eq__, __ne__: Handle comparisons with objects of other types
86ce301Polyhedron_base.is_relatively_open: New; fix relative_interior for affine subspaces
216cb81ConvexRationalPolyhedralCone.is_relatively_open: New, fix ConvexRationalPolyhedralCone.relative_interior for linear subspaces
44cde1esrc/doc/en/reference/discrete_geometry/index.rst: Add sage/geometry/relative_interior
fa4c2d2Whitespace fixes
e802a21Merge #31916
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 3 years ago

Changed commit from 3a5870e to e802a21

mkoeppe commented 3 years ago

Description changed:

--- 
+++ 
@@ -7,3 +7,5 @@
 In all cases, because `Phi` is continuous, topological closures/interiors pull back.

+An application is in #31981.
+