Opened 6 months ago
Closed 3 months ago
#31688 closed enhancement (fixed)
Pullbacks (preimages) of manifold subsets under continuous maps
Reported by:  mkoeppe  Owned by:  

Priority:  major  Milestone:  sage9.4 
Component:  manifolds  Keywords:  
Cc:  egourgoulhon, tscrim, ghmjungmath  Merged in:  
Authors:  Matthias Koeppe  Reviewers:  Eric Gourgoulhon 
Report Upstream:  N/A  Work issues:  
Branch:  4558e26 (Commits, GitHub, GitLab)  Commit:  4558e2634ad2f42d83d9a2930d7a5cd2f0310a7c 
Dependencies:  #31883, #31904, #31653, #31916, #31644, #31959, #31990, #21243  Stopgaps: 
Description (last modified by )
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.
Change History (81)
comment:1 Changed 5 months ago by
 Description modified (diff)
comment:2 Changed 5 months ago by
 Dependencies set to #31883
comment:3 Changed 5 months ago by
 Branch set to u/mkoeppe/pullbacks_of_manifold_subsets_under_continuous_maps
comment:4 Changed 5 months ago by
 Commit set to 941001ba6fc2aaceb78bdfcc9e92ada7bc5e3ebc
comment:5 Changed 5 months ago by
 Description modified (diff)
comment:6 Changed 5 months ago by
 Commit changed from 941001ba6fc2aaceb78bdfcc9e92ada7bc5e3ebc to 90f763fa3afd8a7e8b1f856a3c44981a683602ca
Branch pushed to git repo; I updated commit sha1. New commits:
90f763f  ManifoldSubsetPullback.__contains__: New

comment:7 Changed 5 months ago by
 Commit changed from 90f763fa3afd8a7e8b1f856a3c44981a683602ca to b8dadf3a3d4c4f8b6f4c9a84bdd65187789006f1
comment:8 Changed 5 months ago by
 Commit changed from b8dadf3a3d4c4f8b6f4c9a84bdd65187789006f1 to 5abb86d0201bcb55a84cb9757043ba77a2837a03
Branch pushed to git repo; I updated commit sha1. New commits:
5abb86d  ManifoldSubsetPullback: More WIP

comment:9 Changed 5 months ago by
 Commit changed from 5abb86d0201bcb55a84cb9757043ba77a2837a03 to e597e6d254b690ee1e5d02c703a4481e1b65ed5f
Branch pushed to git repo; I updated commit sha1. New commits:
e597e6d  ManifoldSubsetPullback: Allow pulling back by charts, pulling back polyehdra

comment:10 Changed 5 months ago by
 Description modified (diff)
comment:11 Changed 5 months ago by
 Description modified (diff)
comment:12 Changed 5 months ago by
 Commit changed from e597e6d254b690ee1e5d02c703a4481e1b65ed5f to 1623cc5ed42df5ec4c430edbcca6874d47c38b70
Branch pushed to git repo; I updated commit sha1. New commits:
1623cc5  ManifoldSubsetPullback: Move computation of names to __classcall_private__

comment:13 Changed 5 months ago by
 Commit changed from 1623cc5ed42df5ec4c430edbcca6874d47c38b70 to dcc1f9a1b594a3b0a5756fd77bddfa624bf6ecaf
Branch pushed to git repo; I updated commit sha1. New commits:
dcc1f9a  ManifoldSubsetPullback: Prepare for pullbacks of opens

comment:14 Changed 5 months ago by
 Commit changed from dcc1f9a1b594a3b0a5756fd77bddfa624bf6ecaf to a2dd1820ac0addb84f4dcc2fc3586d6ca88ed49f
Branch pushed to git repo; I updated commit sha1. New commits:
a2dd182  ManifoldSubsetPullback: Recognize more closed sets

comment:15 Changed 5 months ago by
 Dependencies changed from #31883 to #31883, #31904
 Summary changed from Pullbacks of manifold subsets under continuous maps to Pullbacks (preimages) of manifold subsets under continuous maps
comment:16 Changed 5 months ago by
 Commit changed from a2dd1820ac0addb84f4dcc2fc3586d6ca88ed49f to 79232db5b3cbc0e675a6257b2959d45ed78162ac
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
459758e  ImageManifoldSubset, ContinuousMap.image: Add optional 'inverse' argument, use it in __contains__

26c7e56  src/sage/manifolds/continuous_map_image.py: Update doctests

3e273bb  TopologicalSubmanifold.as_subset: New

