[BACK]Return to floating_polyhedral_continuation.ads CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Root_Counts / Stalift

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Stalift/floating_polyhedral_continuation.ads, Revision 1.1.1.1

1.1       maekawa     1: with text_io;                            use text_io;
                      2: with Standard_Integer_Vectors;
                      3: with Standard_Floating_Vectors;
                      4: with Standard_Complex_VecVecs;
                      5: with Standard_Complex_Laur_Systems;      use Standard_Complex_Laur_Systems;
                      6: with Standard_Complex_Laur_SysFun;       use Standard_Complex_Laur_SysFun;
                      7: with Standard_Complex_Laur_Jacomats;     use Standard_Complex_Laur_Jacomats;
                      8: with Exponent_Vectors;                   use Exponent_Vectors;
                      9: with Arrays_of_Floating_Vector_Lists;    use Arrays_of_Floating_Vector_Lists;
                     10: with Standard_Complex_Solutions;         use Standard_Complex_Solutions;
                     11: with Floating_Mixed_Subdivisions;        use Floating_Mixed_Subdivisions;
                     12:
                     13: package Floating_Polyhedral_Continuation is
                     14:
                     15: -- DESCRIPTION :
                     16: --   This package implements polyhedral homotopy continuation methods,
                     17: --   based on mixed subdivision induced by floating-point lifting.
                     18: --   The continuation is organized in three layers:
                     19: --     1. inner normal, tracking of paths for one poly
                     20: --     2. mixed cell, recursion is needed when the cell is not fine;
                     21: --     3. mixed subdivision, for all cells in the subdivision.
                     22: --   Each layer has two versions: a silent and a reporting version.
                     23:
                     24: -- FIRST LAYER : polyhedral continuation for one transformation.
                     25:
                     26:   procedure Mixed_Continuation
                     27:                 ( mix : in Standard_Integer_Vectors.Vector;
                     28:                   lifted : in Array_of_Lists; h : in Eval_Coeff_Laur_Sys;
                     29:                   c : in Standard_Complex_VecVecs.VecVec;
                     30:                   e : in Exponent_Vectors_Array;
                     31:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
                     32:                   normal : in Standard_Floating_Vectors.Vector;
                     33:                   sols : in out Solution_List );
                     34:
                     35:   procedure Mixed_Continuation
                     36:                 ( file : in file_type;
                     37:                   mix : in Standard_Integer_Vectors.Vector;
                     38:                   lifted : in Array_of_Lists; h : in Eval_Coeff_Laur_Sys;
                     39:                   c : in Standard_Complex_VecVecs.VecVec;
                     40:                   e : in Exponent_Vectors_Array;
                     41:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
                     42:                   normal : in Standard_Floating_Vectors.Vector;
                     43:                   sols : in out Solution_List );
                     44:
                     45:   -- DESCRIPTION : polyhedral continuation with coefficient homotopy.
                     46:
                     47:   -- ON ENTRY :
                     48:   --   file       file to write intermediate results on;
                     49:   --   mix        type of mixture;
                     50:   --   lifted     lifted supports of polynomial system, in original order;
                     51:   --   h          coefficient homotopy;
                     52:   --   c          coefficients of homotopy;
                     53:   --   e          the exponent vectors of the unlifted system;
                     54:   --   j          coefficient Jacobian matrix;
                     55:   --   m          multiplication factors in coefficient Jacobian matrix;
                     56:   --   normal     normal to a mixed cell;
                     57:   --   sols       start solutions of the subsystem which corresponds
                     58:   --              with the mixed cell with given inner normal.
                     59:
                     60:   -- ON RETURN :
                     61:   --   sols       the solutions of p, which correspond to one mixed cell.
                     62:
                     63: -- SECOND LAYER : polyhedral continuaton for one mixed cell.
                     64:
                     65:   procedure Mixed_Solve
                     66:                 ( p : in Laur_Sys; lifted : in Array_of_Lists;
                     67:                   h : in Eval_Coeff_Laur_Sys;
                     68:                   c : in Standard_Complex_VecVecs.VecVec;
                     69:                   e : in Exponent_Vectors_Array;
                     70:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
                     71:                   mix : in Standard_Integer_Vectors.Vector;
                     72:                   mic : in Mixed_Cell;
                     73:                   sols,sols_last : in out Solution_List );
                     74:
                     75:   procedure Mixed_Solve
                     76:                 ( file : in file_type;
                     77:                   p : in Laur_Sys; lifted : in Array_of_Lists;
                     78:                   h : in Eval_Coeff_Laur_Sys;
                     79:                   c : in Standard_Complex_VecVecs.VecVec;
                     80:                   e : in Exponent_Vectors_Array;
                     81:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
                     82:                   mix : in Standard_Integer_Vectors.Vector;
                     83:                   mic : in Mixed_Cell;
                     84:                   sols,sols_last : in out Solution_List );
                     85:
                     86:   -- DESCRIPTION :
                     87:   --   Polyhedral coefficient-homotopy continuation for one mixed cell.
                     88:
                     89:   -- REQUIRED : polynomials in p must be ordered according to mix.
                     90:
                     91:   -- ON ENTRY :
                     92:   --   file       a file to write intermediate results on;
                     93:   --   p          non-lifted Laurent polynomial system;
                     94:   --   lifted     lifted supports, with original order of points;
                     95:   --   h          coefficient homotopy;
                     96:   --   c          coefficients of homotopy;
                     97:   --   e          the exponent vectors of the unlifted system;
                     98:   --   j          coefficient Jacobian matrix;
                     99:   --   m          multiplication factors in coefficient Jacobian matrix;
                    100:   --   mix        type of mixture;
                    101:   --   mic        a mixed cell.
                    102:
                    103:   -- ON RETURN :
                    104:   --   sols       the solution list of p;
                    105:   --   sols_last  pointer to last element of the list sols.
                    106:
                    107: -- THIRD LAYER : polyhedral continuation for a mixed subdivision.
                    108:
                    109:   procedure Mixed_Solve
                    110:                 ( p : in Laur_Sys; lifted : in Array_of_Lists;
                    111:                   h : in Eval_Coeff_Laur_Sys;
                    112:                   c : in Standard_Complex_VecVecs.VecVec;
                    113:                   e : in Exponent_Vectors_Array;
                    114:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
                    115:                   mix : in Standard_Integer_Vectors.Vector;
                    116:                   mixsub : in Mixed_Subdivision;
                    117:                   sols : in out Solution_List );
                    118:
                    119:   procedure Mixed_Solve
                    120:                 ( file : in file_type;
                    121:                   p : in Laur_Sys; lifted : in Array_of_Lists;
                    122:                   h : in Eval_Coeff_Laur_Sys;
                    123:                   c : in Standard_Complex_VecVecs.VecVec;
                    124:                   e : in Exponent_Vectors_Array;
                    125:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
                    126:                   mix : in Standard_Integer_Vectors.Vector;
                    127:                   mixsub : in Mixed_Subdivision;
                    128:                   sols : in out Solution_List );
                    129:
                    130:   -- DESCRIPTION :
                    131:   --   Polyhedral coefficient-homotopy continuation for a mixed subdivision.
                    132:
                    133:   -- REQUIRED : polynomials in p must be ordered according to mix.
                    134:
                    135:   -- ON ENTRY :
                    136:   --   file       a file to write intermediate results on;
                    137:   --   p          non-lifted Laurent polynomial system;
                    138:   --   lifted     lifted supports, in original order;
                    139:   --   h          coefficient homotopy;
                    140:   --   c          coefficients of homotopy;
                    141:   --   e          the exponent vectors of the unlifted system;
                    142:   --   j          coefficient Jacobian matrix;
                    143:   --   m          multiplication factors in coefficient Jacobian matrix;
                    144:   --   mix        type of mixture;
                    145:   --   mixsub     a collection of mixed cells.
                    146:
                    147:   -- ON RETURN :
                    148:   --   sols       the solution list of p.
                    149:
                    150: end Floating_Polyhedral_Continuation;

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>