next | previous | forward | backward | up | top | index | toc | Macaulay2 website
NumericalSchubertCalculus :: solveSimpleSchubert

solveSimpleSchubert -- uses Pieri homotopy algorithm to solve a simple Schubert problem

Synopsis

Description

a Schubert variety in the Grassmannian $Gr(k,n)$ is represented by a partition $l$ (a weakly decreasing list of nonegative integers less than $n-k$) and a flag $F$ (given as an $n\times n$ matrix). A Schubert problem is a list of Schubert varieties $(l_1, F_1), \ldots, (l_m, F_m)$ such that $|l_1|+|l_2| + \cdots + |l_m| = k(n-k)$, where $|l_i|$ is the sum of the entries of $l_i$.

The function solves a Schubert problem by the Pieri homotopy algorithm. It assumes all partitions except possibly the first two are simple (e.g. equal to {1}). This algorithm uses homotopy continuation to track solutions of a simpler problem to a general problem according to the specializations of the geometric Pieri rule.

This algorithm is described in the paper: Huber, Sottile, and Sturmfels, "Numerical Schubert Calculus", J. Symb. Comp., 26 (1998), 767-788.

for instance, the Schubert problem {2,1}$^2$ {1}$^3$ in $Gr(3,6)$ has six solutions. Consider the following instance given by random flags

i1 : k = 3;
i2 : n = 6;
i3 : SchPblm = {
         ({2,1}, random(CC^6,CC^6)),
         ({2,1}, random(CC^6,CC^6)),
         ({1}, random(CC^6,CC^6)),
         ({1}, random(CC^6,CC^6)),
         ({1}, random(CC^6,CC^6))
         };

Its solutions to this instance

i4 : solveSimpleSchubert(SchPblm, k,n)

o4 = {| .426402+.387024ii     -.767149+.88679ii  -.299645+.514617ii  |, |
      | .350714+.0538475ii    -1.21057+.628777ii .141417+.670654ii   |  |
      | -.00144609+.0615438ii -1.36249+.957226ii -.135443+.402697ii  |  |
      | .236976-.167254ii     -.849462+.793055ii -.0797972+.62109ii  |  |
      | .251567+.0963873ii    -.584053+.120158ii -.0811626+.616193ii |  |
      | .16406+.140612ii      .147134+1.02782ii  .700057+.537171ii   |  |
     ------------------------------------------------------------------------
     .0495704+.786748ii  1.06866+.233544ii -.050555-.348219ii  |, |
     -.206829-.120362ii  1.77239+.496154ii -.495726-.478418ii  |  |
     -.649096-.0452157ii 1.69103+.597783ii -.0259685-.564318ii |  |
     -.288447+.394938ii  .928957+.172057ii -.307244-.389747ii  |  |
     -.458603+.164307ii  1.24868+.022694ii -.109204-.543584ii  |  |
     -.159612+.837151ii  .145965-.131173ii -.311686-.109522ii  |  |
     ------------------------------------------------------------------------
     .786345+.0390369ii 2.04868+.698543ii -.111359-.0502477ii |, |
     .850935+.235992ii  2.99936+1.61752ii -.249658-.107736ii  |  |
     .583656+.186089ii  3.03503+1.65758ii -.036834-.234947ii  |  |
     .739055-.656875ii  1.87368+.627178ii -.203199-.0546734ii |  |
     .900963+.0645478ii 2.00882+.70537ii  -.0684508-.152856ii |  |
     .488143-.479836ii  .601493-.588086ii .0472758+.081476ii  |  |
     ------------------------------------------------------------------------
     .29604+.607542ii    -.426858-.110817ii   -.120347+.0333611ii  |, |
     .0792163+.0318581ii -.264013-.679973ii   -.172278-.0120918ii  |  |
     -.307005+.0794883ii -.488333-.457673ii   -.0312588-.143993ii  |  |
     .0557081+.142424ii  -.514797-.16939ii    -.165842+.0348618ii  |  |
     -.0644923+.200208ii -.00925758-.689311ii -.0470698-.0463538ii |  |
     .0883581+.490683ii  -.344437+.638705ii   .151061+.124719ii    |  |
     ------------------------------------------------------------------------
     .416853+.43068ii     -2.06356+1.47596ii -.555553+.0429811ii  |, |
     .304534+.0650379ii   -3.3745+.909754ii  -.611663+.448933ii   |  |
     -.0510879+.0812111ii -3.56377+1.40773ii -.494457-.0547096ii  |  |
     .223864-.106046ii    -2.10608+1.35519ii -.600561+.286352ii   |  |
     .204877+.130855ii    -1.91259+.304428ii -.579545+.13444ii    |  |
     .170645+.202745ii    .219633+1.87171ii  -.00171043+.686346ii |  |
     ------------------------------------------------------------------------
     .948004+.00971475ii .374969+.499562ii  -.059199+.251334ii |}
     .954212+.376895ii   .636613+.574365ii  .116788+.149588ii  |
     .720595+.326751ii   .530465+.763105ii  .073638+.0777737ii |
     .96532-.698926ii    .256842+.425251ii  .0170751+.221298ii |
     1.08396+.174263ii   .551008+.0768382ii .112884+.198469ii  |
     .689695-.590038ii   .157157+.310587ii  .453721+.129014ii  |

o4 : List

Caveat

Need to input partitions together with flags.

See also

Ways to use solveSimpleSchubert :

For the programmer

The object solveSimpleSchubert is a method function.