From ApCoCoAWiki
Revision as of 10:47, 12 May 2010 by (talk)


Solves a zero dimensional non-homogeneous polynomial system of equations by user defined homotopy.


Bertini.BUHSolve(P:LIST, SSys:LIST, Gamma:STRING, SSol:LIST, ConfigSet:LIST)


Please note: The function(s) explained on this page is/are using the ApCoCoAServer. You will have to start the ApCoCoAServer in order to use it/them.

  • @param P: List of polynomials of the given system.

  • @param SSys: List of polynomials of the start system for homotopy.

  • @param Gamma: Complex number in the form "a+b*I" ( e.g. "0.8 - 1.2*I" ).

  • @param SSol: List of lists containing the start solution for the homotopy. The elements of Lists are strings.

  • @param ConfigSet: List of strings representing configurations to be used. Bertini uses multiple configuration settings. These configurations should be provided by the user. If you want to use default configurations then the ConfigSet := ["USERHOMOTOPY: 1"]. For details about configuration settings see Bertini manual http://www.nd.edu/~sommese/bertini/BertiniUsersManual.pdf.

  • @return A list of lists containing real solutions of system P.


-- We want to solve the system x^2-1=0, y^2-1=0, where Gamma=0.8-1.2I. 
-- The two start solutions for the homotopy are [[-1.0, 0.0 ],[-1.0,0.0]] and [[1.0, 0.0],[1.0,0.0]].
-- The start system for the homotopy is x^2=0, y^2=0. 

Use S ::= QQ[x,y];              
P := [x^2-1, y^2-1];
SSys := [x^2,y^2];
Gamma := <quotes>0.8 - 1.2*I</quotes>;
SSol := [[[<quotes>-1.0</quotes>, <quotes>0.0</quotes>], [<quotes>-1.0</quotes>,<quotes>0.0</quotes>]],[[<quotes>1.0</quotes>, <quotes>0.0</quotes>],[<quotes>1.0</quotes>,<quotes>0.0</quotes>]]];
ConfigSet := [<quotes>USERHOMOTOPY: 1</quotes>];

-- Then we compute the solution with
Bertini.BUHSolve(P, SSys, Gamma, SSol, ConfigSet);

-- And we achieve a list of lists containing real solutions.
[[-1000000000000043/1000000000000000, -1000000000000043/1000000000000000],
 [1000000000000043/1000000000000000, 1000000000000043/1000000000000000]]

For Bertini output files please refer to ApCoCoA directory/Bertini.

See also

Introduction to CoCoAServer