[BACK]Return to integer_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/integer_polyhedral_continuation.ads, Revision 1.1

1.1     ! maekawa     1: with text_io;                            use text_io;
        !             2: with Standard_Integer_Vectors;           use Standard_Integer_Vectors;
        !             3: with Standard_Complex_VecVecs;
        !             4: with Standard_Complex_Laur_Systems;      use Standard_Complex_Laur_Systems;
        !             5: with Standard_Complex_Laur_SysFun;       use Standard_Complex_Laur_SysFun;
        !             6: with Standard_Complex_Laur_Jacomats;     use Standard_Complex_Laur_Jacomats;
        !             7: with Exponent_Vectors;                   use Exponent_Vectors;
        !             8: with Arrays_of_Integer_Vector_Lists;     use Arrays_of_Integer_Vector_Lists;
        !             9: with Standard_Complex_Solutions;         use Standard_Complex_Solutions;
        !            10: with Integer_Mixed_Subdivisions;         use Integer_Mixed_Subdivisions;
        !            11:
        !            12: package Integer_Polyhedral_Continuation is
        !            13:
        !            14: -- DESCRIPTION :
        !            15: --   This package implements polyhedral homotopy continuation methods,
        !            16: --   based on mixed subdivision induced by integer-valued lifting.
        !            17: --   The continuation is organized in three layers:
        !            18: --     1. inner normal, tracking of paths for one poly
        !            19: --     2. mixed cell, recursion is needed when the cell is not fine;
        !            20: --     3. mixed subdivision, for all cells in the subdivision.
        !            21: --   Each layer has four versions: all combinations of
        !            22: --     1. homotopy as polynomial system or coefficient homotopy;
        !            23: --     2. silent and reporting version.
        !            24:
        !            25: -- FIRST LAYER : polyhedral continuation for one transformation.
        !            26:
        !            27:   procedure Mixed_Continuation
        !            28:                 ( p : in Laur_Sys; normal : in Vector;
        !            29:                   sols : in out Solution_List );
        !            30:
        !            31:   procedure Mixed_Continuation
        !            32:                 ( file : in file_type; p : in Laur_Sys;
        !            33:                   normal : in Vector; sols : in out Solution_List );
        !            34:
        !            35:   -- DESCRIPTION :
        !            36:   --   Polyhedral continuation for transformed polyhedral homotopy.
        !            37:
        !            38:   -- ON ENTRY :
        !            39:   --   file       file to write intermediate results on;
        !            40:   --   p          a transformed lifted Laurent polynomial system;
        !            41:   --   normal     normal to a mixed cell;
        !            42:   --   sols       start solutions of the subsystem which corresponds
        !            43:   --              with the mixed cell with given inner normal.
        !            44:
        !            45:   -- ON RETURN :
        !            46:   --   sols       the solutions of p, which correspond to one mixed cell.
        !            47:
        !            48:   procedure Mixed_Continuation
        !            49:                 ( mix : in Standard_Integer_Vectors.Vector;
        !            50:                   lifted : in Array_of_Lists; h : in Eval_Coeff_Laur_Sys;
        !            51:                   c : in Standard_Complex_VecVecs.VecVec;
        !            52:                   e : in Exponent_Vectors_Array;
        !            53:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
        !            54:                   normal : in Vector; sols : in out Solution_List );
        !            55:
        !            56:   procedure Mixed_Continuation
        !            57:                 ( file : in file_type; mix : in Standard_Integer_Vectors.Vector;
        !            58:                   lifted : in Array_of_Lists; h : in Eval_Coeff_Laur_Sys;
        !            59:                   c : in Standard_Complex_VecVecs.VecVec;
        !            60:                   e : in Exponent_Vectors_Array;
        !            61:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
        !            62:                   normal : in Vector; sols : in out Solution_List );
        !            63:
        !            64:   -- DESCRIPTION : polyhedral continuation with coefficient homotopy.
        !            65:
        !            66:   -- ON ENTRY :
        !            67:   --   file       file to write intermediate results on;
        !            68:   --   mix        type of mixture;
        !            69:   --   lifted     lifted supports of polynomial system, in original order;
        !            70:   --   h          coefficient homotopy;
        !            71:   --   c          coefficients of homotopy;
        !            72:   --   e          the exponent vectors of the unlifted system;
        !            73:   --   j          coefficient Jacobian matrix;
        !            74:   --   m          multiplication factors in coefficient Jacobian matrix;
        !            75:   --   normal     normal to a mixed cell;
        !            76:   --   sols       start solutions of the subsystem which corresponds
        !            77:   --              with the mixed cell with given inner normal.
        !            78:
        !            79:   -- ON RETURN :
        !            80:   --   sols       the solutions of p, which correspond to one mixed cell.
        !            81:
        !            82: -- SECOND LAYER : polyhedral continuaton for one mixed cell.
        !            83:
        !            84:   procedure Mixed_Solve
        !            85:                 ( p : in Laur_Sys; mix : in Vector;
        !            86:                   mic : in Mixed_Cell; sols,sols_last : in out Solution_List );
        !            87:
        !            88:   procedure Mixed_Solve
        !            89:                 ( file : in file_type; p : in Laur_Sys; mix : in Vector;
        !            90:                   mic : in Mixed_Cell; sols,sols_last : in out Solution_List );
        !            91:
        !            92:   -- DESCRIPTION :
        !            93:   --   Polyhedral continuation for one mixed cell.
        !            94:
        !            95:   -- REQUIRED : polynomials in p must be ordered according to mix.
        !            96:
        !            97:   -- ON ENTRY :
        !            98:   --   file       a file to write intermediate results on;
        !            99:   --   p          a lifted Laurent polynomial system;
        !           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:   procedure Mixed_Solve
        !           108:                 ( p : in Laur_Sys; lifted : in Array_of_Lists;
        !           109:                   h : in Eval_Coeff_Laur_Sys;
        !           110:                   c : in Standard_Complex_VecVecs.VecVec;
        !           111:                   e : in Exponent_Vectors_Array;
        !           112:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
        !           113:                   mix : in Vector; mic : in Mixed_Cell;
        !           114:                   sols,sols_last : in out Solution_List );
        !           115:
        !           116:   procedure Mixed_Solve
        !           117:                 ( file : in file_type;
        !           118:                   p : in Laur_Sys; lifted : in Array_of_Lists;
        !           119:                   h : in Eval_Coeff_Laur_Sys;
        !           120:                   c : in Standard_Complex_VecVecs.VecVec;
        !           121:                   e : in Exponent_Vectors_Array;
        !           122:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
        !           123:                   mix : in Vector; mic : in Mixed_Cell;
        !           124:                   sols,sols_last : in out Solution_List );
        !           125:
        !           126:   -- DESCRIPTION :
        !           127:   --   Polyhedral coefficient-homotopy continuation for one mixed cell.
        !           128:
        !           129:   -- REQUIRED : polynomials in p must be ordered according to mix.
        !           130:
        !           131:   -- ON ENTRY :
        !           132:   --   file       a file to write intermediate results on;
        !           133:   --   p          a lifted Laurent polynomial system;
        !           134:   --   lifted     lifted supports, with original order of points;
        !           135:   --   h          coefficient homotopy;
        !           136:   --   c          coefficients of homotopy;
        !           137:   --   e          the exponent vectors of the unlifted system;
        !           138:   --   j          coefficient Jacobian matrix;
        !           139:   --   m          multiplication factors in coefficient Jacobian matrix;
        !           140:   --   mix        type of mixture;
        !           141:   --   mic        a mixed cell.
        !           142:
        !           143:   -- ON RETURN :
        !           144:   --   sols       the solution list of p;
        !           145:   --   sols_last  pointer to last element of the list sols.
        !           146:
        !           147: -- THIRD LAYER : polyhedral continuation for a mixed subdivision.
        !           148:
        !           149:   procedure Mixed_Solve
        !           150:                 ( p : in Laur_Sys;
        !           151:                   mix : in Vector; mixsub : in Mixed_Subdivision;
        !           152:                   sols : in out Solution_List );
        !           153:
        !           154:   procedure Mixed_Solve
        !           155:                 ( file : in file_type; p : in Laur_Sys;
        !           156:                   mix : in Vector; mixsub : in Mixed_Subdivision;
        !           157:                   sols : in out Solution_List );
        !           158:
        !           159:   -- DESCRIPTION :
        !           160:   --   Polyhedral coefficient-homotopy continuation for a mixed subdivision.
        !           161:
        !           162:   -- REQUIRED : polynomials in p must be ordered according to mix.
        !           163:
        !           164:   -- ON ENTRY :
        !           165:   --   file       a file to write intermediate results on;
        !           166:   --   p          a lifted Laurent polynomial system;
        !           167:   --   mix        type of mixture;
        !           168:   --   mixsub     a collection of mixed cells.
        !           169:
        !           170:   -- ON RETURN :
        !           171:   --   sols       the solution list of p.
        !           172:
        !           173:   procedure Mixed_Solve
        !           174:                 ( p : in Laur_Sys; lifted : in Array_of_Lists;
        !           175:                   h : in Eval_Coeff_Laur_Sys;
        !           176:                   c : in Standard_Complex_VecVecs.VecVec;
        !           177:                   e : in Exponent_Vectors_Array;
        !           178:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
        !           179:                   mix : in Vector; mixsub : in Mixed_Subdivision;
        !           180:                   sols : in out Solution_List );
        !           181:
        !           182:   procedure Mixed_Solve
        !           183:                 ( file : in file_type;
        !           184:                   p : in Laur_Sys; lifted : in Array_of_Lists;
        !           185:                   h : in Eval_Coeff_Laur_Sys;
        !           186:                   c : in Standard_Complex_VecVecs.VecVec;
        !           187:                   e : in Exponent_Vectors_Array;
        !           188:                   j : in Eval_Coeff_Jaco_Mat; m : in Mult_Factors;
        !           189:                   mix : in Vector; mixsub : in Mixed_Subdivision;
        !           190:                   sols : in out Solution_List );
        !           191:
        !           192:   -- DESCRIPTION :
        !           193:   --   Polyhedral coefficient-homotopy continuation for a mixed subdivision.
        !           194:
        !           195:   -- REQUIRED : polynomials in p must be ordered according to mix.
        !           196:
        !           197:   -- ON ENTRY :
        !           198:   --   file       a file to write intermediate results on;
        !           199:   --   p          a lifted Laurent polynomial system;
        !           200:   --   lifted     lifted supports, in original order;
        !           201:   --   h          coefficient homotopy;
        !           202:   --   c          coefficients of homotopy;
        !           203:   --   e          the exponent vectors of the unlifted system;
        !           204:   --   j          coefficient Jacobian matrix;
        !           205:   --   m          multiplication factors in coefficient Jacobian matrix;
        !           206:   --   mix        type of mixture;
        !           207:   --   mixsub     a collection of mixed cells.
        !           208:
        !           209:   -- ON RETURN :
        !           210:   --   sols       the solution list of p.
        !           211:
        !           212: end Integer_Polyhedral_Continuation;

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