The classical convex-linear homotopy that connects target with start system is
![]() |
(9) |
By choosing a random complex number
, we can reach all
complex solutions even when all start solutions are real,
see Figure 7.
At t=0 we have the degenerate configuration which is trivial to solve.
By following the solution paths defined by the homotopy we arrive for t = 1 at two real and two complex conjugated solutions of the target system. Note that in the x-component we have only two different paths.
It is recommended to put the algebraic formulation in a file to avoid typing it over many times. The file mickey of the demonstration database starts as follows
2
x**2 + 4*y**2 - 4;
2*y**2 - x;
By typing phc -b mickey /tmp/mickey.bphc the black-box solver is invoked. The result can be seen in the file /tmp/mickey.bphc.
Next a session with phc in full mode is represented choosing default options.
your_machine_prompt: phc mickey /tmp/mickey.phc
Welcome to PHC (Polynomial Homotopy Continuation) Version 2.0.
Running in full mode. Note also the following options:
phc -s : Equation and variable Scaling on system and solutions
phc -d : Linear and nonlinear Reduction w.r.t. the total degree
phc -r : Root counting and Construction of start systems
phc -m : Mixed-Volume Computation by four lifting strategies
phc -p : Polynomial Continuation by a homotopy in one parameter
phc -v : Validation, refinement and purification of solutions
phc -e : SAGBI homotopies for a problem in enumerative geometry
phc -b : Batch or black-box processing
MENU for Scaling Polynomial Systems :
0 : No Scaling : leave the menu
1 : Equation Scaling : divide by average coefficient
2 : Variable Scaling : change of variables, as z = (2^c)*x
Type 0, 1, or 2 to select scaling, or i for info : 0
MENU for Reducing Polynomial Systems :
0 : No Reduction : leave the menu
1 : Linear Reduction : triangulate coefficient matrix
2 : Sparse Linear Reduction : diagonalize coefficient matrix
3 : Nonlinear Reduction : S-polynomial combinations
Type 0, 1, 2, or 3 to select reduction, or i for info : 0
MENU with ROOT COUNTS and Methods to Construct START SYSTEMS :
0. exit - current start system is based on total degree : 4
PRODUCT HOMOTOPIES based on DEGREES ------------------------------
1. multi-homogeneous Bezout number (one partition)
2. partitioned linear-product Bezout number (many partitions)
3. general linear-product Bezout number (set structure)
4. symmetric general linear-product Bezout number (group action)
POLYHEDRAL HOMOTOPIES based on NEWTON POLYTOPES ------------------
5. combination between Bezout and BKK Bound (implicit lifting)
6. mixed-volume computation (static lifting)
7. incremental mixed-volume computation (dynamic lifting)
8. symmetric mixed-volume computation (symmetric lifting)
START SYSTEM DEFINED BY USER -------------------------------------
9. you can give your own start system
Type a number between 0 and 9, eventually preceded by i for info : 0
Homotopy is H(x,t) = a*(1-t)^k * Q(x) + t^k * P(x) = 0, t in [0,1],
with Q(x) = 0 a start system, and P(x) = 0 the target system.
MENU with settings for homotopy :
relaxation constant k : 2
regularity constant a : 9.95793808261866E-01 9.16225486838865E-02
target value for t : 1.00000000000000E+00 0.00000000000000E+00
projective transformation : no
Type k, a, t, or p to change, preceded by i for info. Type 0 to exit : 0
****************** CURRENT CONTINUATION PARAMETERS *****************
GLOBAL MONITOR :
1. the condition of the homotopy : 0
2. number of paths tracked simultaneously : 1
3. maximum number of steps along a path : 500
4. distance from target to start end game : 1.000E-01
5. order of extrapolator in end game : 0
6. maximum number of re-runs : 1
STEP CONTROL (PREDICTOR) : along path : end game
7: 8. type ( x:Sec,t:Rea ):( x:Sec,t:Rea ) : 0 : 0
9:10. minimum step size : 1.000E-06 : 1.000E-08
11:12. maximum step size : 1.000E-01 : 5.000E-02
13:14. reduction factor for step size : 7.000E-01 : 5.000E-01
15:16. expansion factor for step size : 1.250E+00 : 1.100E+00
17:18. expansion threshold : 1 : 1
PATH CLOSENESS (CORRECTOR) : along path : end game
19:20. maximum number of iterations : 4 : 4
21:22. relative precision for residuals : 1.000E-09 : 1.000E-11
23:24. absolute precision for residuals : 1.000E-09 : 1.000E-11
25:26. relative precision for corrections : 1.000E-09 : 1.000E-11
27:28. absolute precision for corrections : 1.000E-09 : 1.000E-11
SOLUTIONS (TOLERANCES): along path : end game
29:30. inverse condition of Jacobian : 1.000E-04 : 1.000E-12
31:32. clustering of solutions : 1.000E-04 : 1.000E-12
33:34. solution at infinity : 1.000E+04 : 1.000E+12
********************************************************************
Type a number to change (0 to exit), preceded by i for info : 0
MENU for Output Information during Continuation :
0 : no intermediate output information during continuation
1 : only the final solutions at the end of the paths
2 : intermediate solutions at each step along the paths
3 : information of the predictor: t and step length
4 : information of the corrector: corrections and residuals
5 : intermediate solutions and information of the predictor
6 : intermediate solutions and information of the corrector
7 : information of predictor and corrector
8 : intermediate solutions, info of predictor and corrector
Type a number between 0 and 8 to select output information : 0
No more input expected. See output file for results.
your_machine_prompt:
In full mode, the program runs through the scaling and reduction menu, shows the user all root-counting possibilities and, after the choice of start system, invokes the polynomial continuation.