Description
This package provides implementations of both the Littlewood-Richardson and Pieri homotopy algorithms for solving (instances of) Schubert problems on Grassmannians using numerical homotopy continuation.
A Schubert problem on the Grassmannian $Gr(k,n)$ is a list of Schubert subvarieties (assumed general) of $Gr(k,n)$ whose codimensions add up to $k(n-k)$, the dimension of the Grassmannian. A Schubert variety is represented by a pair $(c,F)$, where $c$ is a Schubert condition (represented as a partition or a bracket) and $F$ is a flag, represented as an invertible $n\times n$-matrix. The Schubert variety for the pair $(c,F)$ consists of all $k$-planes that satisfy the incidence condition $c$ imposed by the flag $F$.
For a Schubert problem, we may fix one flag for each Schubert condition in the list --- i.e., describe an instance of a given Schubert problem --- and look for the solutions for this instance --- i.e., points in the intersection of the corresponding Schubert varieties. The methods of this package find approximations of these points.
General functions:
Functions implementing homotopies specific to Schubert calculus:
Service functions:
-
setVerboseLevel -- set different levels of information printed on screen
-
bracket2partition -- dictionary between different notations for Schubert conditions.
-
partition2bracket -- dictionary between different notations for Schubert conditions.
-
NSC2phc -- dictionary between different notations for Schubert problems.
Using PHCpack:
An alternative implementation using PHCpack (download from
here) includes the following functions:
-
LRrule -- computes the product of Schubert classes using geometric Littlewood-Richardson rule
-
LRtriple -- uses Littlewood-Richardson homotopy algorithm to solve a Schubert problem
-
parseTriplet -- Parses the output from LRtriple into Macaulay2 objects.
-
LRcheater -- A cheater's homotopy to a real Schubert triple intersection problem
-
PieriRootCount -- the number of solutions to a generic Pieri problem
-
PieriHomotopies -- runs the Pieri homotopies to solve a general hypersurface problem
Note that
LRcheater is similar to
changeFlags
For example, the Schubert problem {2,1}$^3$ in $Gr(3,6)$ with respect to random flags has 2 solutions
i1 : k = 3; n = 6;
|
i3 : SchPblm = {
({2,1}, random(CC^6,CC^6)),
({2,1}, random(CC^6,CC^6)),
({2,1}, random(CC^6,CC^6))
};
|
i4 : solveSchubertProblem(SchPblm, k,n)
o4 = {| -.973546-.443329ii -.193482-.957391ii -.460977-.267623ii |, |
| .153343-.291038ii .339479-1.30008ii -.577303-.171329ii | |
| .326239-.770744ii .120186-1.46205ii -.0769985-.323186ii | |
| -.451322-.514227ii -.144874-.987789ii -.589493-.209825ii | |
| -.0525679-.692383ii .364061-.704785ii -.325325-.185011ii | |
| -.942864-.594173ii -.826353-.203654ii -.236865+.691374ii | |
------------------------------------------------------------------------
-5.47422+1.18674ii -.912706-1.64344ii -.590144+.126046ii |}
-2.80395-.714508ii -.793467-2.20255ii -.016225+.340982ii |
-2.29873-2.34724ii -.905617-2.59114ii .0951404+.355536ii |
-3.36313+2.14592ii -.703202-1.58202ii -.375349+.205204ii |
-3.91243-.845457ii -.528411-.900447ii -.187047+.545512ii |
-4.19554+1.93172ii -1.11528-.480829ii .19859+1.24706ii |
o4 : List
|
References:
-
Vakil, "A geometric Littlewood-Richardson rule",Vakil, Ravi. A geometric Littlewood-Richardson rule. Ann. of Math. (2) 164 (2006), 371-421
-
Huber, Sottile, Sturmfels, "Numerical Schubert calculus", J. Symb. Comp., 26 (1998), 767-788.
-
Sottile, Vakil, Verschelde, "Solving Schubert Problems with Littlewood-Richardson Homotopies", ISSAC 2010, 179-186, ACM, New York, 2010.
-
Leykin and Sottile, "Galois groups of Schubert problems via homotopy computation", Math. Comp. 78 (2009), 1749-1765.
-
Leykin, Martin del Campo, Sottile, Vakil, Verschelde "Numerical Schubert Calculus via the Littlewood-Richardson homotopy algorithm", Math. Comp., 90 (2021), 1407-1433.