Given a list of generators of an ideal I, this function creates an embedding and then runs a cascade of homotopies. The output is a NumericalVariety that contains a WitnessSet for each pure dimensional variety contained in V(I).
i1 : R = CC[x,y,z]; |
i2 : L = { z*(x+y), z*(x-y) }; |
i3 : WitSets = cascade(L) writing output to file /var/folders/40/dy88l5qd361391m_3v2m51bm0000gn/T/M2-44701-0/1PHCoutput calling phc -c < /var/folders/40/dy88l5qd361391m_3v2m51bm0000gn/T/M2-44701-0/2PHCbatch > /var/folders/40/dy88l5qd361391m_3v2m51bm0000gn/T/M2-44701-0/4PHCsession output of phc -c is in file /var/folders/40/dy88l5qd361391m_3v2m51bm0000gn/T/M2-44701-0/1PHCoutput ... constructing witness sets ... o3 = A variety of dimension 2 with components in dim 1: [dim=1,deg=1] dim 2: [dim=2,deg=1] o3 : NumericalVariety |
i4 : W=first WitSets#1 o4 = [dim=1,deg=1] o4 : WitnessSet |
The function cascade extends the ring of the inputted system with slack variables beginning with zz. Each witness set in contains the equations, points, and slices of the embedded system.
i5 : W#Equations o5 = ideal ((.97573 + .218976*ii)zz1 + x*z + y*z, (- .98618 - .16568*ii)zz1 + ------------------------------------------------------------------------ x*z - y*z, zz1) o5 : Ideal of CC {x, y, z, zz1} 53 |
i6 : W#Points o6 = {{1.95866e-107-3.40637e-108*ii, 1.36255e-107, .993651+.112505*ii, 0}} o6 : VerticalList |
i7 : W#Slice o7 = {.879234 - .476389*ii + (.232678 - .972554*ii)x + (- .263104 - ------------------------------------------------------------------------ .964767*ii)y + (- .820056 + .572283*ii)z + (.861897 + .507083*ii)zz1} o7 : List |
Coefficient ring of the polynomial system must be of type ComplexField.