9726d36  Docstring work

19762ae  ImageManifoldSubset: New parameter domain_subset, use it in ContinuousMap.image

964f9f7  src/sage/manifolds/continuous_map.py: Update copyright

e711215  src/sage/manifolds/continuous_map_image.py: Add tests

0f3e36d  Link in documentation of sage.manifolds.continuous_map_image

4a13d8b  Merge #31653

79232db  ContinuousMap.preimage: New, make pullback an alias; add example

comment:17 Changed 5 months ago by
 Dependencies changed from #31883, #31904 to #31883, #31904, #31653
 Description modified (diff)
comment:18 Changed 4 months ago by
 Commit changed from 79232db5b3cbc0e675a6257b2959d45ed78162ac to 3c6666a7415ecf500e8720e9e8a5015ce00d4d2a
Branch pushed to git repo; I updated commit sha1. New commits:
3c6666a  ManifoldSubsetPullback: Make pullback of open RealSet under a ScalarField an open set

comment:19 Changed 4 months ago by
 Commit changed from 3c6666a7415ecf500e8720e9e8a5015ce00d4d2a to e95c897e4d2eac8e3488ac04a9b1e409f32f4e24
comment:20 Changed 4 months ago by
 Description modified (diff)
comment:21 Changed 4 months ago by
 Commit changed from e95c897e4d2eac8e3488ac04a9b1e409f32f4e24 to ff5eb8b4c870612c75f953df1021e4e9f627b9b2
Branch pushed to git repo; I updated commit sha1. New commits:
ff5eb8b  ManifoldSubsetPullback: Add doctests

comment:22 Changed 4 months ago by
 Commit changed from ff5eb8b4c870612c75f953df1021e4e9f627b9b2 to c268d34a6e1fc726bd20293ecf2086b0711dc97b
Branch pushed to git repo; I updated commit sha1. New commits:
c268d34  ManifoldSubsetPullback: Fix example using the embedding map

comment:23 Changed 4 months ago by
 Commit changed from c268d34a6e1fc726bd20293ecf2086b0711dc97b to 2a01a070e2d2ab6efd35ab7afd1c25bd7b210527
comment:24 Changed 4 months ago by
 Status changed from new to needs_review
This is not quite ready yet, but comments are very welcome
comment:25 Changed 4 months ago by
 Commit changed from 2a01a070e2d2ab6efd35ab7afd1c25bd7b210527 to acc71c3127b9d70b72e96fc7e4de1a95fbdc6bfb
comment:26 Changed 4 months ago by
 Dependencies changed from #31883, #31904, #31653 to #31883, #31904, #31653, #31916
comment:27 Changed 4 months ago by
For a possible followup, 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 nm
again.
comment:28 Changed 4 months ago by
 Commit changed from acc71c3127b9d70b72e96fc7e4de1a95fbdc6bfb to 3a5870e784ecda9fe611f2299b77fd86381bdd35
Branch pushed to git repo; I updated commit sha1. New commits:
9df2104  sage.geometry.relative_interior: Move here from sage.geometry.polyhedron.relint

b8bfe20  ConvexRationalPolyhedralCone: Add methods interior, relative_interior

6869673  relative_interior: Fix for dimension 0

021d073  RelativeInterior: Add documentation, tests, comparison methods, method relative_interior

8f38e04  ConvexRationalPolyhedralCone.interior, relative_interior: Add doctests

3a5870e  Merge #31916

comment:29 Changed 4 months ago by
 Description modified (diff)
comment:30 Changed 4 months ago by
 Commit changed from 3a5870e784ecda9fe611f2299b77fd86381bdd35 to e802a21ad48a2caba2808913e8971d9bf4bca504
Branch pushed to git repo; I updated commit sha1. New commits:
d11280e  src/sage/manifolds/subsets/pullback.py: Fixup import

cd3ca79  Update doctests for refined category of ScalarField

105bb8b  Merge #31883

5f9c852  RelativeInterior.interior: New

5c089ec  RelativeInterior.__eq__, __ne__: Handle comparisons with objects of other types

86ce301  Polyhedron_base.is_relatively_open: New; fix relative_interior for affine subspaces

216cb81  ConvexRationalPolyhedralCone.is_relatively_open: New, fix ConvexRationalPolyhedralCone.relative_interior for linear subspaces

44cde1e  src/doc/en/reference/discrete_geometry/index.rst: Add sage/geometry/relative_interior

fa4c2d2  Whitespace fixes

e802a21  Merge #31916

