Sage: Ticket #31249: Grassmann Manifolds
https://trac.sagemath.org/ticket/31249
<p>
Grassmannian manifolds are extremely important in (differential) geometry. Thus, we want to add them to the catalog of manifolds in Sage.
</p>
<p>
The following notes introduce charts and their transition maps very straightforwardly:
</p>
<p>
<a class="ext-link" href="http://www.math.toronto.edu/mgualt/courses/18-367/docs/DiffGeomNotes-2.pdf"><span class="icon"></span>http://www.math.toronto.edu/mgualt/courses/18-367/docs/DiffGeomNotes-2.pdf</a>
</p>
<p>
However, the number of charts grows extremely fast, namely <code>ncr(n,k)</code>. One approach could be to parallelize the initialization process to reach at least low dimensional Grassmannians in a reasonable time.
</p>
<p>
Apart from that, it could be enough to start with only one chart since this should already cover enough (in particular, everything except a set of measure zero). That should give enough freedom to do almost everything on Grassmannians already.
</p>
<p>
Part of metaticket <a class="new ticket" href="https://trac.sagemath.org/ticket/30189" title="task: Add Examples to Manifolds Catalog (new)">#30189</a>.
</p>
en-usSagehttps://trac.sagemath.org/chrome/site/logo_sagemath_trac.png
https://trac.sagemath.org/ticket/31249
Trac 1.1.6gh-mjungmathSat, 16 Jan 2021 15:23:20 GMTdescription changed
https://trac.sagemath.org/ticket/31249#comment:1
https://trac.sagemath.org/ticket/31249#comment:1
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/31249?action=diff&version=1">diff</a>)
</li>
</ul>
TicketmkoeppeSat, 16 Jan 2021 17:52:12 GMT
https://trac.sagemath.org/ticket/31249#comment:2
https://trac.sagemath.org/ticket/31249#comment:2
<p>
I think this is a good opportunity to investigate possible connections to pymanopt (<a class="new ticket" href="https://trac.sagemath.org/ticket/30495" title="enhancement: sage.manifolds: Connect to Pymanopt (new)">#30495</a>)...
</p>
TickettscrimSun, 17 Jan 2021 01:28:04 GMT
https://trac.sagemath.org/ticket/31249#comment:3
https://trac.sagemath.org/ticket/31249#comment:3
<p>
Another possible approach is to have a way to construct things lazily. So you have the charts, but all of the additional initialization and constructions would not be done until you actually do something with the chart. However, this would require a major overhaul to the manifolds implementation.
</p>
TicketegourgoulhonSun, 17 Jan 2021 15:20:04 GMT
https://trac.sagemath.org/ticket/31249#comment:4
https://trac.sagemath.org/ticket/31249#comment:4
<p>
+1 for including Grassmannians (with projective spaces as special case).
</p>
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:2" title="Comment 2">mkoeppe</a>:
</p>
<blockquote class="citation">
<p>
I think this is a good opportunity to investigate possible connections to pymanopt (<a class="new ticket" href="https://trac.sagemath.org/ticket/30495" title="enhancement: sage.manifolds: Connect to Pymanopt (new)">#30495</a>)...
</p>
</blockquote>
<p>
Could you elaborate a little bit about this?
</p>
Ticketgh-tobiasdiezSun, 17 Jan 2021 16:25:25 GMT
https://trac.sagemath.org/ticket/31249#comment:5
https://trac.sagemath.org/ticket/31249#comment:5
<p>
Or, more generally, flag manifolds.
</p>
<p>
For the charts, maybe it is convenient to use the fact that these examples are homogeneous spaces, so that one only needs to define the chart at the identity coset. The other charts can be then generated dynamically by translation on the group.
</p>
Ticketgh-mjungmathTue, 19 Jan 2021 16:29:33 GMT
https://trac.sagemath.org/ticket/31249#comment:6
https://trac.sagemath.org/ticket/31249#comment:6
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:5" title="Comment 5">gh-tobiasdiez</a>:
</p>
<blockquote class="citation">
<p>
Or, more generally, flag manifolds.
</p>
<p>
For the charts, maybe it is convenient to use the fact that these examples are homogeneous spaces, so that one only needs to define the chart at the identity coset. The other charts can be then generated dynamically by translation on the group.
</p>
</blockquote>
<p>
We neither have Lie groups nor group actions at the moment. And elements of e.g. <code>GL(R, n)</code> are represented by matrices in the (by nature) inexact "field" of floating-point reals. I suspect some problems here.
</p>
TicketchapotonTue, 19 Jan 2021 17:29:21 GMT
https://trac.sagemath.org/ticket/31249#comment:7
https://trac.sagemath.org/ticket/31249#comment:7
<p>
Using the cluster charts (namely minors of matrices) and cluster mutations may be a good way, that would give as a bonus the positive grassmanians.
</p>
TickettscrimTue, 19 Jan 2021 23:20:19 GMT
https://trac.sagemath.org/ticket/31249#comment:8
https://trac.sagemath.org/ticket/31249#comment:8
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:7" title="Comment 7">chapoton</a>:
</p>
<blockquote class="citation">
<p>
Using the cluster charts (namely minors of matrices) and cluster mutations may be a good way, that would give as a bonus the positive grassmanians.
</p>
</blockquote>
<p>
You are thinking about representing the charts in terms of Plücker coordinates, correct?
</p>
TickettscrimTue, 19 Jan 2021 23:22:16 GMT
https://trac.sagemath.org/ticket/31249#comment:9
https://trac.sagemath.org/ticket/31249#comment:9
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:6" title="Comment 6">gh-mjungmath</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:5" title="Comment 5">gh-tobiasdiez</a>:
</p>
<blockquote class="citation">
<p>
Or, more generally, flag manifolds.
</p>
<p>
For the charts, maybe it is convenient to use the fact that these examples are homogeneous spaces, so that one only needs to define the chart at the identity coset. The other charts can be then generated dynamically by translation on the group.
</p>
</blockquote>
<p>
We neither have Lie groups nor group actions at the moment. And elements of e.g. <code>GL(R, n)</code> are represented by matrices in the (by nature) inexact "field" of floating-point reals. I suspect some problems here.
</p>
</blockquote>
<p>
I think there is still something you can do by considering the free parameters of the corresponding matrices to define the coordinate chart. So you don't really need the actual Lie group implemented as a manifold I believe.
</p>
Ticketgh-mjungmathTue, 19 Jan 2021 23:59:08 GMT
https://trac.sagemath.org/ticket/31249#comment:10
https://trac.sagemath.org/ticket/31249#comment:10
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:8" title="Comment 8">tscrim</a>:
</p>
<blockquote class="citation">
<p>
You are thinking about representing the charts in terms of Plücker coordinates, correct?
</p>
</blockquote>
<p>
Unfortunately, I don't know Plücker coordinates. I have to read some things first...any idea where to start?
</p>
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:9" title="Comment 9">tscrim</a>:
</p>
<blockquote class="citation">
<p>
I think there is still something you can do by considering the free parameters of the corresponding matrices to define the coordinate chart. So you don't really need the actual Lie group implemented as a manifold I believe.
</p>
</blockquote>
<p>
Ah, alright. That could actually work! Nice!
</p>
TickettscrimWed, 20 Jan 2021 00:10:21 GMT
https://trac.sagemath.org/ticket/31249#comment:11
https://trac.sagemath.org/ticket/31249#comment:11
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:10" title="Comment 10">gh-mjungmath</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/31249#comment:8" title="Comment 8">tscrim</a>:
</p>
<blockquote class="citation">
<p>
You are thinking about representing the charts in terms of Plücker coordinates, correct?
</p>
</blockquote>
<p>
Unfortunately, I don't know Plücker coordinates. I have to read some things first...any idea where to start?
</p>
</blockquote>
<p>
<a class="ext-link" href="https://en.wikipedia.org/wiki/Pl%C3%BCcker_coordinates"><span class="icon"></span>Wikipedia</a>
</p>
<p>
The short version is Plücker coordinates are the minors for a matrix representing a point in the Grassmannian and give an embedding in projective space. The transition maps are quadratic and considered as cluster relations.
</p>
TicketmkoeppeWed, 24 Mar 2021 02:04:25 GMTmilestone changed
https://trac.sagemath.org/ticket/31249#comment:12
https://trac.sagemath.org/ticket/31249#comment:12
<ul>
<li><strong>milestone</strong>
changed from <em>sage-9.3</em> to <em>sage-9.4</em>
</li>
</ul>
<p>
Sage development has entered the release candidate phase for 9.3. Setting a new milestone for this ticket based on a cursory review of ticket status, priority, and last modification date.
</p>
TicketmkoeppeMon, 19 Jul 2021 01:16:42 GMTmilestone changed
https://trac.sagemath.org/ticket/31249#comment:13
https://trac.sagemath.org/ticket/31249#comment:13
<ul>
<li><strong>milestone</strong>
changed from <em>sage-9.4</em> to <em>sage-9.5</em>
</li>
</ul>
Ticket