next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
NumericalSchubertCalculus :: LRtriple

LRtriple -- runs the Littlewood-Richardson homotopy to solve a generic Schubert problem.

Synopsis

Description

LRtriple applies the Littlewood-Richardson homotopies to solve a generic instance of a Schubert problem defined by at least three Schubert conditions. The flags defining the instance are generated in the routine.

Use the method parseTriplet to parse the three strings f, p, and s into proper Macaulay2 polynomials, solution lists, and complex matrices.

The example below computes all 3-planes that satisfy [2 4 6]3.

i1 : R := ZZ; n := 6; m := matrix{{3, 2, 4, 6}};

              1        4
o3 : Matrix ZZ  <--- ZZ
i4 : result := LRtriple(n,m);
PHCv2.4.27 released 2016-10-16

the input data for phc -e : 
5
6
[ 2 4 6 ]^3;
0
0
0
/var/folders/11/t6mmkf11455d4nt0fn639c6h0000gn/T/M2-12064-0/3PHCout
0
y
y
0
0
0

writing data to file /var/folders/11/t6mmkf11455d4nt0fn639c6h0000gn/T/M2-12064-0/2PHCip
running phc -e, session output to /var/folders/11/t6mmkf11455d4nt0fn639c6h0000gn/T/M2-12064-0/4PHCses
                writing output to /var/folders/11/t6mmkf11455d4nt0fn639c6h0000gn/T/M2-12064-0/3PHCout
opening output file /var/folders/11/t6mmkf11455d4nt0fn639c6h0000gn/T/M2-12064-0/5PHCsolutions
i5 : stdio << "the fixed flags :\n" << result_0;
the fixed flags :
 -8.29022886565264E-01  -5.59214675729274E-01  9.76827504981400E-02   9.95217604474076E-01 -8.45011068078958E-01  -5.34748814700939E-01 -9.29606821445155E-01  -3.68552787972953E-01  9.65324815297876E-01   2.61051720871787E-01 -1.11985961958912E-02   9.99937293755584E-01
  8.01669576350549E-01  -5.97767421623102E-01  9.69508938895885E-01   2.45055947491537E-01 -2.10595556557071E-01  -9.77573276822979E-01  5.76944850730193E-01   8.16783104144494E-01 -9.89107634125742E-01   1.47194049180586E-01 -2.73296918048886E-01  -9.61929724348396E-01
  6.12766793179059E-01   7.90263789615248E-01  6.12206984460356E-03   9.99981259954814E-01 -4.53924900687049E-01  -8.91039945533449E-01 -1.82813607152295E-01  -9.83147590669868E-01 -4.94375801484574E-01   8.69248276907401E-01  2.04187054081962E-01  -9.78931890861325E-01
 -9.97943836066348E-01   6.40944619852738E-02 -7.02060551514187E-01   7.12117252991104E-01  8.82093493870176E-01  -4.71074376369491E-01 -9.85742835477572E-01   1.68258914487869E-01  9.99298213083565E-01  -3.74577272134011E-02 -3.19463994353325E-01   9.47598415106219E-01
  9.17807244782684E-01  -3.97026272964924E-01 -7.97524830005053E-01  -6.03286122437281E-01  9.06868571189345E-01  -4.21413567162943E-01 -1.26118609314453E-01   9.92015169432700E-01  1.88852962137819E-01  -9.82005376101257E-01 -9.74268107568927E-01  -2.25392223854466E-01
  8.07020286828348E-01  -5.90523713873957E-01  4.07376260165538E-01  -9.13260413383576E-01 -8.15289839077833E-01   5.79053087632249E-01  9.98854562104005E-01   4.78493862449350E-02 -9.79972530659555E-01   1.99132717434145E-01 -6.81605912005203E-01  -7.31719468594047E-01

THE MOVED FLAG :
  1  1  1  1  1  1
 -1 -1 -1 -1 -1  0
  1  1  1  1  0  0
 -1 -1 -1  0  0  0
  1  1  0  0  0  0
 -1  0  0  0  0  0

THE 3-SOLUTION PLANES :
 -4.53965964235655E-01   1.18899431834912E-01  0.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00
  1.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00
  0.00000000000000E+00   0.00000000000000E+00  2.29435028911436E-01   1.79083091093778E-01  0.00000000000000E+00   0.00000000000000E+00
  0.00000000000000E+00   0.00000000000000E+00  1.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00
  0.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00 -6.52613419441330E-02  -9.82963572148417E-01
  0.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00  1.00000000000000E+00   0.00000000000000E+00

 -1.35778403635397E+00  -1.51884955761909E+00  0.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00
  1.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00
  0.00000000000000E+00   0.00000000000000E+00 -4.83403257782166E-01  -5.02632809813715E-01  0.00000000000000E+00   0.00000000000000E+00
  0.00000000000000E+00   0.00000000000000E+00  1.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00
  0.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00 -8.39088147915431E-01  -5.65660351286339E-01
  0.00000000000000E+00   0.00000000000000E+00  0.00000000000000E+00   0.00000000000000E+00  1.00000000000000E+00   0.00000000000000E+00
i6 : stdio << "polynomial system solved :\n" << result_1;
polynomial system solved :
 6 3