comment:31 Changed 4 months ago by
 Description modified (diff)
comment:32 Changed 4 months ago by
 Dependencies changed from #31883, #31904, #31653, #31916 to #31883, #31904, #31653, #31916, #31959
comment:33 Changed 4 months ago by
 Commit changed from e802a21ad48a2caba2808913e8971d9bf4bca504 to 9ea0cea86fffe3946dec52970677ebb434d48a30
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
6bef52b  ConvexSet_base._test_convex_set: Run the testsuite of relint

6ab5677  RelativeInterior.is_universe: New

c085d30  Polyhedron_base.interior: Handle the empty polyhedron correctly

686d0af  Polyhedron_base.product: Add doctest for alias 'cartesian_product'

2b1d108  Merge #31919

7323b10  ConvexSet_base._test_contains: Only test extension to AA for exact base rings

e0d2eeb  Merge #31959

e6c3ed5  RelativeInterior.__hash__: New

4c7d57f  src/sage/geometry/relative_interior.py: Fix doctest output

9ea0cea  ManifoldSubsetPullback: Do not trip over relative interiors of cones

comment:34 Changed 4 months ago by
As revealed by the patchbot, there are some doctest failures, as well as some coverage and pyflakes issues.
comment:35 Changed 4 months ago by
 Commit changed from 9ea0cea86fffe3946dec52970677ebb434d48a30 to d59123489ea39f9cda94f6e4dc45b35848fff8ea
comment:36 Changed 4 months ago by
 Status changed from needs_review to needs_work
Thanks for taking a look! Yes, I'll have to add more documentation and examples.
comment:37 Changed 4 months ago by
 Commit changed from d59123489ea39f9cda94f6e4dc45b35848fff8ea to 87f3e302501cc5cbc565834ca7c77a3630784bc7
Branch pushed to git repo; I updated commit sha1. New commits:
87f3e30  ManifoldSubsetPullback: Add documentation and tests

comment:38 Changed 4 months ago by
 Dependencies changed from #31883, #31904, #31653, #31916, #31959 to #31883, #31904, #31653, #31916, #31959, #31990
comment:39 Changed 4 months ago by
 Commit changed from 87f3e302501cc5cbc565834ca7c77a3630784bc7 to 754e002c2cbb79d43d24a5a8f6dafa06664e85cf
Branch pushed to git repo; I updated commit sha1. New commits:
7d3ae5c  Merge #31959

2b1040c  ConvexSet_base.{an_element,some_elements}, Polyhedron.some_elements, RelativeInterior.some_elements: New

a884517  PolyhedronFace.some_elements: New

f6cc8f7  Merge #31990

1a4805c  ManifoldSubsetPullback: For charts, use .point as the inverse

754e002  ManifoldSubsetPullback._an_element_, some_elements: Implement

comment:40 Changed 4 months ago by
 Commit changed from 754e002c2cbb79d43d24a5a8f6dafa06664e85cf to a8e607cee6cad630ee7f2220cd36c07223f80d5f
Branch pushed to git repo; I updated commit sha1. New commits:
a8e607c  ManifoldSubsetPullback._coord_def: Add documentation and examples

comment:41 Changed 4 months ago by
 Status changed from needs_work to needs_review
comment:42 Changed 4 months ago by
 Commit changed from a8e607cee6cad630ee7f2220cd36c07223f80d5f to c49ab33b27112434199e45ade9dbd1b3c88ad2fe
comment:43 Changed 4 months ago by
 Commit changed from c49ab33b27112434199e45ade9dbd1b3c88ad2fe to 7ae21daf6dc4984c36aed84e08b1a0e90cbbe44f
Branch pushed to git repo; I updated commit sha1. New commits:
f0e7c58  ambient_vector_space docstring: Fix bad blocks

200d967  ConvexSet_base.ambient doctest: Actually test the method

1c2bef5  Merge #31959

ed898e6  ConvexSet_base.an_element, some_elements: Go through generator method _some_elements_, make some_elements return a list

7ae21da  Merge #31990

comment:44 Changed 4 months ago by
 Reviewers set to Eric Gourgoulhon
Thanks for the last changes. Some comments regarding the documentation:
 there is no entry for the class
ManifoldSubsetPullback
in the reference manual  in the files
continuous_map.py
andsubsets/pullback.py
, each instance of:class:`ManifoldSubset`
should be replaced by:class:`~sage.manifolds.subset.ManifoldSubset`
 the docstring of
