Opened 6 months ago

Closed 4 months ago

#31677 closed enhancement (fixed)

Open subsets of arbitrary subsets of manifolds

Reported by: mkoeppe Owned by:
Priority: major Milestone: sage-9.4
Component: manifolds Keywords:
Cc: gh-mjungmath, egourgoulhon, tscrim Merged in:
Authors: Matthias Koeppe Reviewers: Eric Gourgoulhon
Report Upstream: N/A Work issues:
Branch: b35eca1 (Commits, GitHub, GitLab) Commit: b35eca14d542d604421cf82de0c24f9287e6b05f
Dependencies: #31674 Stopgaps:

Status badges

Description (last modified by mkoeppe)

Various places in the code assumed that the elements of the _supersets attribute of an open set are open, but this is not a guaranteed invariant.

We fix this by updating all loops over supersets that need to make this assumption to use a new generator function ManifoldSubset.open_supersets.

We also add the method ManifoldSubset.open_subset. It delegates to its base manifold's open_subset method, by passing a new optional parameter supersets to it.

Change History (9)

comment:1 Changed 6 months ago by mkoeppe

  • Branch set to u/mkoeppe/open-subsets-of-arbitrary-subsets

comment:2 Changed 6 months ago by mkoeppe

  • Commit set to 4e63b3093596f6c21ddd0a9e44b1d29522d593e5

Here's the beginning. To complete it, the remaining open_subset methods will need updating.


New commits:

1f6f295TopologicalSubmanifold.open_subset: New
58110f2TopologicalSubmanifold.open_subset: Fix docstring
d815b63{DifferentiableSubmanifold,PseudoRiemannianSubmanifold}.open_subset: New
aac8835{Topological,Differentiable,PseudoRiemannianSubmanifold}._repr_: Print subsets as subsets
004c23aAdd/update examples
ef1614aRefactor Manifold.open_subset methods through new method _init_open_subset
265b0e2TopologicalManifold._init_open_subset: Add docstring
4e63b30WIP

comment:3 Changed 6 months ago by git

  • Commit changed from 4e63b3093596f6c21ddd0a9e44b1d29522d593e5 to 5623f497a325d6093f7cbac5a36399a8271869f5

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

a93f7edTopologicalSubmanifold._init_open_subset: Add docstring
58b43f7DifferentiableManifold._init_open_subset: Add docstring
5623f49WIP

comment:4 Changed 6 months ago by git

  • Commit changed from 5623f497a325d6093f7cbac5a36399a8271869f5 to b35eca14d542d604421cf82de0c24f9287e6b05f

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

d542412ManifoldSubset.open_supersets: New generator, use it to fix loops that assume open supersets
c821a75{Topological,...}Manifold.open_subset: New optional parameter supersets
b35eca1ManifoldSubset.{open_subset,_init_open_subset}: New

comment:5 Changed 6 months ago by mkoeppe

  • Description modified (diff)
  • Status changed from new to needs_review

comment:6 Changed 6 months ago by egourgoulhon

  • Status changed from needs_review to positive_review

LGTM. Thanks for this improvement!

comment:7 Changed 6 months ago by egourgoulhon

  • Reviewers set to Eric Gourgoulhon

comment:8 Changed 6 months ago by mkoeppe

Thanks for reviewing!

comment:9 Changed 4 months ago by vbraun

  • Branch changed from u/mkoeppe/open-subsets-of-arbitrary-subsets to b35eca14d542d604421cf82de0c24f9287e6b05f
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.