+(-3.56705919301439E-01 + 4.98426210005591E+00*i)*x11*x32*x53
+(-1.72642368665351E+00 + 1.02570155722498E+01*i)*x11*x32
+( 5.51899391845285E+00 + 4.69443833660856E+00*i)*x11*x53
+( 6.99112443978732E-01 + 1.55606810547079E-01*i)*x32*x53
+(-6.84955574113303E-01 + 1.23838444503588E+01*i)*x11
+( 3.08942694319184E+00 + 8.17165957494603E-01*i)*x32
+( 3.02865817477227E+00 + 1.80004351838856E+00*i)*x53
+(-2.68547307910624E-02 + 6.55274210734938E+00*i);

+(-1.17478312386843E+00 + 2.26354763465130E+00*i)*x11*x32*x53
+( 1.05063564313370E+01 - 7.26099005487244E-02*i)*x11*x32
+(-3.40232518425028E+00 - 2.04181866651161E+01*i)*x11*x53
+( 3.11516124776645E+00 + 7.45340300066674E+00*i)*x32*x53
+( 1.87497835400889E+01 - 1.27717907885198E+01*i)*x11
+(-1.38462533712059E+00 + 3.35060286864898E+00*i)*x32
+(-3.48024330223633E+00 - 1.11074215229965E+01*i)*x53
+( 9.43411484483972E+00 - 7.86321490391898E+00*i);

+( 1.25781612885591E+01 - 6.03847008503803E+00*i)*x11*x32*x53
+( 1.53184005623173E+01 - 1.72530911420793E+00*i)*x11*x32
+( 6.43849797122673E+00 - 7.40951776881755E+00*i)*x11*x53
+( 7.23829032381867E+00 - 6.39089721721376E-01*i)*x32*x53
+( 1.27913908587530E+01 - 3.18453434113125E+00*i)*x11
+( 4.08966553075589E+00 + 9.89511300079834E-01*i)*x32
+( 3.42489422184151E+00 - 3.83087964180077E+00*i)*x53
+( 5.26379975931046E+00 - 1.98262996563073E+00*i);

+( 3.90147881433556E+00 + 9.37648343879722E-01*i)*x11*x32*x53
+( 1.68406841667549E+01 + 7.29525471502446E+00*i)*x11*x32
+( 2.82492221009920E+00 - 2.01838614140541E+01*i)*x11*x53
+( 2.06020205249338E+00 + 7.66228767874837E+00*i)*x32*x53
+( 2.05762511797511E+01 - 4.44379599463613E+00*i)*x11
+( 1.46945614643293E+00 + 2.76025580578704E+00*i)*x32
+(-6.19542483381137E-01 - 1.10840303947763E+01*i)*x53
+( 1.04238696921857E+01 - 4.34758122318481E+00*i);

+( 1.13603877633030E-01 - 3.16426776761987E+00*i)*x11*x32*x53
+( 1.38305404578201E+01 + 2.89108685309796E+00*i)*x11*x32
+(-2.40341456257187E+00 - 2.37860828098966E+01*i)*x11*x53
+( 1.71541825692051E+00 + 5.01784278100090E+00*i)*x32*x53
+( 1.70430832943293E+01 - 1.10144527281662E+01*i)*x11
+( 1.28021170067460E+00 + 1.90690514696846E+00*i)*x32
+(-3.23392053296552E+00 - 1.27727030153111E+01*i)*x53
+( 8.45777130161303E+00 - 6.61525331712569E+00*i);

+(-9.52626595512000E+00 + 3.78289284158651E-01*i)*x11*x32*x53
+(-5.12683153013040E+00 - 6.93513519191898E-01*i)*x11*x32
+(-1.79636152250254E+00 - 1.30023058835334E+01*i)*x11*x53
+(-4.26998607893702E+00 + 3.40176935680298E+00*i)*x32*x53
+( 5.69497120848433E+00 - 7.08619016589717E+00*i)*x11
+(-3.35110499582458E+00 - 4.91413921383599E-01*i)*x32
+(-2.30398449912018E+00 - 6.75598339121860E+00*i)*x53
+( 2.37140649202908E+00 - 3.89374124983478E+00*i);
i7 : stdio << "solutions :\n" << result_2;
solutions :
2 3
===========================================================================
solution 1 :
t :  1.00000000000000E+00   0.00000000000000E+00
m : 1
the solution for t :
 x11 : -4.53965964235655E-01   1.18899431834912E-01
 x32 :  2.29435028911436E-01   1.79083091093778E-01
 x53 : -6.52613419441330E-02  -9.82963572148417E-01
== err :  0.000E+00 = rco :  1.000E+00 = res :  2.013E-15 ==
solution 2 :
t :  1.00000000000000E+00   0.00000000000000E+00
m : 1
the solution for t :
 x11 : -1.35778403635397E+00  -1.51884955761909E+00
 x32 : -4.83403257782166E-01  -5.02632809813715E-01
 x53 : -8.39088147915431E-01  -5.65660351286339E-01
== err :  0.000E+00 = rco :  1.000E+00 = res :  2.013E-15 ==

TIMING INFORMATION for resolving a Schubert problem
The elapsed time in seconds was                  0.011271000 =  0h 0m 0s 11ms
User time in seconds was                         0.011099000 =  0h 0m 0s 11ms
System CPU time in seconds was                   0.000172000 =  0h 0m 0s  0ms
Non-I/O page faults was                                 148
I/O page faults was                                       0
Signals delivered was                                     0
Swaps was                                                 0
Total context switches was                                2

Seed used in random number generators : 12068.
PHCv2.4.27 released 2016-10-16

Ways to use LRtriple :