ScalarField.pullback
should have an INPUT and OUTPUT sections similar to those ofContinuousMap.preimage
. By the way, to be consistent withContinuousMap.preimage
, shouldn'tScalarField.pullback
be renamed toScalarField.preimage
, withpullback
defined as an alias topreimage
?  the INPUT and OUTPUT sections of
DiffMap.pullback
should be updated to take into account the new arguments.
comment:45 Changed 4 months ago by
 Dependencies changed from #31883, #31904, #31653, #31916, #31959, #31990 to #31883, #31904, #31653, #31916, #31644, #31959, #31990
comment:46 Changed 4 months ago by
 Commit changed from 7ae21daf6dc4984c36aed84e08b1a0e90cbbe44f to 3877c5ff4796060e21cab7ab7cec325db6926d46
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
8d3ad85  Merge #31764

60505b0  Merge #31798

b9909c0  ManifoldSubsetClosure: Add examples, fix docstring markup

16c6a72  ManifoldSubsetClosure, ManifoldSubset.closure: Improve documentation

2514586  Merge #31644

3ca139a  src/doc/en/reference/manifolds: Add pullback

1d430ee  src/sage/manifolds/continuous_map.py, src/sage/manifolds/subsets: Use qualified class name in docstrings

1266de9  src/sage/geometry/convex_set.py: Fix docstring markup

df64125  ScalarField.preimage: Make pullback an alias; expand documentation

3877c5f  ManifoldSubsetPullback.is_closed: Remove unfinished NNC_Polyhedron example

comment:47 Changed 4 months ago by
 Commit changed from 3877c5ff4796060e21cab7ab7cec325db6926d46 to 60ea044447b0a07d63e5298820cab9fb3ecd2ffc
Branch pushed to git repo; I updated commit sha1. New commits:
0c549f0  Chart.pullback, preimage: New

7bb720e  ManifoldSubsetPullback.__contains__: Handle the case of charts, which return tuples of coordinates, not vectors

60ea044  ContinuousMap.preimage, ScalarField.preimage: Document that output can also be a manifold

comment:48 Changed 4 months ago by
 Dependencies changed from #31883, #31904, #31653, #31916, #31644, #31959, #31990 to #31883, #31904, #31653, #31916, #31644, #31959, #31990, #21243
comment:49 Changed 4 months ago by
 Commit changed from 60ea044447b0a07d63e5298820cab9fb3ecd2ffc to c36e43bf1b2cc5849e8df4a015ff2a8e1638d393
Branch pushed to git repo; I updated commit sha1. New commits:
5b8ceca  InternalRealInterval, RealSet: Add _latex_ methods

69ca854  RealSet._repr_: Use unicode cup sign instead of +

dbdfc06  InternalRealInterval, RealSet: Remove extra whitespace in latex, add documentation

a0e3bf5  Merge #31880

181b128  RealSet.is_open, is_closed, closure, interior, boundary: New

7f56338  PiecewiseFunction: Adjust doctests for changed RealSet repr

8cd74b5  Merge #31880

8fdb104  RealSet.boundary: Add another doctest

9d41f0e  src/sage/sets/real_set.py: Remove unnecessary import

c36e43b  Merge #21243

comment:50 followup: ↓ 53 Changed 4 months ago by
In the docstring of ManifoldSubsetPullback
:
 in the INPUT section, there seems to be no entry for
ConvexSet_base
in the documentation
 in the following part of the EXAMPLES block:
sage: r_squared = M.scalar_field(x^2+y^2) sage: r_squared.set_immutable() sage: cl_I = RealSet((1, 4)); cl_I (1, 4) sage: cl_O = ManifoldSubsetPullback(r_squared, None, I); cl_O
I guessI
in the last line (which, at this stage, is the imaginary number i) should be replaced bycl_I
and the subsequentTrue
andFalse
should becomeFalse
andTrue
respectively. But then,cl_I
andcl_O
are identical toI
andO
in the example that follows...
comment:51 Changed 4 months ago by
 Commit changed from c36e43bf1b2cc5849e8df4a015ff2a8e1638d393 to c540d3532fc99cefe0896cc73075a8e0950c0c7d
Branch pushed to git repo; I updated commit sha1. New commits:
c540d35  ManifoldSubsetPullback: Fix up some doctests with closed intervals

comment:52 followup: ↓ 55 Changed 4 months ago by
Thanks for spotting this  I have fixed this and a similar example
comment:53 in reply to: ↑ 50 ; followup: ↓ 54 Changed 4 months ago by
Replying to egourgoulhon:
In the docstring of
ManifoldSubsetPullback
:
 in the INPUT section, there seems to be no entry for
