Blackbox monodromy solver for a square polynomial system without parameters. The example below finds all six intersection of a generic cubic with its quadratic polar curve.
i1 : setRandomSeed 0; |
i2 : R=CC[x,y,z]; |
i3 : F=random(3,R); -- warning: experimental computation over inexact field begun -- results not reliable (one warning given per session) |
i4 : P=sum apply(gens R,g->diff(g,F)*random CC); |
i5 : sparseMonodromySolve polySystem {F,P,random(1,R)-1} o5 = {{.212986+.505809*ii, -.0640254-.418811*ii, .174869+.144954*ii}, ------------------------------------------------------------------------ {.040931+.735463*ii, -.751621+.636639*ii, -.809224+.075569*ii}, ------------------------------------------------------------------------ {.453473+.301343*ii, -1.01938-.509842*ii, -.592697-.68244*ii}, ------------------------------------------------------------------------ {-.147508-.127555*ii, -.071535-.796132*ii, .39264+.652917*ii}, ------------------------------------------------------------------------ {-1.08883+.94758*ii, -.222671+1.03031*ii, .185791+1.24332*ii}, ------------------------------------------------------------------------ {.449377+.392627*ii, .105165-.142662*ii, -.21861+.38705*ii}} o5 : List |
For systems with dense support such as the above, the number of paths tracked is generally not optimal, though timings may be comparable.