# trackPaths -- tracks paths defined by a typical homotopy between start and end systems

## Synopsis

• Usage:
solsT = trackPaths(T,S,solsS)
• Inputs:
• T, a list, of polynomials, called the target system
• S, a list, of polynomials, called the start system
• solsS, a list, solutions of S
• Optional inputs:
• gamma => ..., default value 0, Option to specify the value of the constant in the gamma trick
• interactive => ..., default value false, Option to run phc -p in interactive mode.
• intermediateSolutions => ..., default value false, option to get all intermediate solutions on a path
• loadSettingsPath => ..., default value , option to load the settings of the path trackers for a reproducible rerun
• numThreads => ..., default value 0, Option to define the number of threads in the path tracker.
• saveSettingsPath => ..., default value , option to save the settings of the path trackers for a reproducible rerun
• seeProgress => ..., default value false, Option to follow the progress of the multithreaded path tracker.
• tDegree => ..., default value 2, Option to specify the degree of the continuation parameter
• Verbose => ..., default value false, option to specify whether additional output is wanted
• Outputs:
• solsT, a list, containing the solutions of T that are at the ends of the paths starting at solsS
• Consequences:
• Writes the start system and its solutions to temporary files
• Invokes the command phc -p
• After running phc -z, stores output of phc in temporary file
• Parses and outputs the solutions.

## Description

A linear homotopy between target T and start S has the form (1-Lambda)*S + Lambda*T = 0. The method trackPaths tracks the solution paths defined by the homotopy for Lambda going from 0 to 1. In the example below, we first construct a start system using polyhedral homotopies using mixedVolume.

 i1 : R = CC[x,y]; i2 : f = { x^3*y^5 + y^2 + x^2*y, x*y + x^2 - 1}; i3 : (m,q,qsols) = mixedVolume(f,StartSystem=>true); i4 : fsols = trackPaths(f,q,qsols) o4 = {{-.894935-.624334*ii, .143333+1.14868*ii}, {-1.59272, .964857}, ------------------------------------------------------------------------ {.742585-.425943*ii, .270685+1.00715*ii}, {1.33076+.335184*ii, ------------------------------------------------------------------------ -.62414-.513163*ii}, {1.33076-.335184*ii, -.62414+.513163*ii}, ------------------------------------------------------------------------ {-.764107, -.544612}, {.742585+.425943*ii, .270685-1.00715*ii}, ------------------------------------------------------------------------ {-.894935+.624334*ii, .143333-1.14868*ii}} o4 : List

• gamma -- the constant in the gamma trick, optional input for trackPaths
• interactive -- flag to run phc -p or phc -m in interactive mode
• intermediateSolutions -- option of trackPaths to get all intermediate solutions on a path
• loadSettingsPath -- option of trackPaths to load the settings for a reproducible rerun
• saveSettingsPath -- option of trackPaths to save the settings for a reproducible rerun