ConvexSet_base
in the documentation
You may need to run ./sage docbuild reference/discrete_geometry html
comment:54 in reply to: ↑ 53 Changed 4 months ago by
Replying to mkoeppe:
Replying to egourgoulhon:
In the docstring of
ManifoldSubsetPullback
:
 in the INPUT section, there seems to be no entry for
ConvexSet_base
in the documentationYou may need to run
./sage docbuild reference/discrete_geometry html
Yes indeed!
comment:55 in reply to: ↑ 52 Changed 4 months ago by
Replying to mkoeppe:
Thanks for spotting this  I have fixed this and a similar example
Thanks.
At the moment, we have
sage: M = Manifold(2, 'M') sage: X.<x,y> = M.chart() sage: M.identity_map().preimage(M) Subset Id_M_inv_M of the 2dimensional differentiable manifold M sage: M.identity_map().preimage(M) is M False sage: M.zero_scalar_field().preimage(RealSet.point(0)) Subset zero_inv_{0} of the 2dimensional differentiable manifold M sage: M.zero_scalar_field().preimage(RealSet.point(0)) is M False
Do you think it would be easy to have both answers to be True
? If no, this should not hamper the current ticket, but be differed to another ticket.
comment:56 Changed 4 months ago by
 Commit changed from c540d3532fc99cefe0896cc73075a8e0950c0c7d to facad9753750e64d39d5cc6087be292edff94beb
Branch pushed to git repo; I updated commit sha1. New commits:
facad97  ContinuousMap.preimage: Handle identity_map specially

comment:57 followup: ↓ 60 Changed 4 months ago by
Sure, that's easy to do and certainly a good idea. Here it is for ContinuousMap.preimage
already, I'll look into the case of the scalar fields
comment:58 Changed 4 months ago by
 Commit changed from facad9753750e64d39d5cc6087be292edff94beb to c2ecf3ebd9d00b2fac2fe8e5d4aca0b3da1ea1ae
Branch pushed to git repo; I updated commit sha1. New commits:
c2ecf3e  ScalarField.preimage: Handle the case of the zero scalar field

comment:59 Changed 4 months ago by
More general things such as detecting that the preimage of [0,oo) under squaring is the full domain will have to wait until a followup ticket
comment:60 in reply to: ↑ 57 ; followup: ↓ 62 Changed 4 months ago by
Replying to mkoeppe:
Sure, that's easy to do and certainly a good idea. Here it is for
ContinuousMap.preimage
already,
Thanks. Maybe one can add
if self._is_isomorphism and codomain_subset == self._codomain: return self._domain
comment:61 followup: ↓ 63 Changed 4 months ago by
The patchbot reports a doctest error in src/sage/geometry/polyhedron/base.py
as well as pyflakes errors in src/sage/manifolds/subsets/pullback.py
.
comment:62 in reply to: ↑ 60 ; followup: ↓ 65 Changed 4 months ago by
Replying to egourgoulhon:
Maybe one can add
if self._is_isomorphism and codomain_subset == self._codomain: return self._domain
I think I can do more generally
if self._codomain.is_subset(codomain_subset): return self._domain
comment:63 in reply to: ↑ 61 Changed 4 months ago by
Replying to egourgoulhon:
The patchbot reports a doctest error in
src/sage/geometry/polyhedron/base.py
I've seen this one before locally, I don't think it's coming from this ticket, but I have opened #32030 for it
comment:64 Changed 4 months ago by
 Commit changed from c2ecf3ebd9d00b2fac2fe8e5d4aca0b3da1ea1ae to 3b1c4280d4b9d935e8b9fdcd7868343899ab2544
Branch pushed to git repo; I updated commit sha1. New commits:
3b1c428  ManifoldSubsetPullback: Make codomain_subset required 2nd init arg; fix pycodestyle/pyflakes warnings

comment:65 in reply to: ↑ 62 Changed 4 months ago by
Replying to mkoeppe:
Replying to egourgoulhon:
Maybe one can add
if self._is_isomorphism and codomain_subset == self._codomain: return self._domainI think I can do more generally
if self._codomain.is_subset(codomain_subset): return self._domain
Yes, indeed! Being an isomorphism is not necessary in that case.
comment:66 Changed 4 months ago by
 Commit changed from 3b1c4280d4b9d935e8b9fdcd7868343899ab2544 to d321b93a9a40effb0c67aae593fc6915e7fd9417
