# solveRationalSystem -- approximates solutions to a rational system of equations

## Synopsis

• Usage:
solveRationalSystem (f)
• Inputs:
• f, a list, a system of rational equations with a finite number of solutions
• Optional inputs:
• Verbose => ..., default value false, option to specify whether additional output is wanted
• Outputs:
• a list, containing the solutions of f, each of type Point
• Consequences:
• converts the rational system into a Laurent system, invokes the commands phc -b and phc -z,
• adds slack variables if needed (i.e. if system is overdetermined),
• writes the system to temporary file,
• launches the blackbox solver,
• stores the output of phc in a temporary file,
• parses and outputs the solutions.

## Description

This function returns numerical approximations of all complex solutions of a rational system. The function converts the system to a Laurent polynomial system and then calls PHCpack's blackbox solver.

 i1 : R = QQ[x,y,z]; i2 : system = {y-x^2, z-x^3, (x+y+z-1)/x}; i3 : sols = solveRationalSystem(system) o3 = {{.543689, .295598, .160713}, {-.771845-1.11514*ii, -.647799+1.72143*ii, ------------------------------------------------------------------------ 2.41964-.606291*ii}, {-.771845+1.11514*ii, -.647799-1.72143*ii, ------------------------------------------------------------------------ 2.41964+.606291*ii}} o3 : List

The solutions are of type Point. Each Point comes with diagnostics. For example, LastT is the end value of the continuation parameter; if it equals 1, then the solver reached the end of the path properly.

 i4 : peek first sols o4 = Point{ConditionNumber => 4.87567 } Coordinates => {.543689, .295598, .160713} LastT => 1 SolutionStatus => Regular