Branch pushed to git repo; I updated commit sha1. New commits:
d321b93  ContinuousMap: Return domain if the map's codomain is contained in the given subset

comment:67 Changed 4 months ago by
A minor point: to generate correctly the documentation, the following change shall be made in the docstring of ManifoldSubsetPullback
:
  ``map``  an instance of :class:`ContinuousMap`, +  ``map``  an instance of :class:`~sage.manifolds.continuous_map.ContinuousMap`, :class:`ScalarField`, or :class:`Chart`
For :class:`ScalarField`
and :class:`Chart`
, this is not necessary because these classes are imported in pullback.py
.
comment:68 followup: ↓ 70 Changed 4 months ago by
This example in the doctstring of ManifoldSubsetPullback.is_closed
is dubious:
The pullback of finite sets is closed:: sage: F = Family([vector(QQ, [1, 2], immutable=True), vector(QQ, [2, 3], immutable=True)]) sage: McF = ManifoldSubsetPullback(c_cart, F, name='McF'); McF Subset McF of the 2dimensional topological manifold R^2 sage: McF.is_closed() False
comment:69 Changed 4 months ago by
 Commit changed from d321b93a9a40effb0c67aae593fc6915e7fd9417 to 653c651ca9477afdac82c2448b2507ffa85c1235
comment:70 in reply to: ↑ 68 Changed 4 months ago by
Replying to egourgoulhon:
This example in the doctstring of
ManifoldSubsetPullback.is_closed
is dubious:
Indeed. Looks like I had forgotten to actually implement this case. Done now
comment:71 Changed 4 months ago by
Thanks for the update. As soon as the patchbot visits the ticket and is green, the ticket can be set to positive review.
comment:72 followup: ↓ 74 Changed 4 months ago by
 Status changed from needs_review to positive_review
OK, since the changes since the last time the patchbot visited the ticket are quite minor, let us move on without waiting for another visit.
Thank you for the new features introduced here!
comment:73 Changed 4 months ago by
Thanks for the review!
comment:74 in reply to: ↑ 72 Changed 4 months ago by
Replying to egourgoulhon:
OK, since the changes since the last time the patchbot visited the ticket are quite minor, let us move on without waiting for another visit.
It seems that we don't have any patchbot at the moment: https://patchbot.sagemath.org/ticket/0/
comment:75 Changed 4 months ago by
 Commit changed from 653c651ca9477afdac82c2448b2507ffa85c1235 to 4b930ffd8509e1e9553d683787dad57ba9e81995
 Status changed from positive_review to needs_review
Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:
4b930ff  Merge tag '9.4.beta4' into t/31688/pullbacks_of_manifold_subsets_under_continuous_maps

comment:76 Changed 4 months ago by
 Status changed from needs_review to positive_review
comment:77 Changed 3 months ago by
 Status changed from positive_review to needs_work
sage t long warnlong 41.5 randomseed=0 src/sage/geometry/polyhedron/base.py ********************************************************************** File "src/sage/geometry/polyhedron/base.py", line 2975, in sage.geometry.polyhedron.base.Polyhedron_base.incidence_matrix Failed example: M == P.incidence_matrix() Expected: False Got: True ********************************************************************** 1 item had failures: 1 of 31 in sage.geometry.polyhedron.base.Polyhedron_base.incidence_matrix [1737 tests, 1 failure, 35.30 s]  sage t long warnlong 41.5 randomseed=0 src/sage/geometry/polyhedron/base.py # 1 doctest failed 
comment:78 Changed 3 months ago by
 Commit changed from 4b930ffd8509e1e9553d683787dad57ba9e81995 to 4558e2634ad2f42d83d9a2930d7a5cd2f0310a7c
Branch pushed to git repo; I updated commit sha1. New commits:
4558e26  Polyhedron_base.incidence_matrix: Remove accidental change to doctest

comment:79 Changed 3 months ago by
 Status changed from needs_work to needs_review
comment:80 Changed 3 months ago by
 Status changed from needs_review to positive_review
comment:81 Changed 3 months ago by
 Branch changed from u/mkoeppe/pullbacks_of_manifold_subsets_under_continuous_maps to 4558e2634ad2f42d83d9a2930d7a5cd2f0310a7c
 Resolution set to fixed
 Status changed from positive_review to closed
Branch pushed to git repo; I updated commit sha1. New commits:
ScalarField.codomain: New, put scalar fields in category of continuous maps
Merge #31883
ManifoldSubsetPullback: More WIP