[BACK]Return to numeric_minor_equations.ads CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Schubert

Annotation of OpenXM_contrib/PHC/Ada/Schubert/numeric_minor_equations.ads, Revision 1.1.1.1

1.1       maekawa     1: with Standard_Complex_Numbers;           use Standard_Complex_Numbers;
                      2: with Standard_Complex_Vectors;
                      3: with Standard_Floating_Matrices;
                      4: with Standard_Complex_Matrices;
                      5: with Standard_Complex_Poly_Matrices;
                      6: with Standard_Complex_Polynomials;       use Standard_Complex_Polynomials;
                      7: with Standard_Complex_Poly_Systems;      use Standard_Complex_Poly_Systems;
                      8: with Bracket_Monomials;                  use Bracket_Monomials;
                      9: with Bracket_Polynomials;                use Bracket_Polynomials;
                     10: with Bracket_Systems;                    use Bracket_Systems;
                     11:
                     12: package Numeric_Minor_Equations is
                     13:
                     14: -- DESCRIPTION :
                     15: --   This package evaluates the symbolic equations in the Pieri homotopies.
                     16:
                     17: -- EXPANDING ACCORDING A BRACKET MONOMIAL :
                     18:
                     19:   function Expanded_Minors
                     20:                ( cffmat : Standard_Floating_Matrices.Matrix;
                     21:                  polmat : Standard_Complex_Poly_Matrices.Matrix;
                     22:                  bm : Bracket_Monomial ) return Poly;
                     23:
                     24:   function Expanded_Minors
                     25:                ( cffmat : Standard_Complex_Matrices.Matrix;
                     26:                  polmat : Standard_Complex_Poly_Matrices.Matrix;
                     27:                  bm : Bracket_Monomial ) return Poly;
                     28:
                     29:   function Expanded_Minors
                     30:                ( cntmat,polmat : Standard_Complex_Poly_Matrices.Matrix;
                     31:                  bm : Bracket_Monomial ) return Poly;
                     32:
                     33:   function Lifted_Expanded_Minors
                     34:                ( cntmat,polmat : Standard_Complex_Poly_Matrices.Matrix;
                     35:                  bm : Bracket_Monomial ) return Poly;
                     36:
                     37:   -- DESCRIPTION :
                     38:   --   Expansion of coefficient and polynomial minors along the Laplace
                     39:   --   expansion formula in bm creates a polynomial equation.
                     40:   --   With the prefix Lifted_, the polynomials in polmat are extended
                     41:   --   with a zero lifting.
                     42:
                     43:   -- ON ENTRY :
                     44:   --   cffmat    coefficient matrix, represents m-plane;
                     45:   --   cntmat    polynomial matrix, represents moving m-plane,
                     46:   --             the continuation parameter is the last variable;
                     47:   --   polmat    polynomial matrix, contains the pattern of the p-plane;
                     48:   --   bm        quadratic bracket monomial, the first bracket is a coefficient
                     49:   --             minor and has zero as its first entry, the second bracket is
                     50:   --             a polynomial minor.
                     51:
                     52: -- EXPANDING ACCORDING A BRACKET POLYNOMIAL :
                     53:
                     54:   function Expanded_Minors
                     55:                ( cffmat : Standard_Floating_Matrices.Matrix;
                     56:                  polmat : Standard_Complex_Poly_Matrices.Matrix;
                     57:                  bp : Bracket_Polynomial ) return Poly;
                     58:
                     59:   function Expanded_Minors
                     60:                ( cffmat : Standard_Complex_Matrices.Matrix;
                     61:                  polmat : Standard_Complex_Poly_Matrices.Matrix;
                     62:                  bp : Bracket_Polynomial ) return Poly;
                     63:
                     64:   function Expanded_Minors
                     65:                ( cntmat,polmat : Standard_Complex_Poly_Matrices.Matrix;
                     66:                  bp : Bracket_Polynomial ) return Poly;
                     67:
                     68:   function Lifted_Expanded_Minors
                     69:                ( cntmat,polmat : Standard_Complex_Poly_Matrices.Matrix;
                     70:                  bp : Bracket_Polynomial ) return Poly;
                     71:
                     72:   -- DESCRIPTION :
                     73:   --   Expansion of coefficient and polynomial minors along the Laplace
                     74:   --   expansion formula in bp creates a polynomial equation.
                     75:   --   With the prefix Lifted_, the polynomials in polmat are extended
                     76:   --   with a zero lifting.
                     77:
                     78:   -- ON ENTRY :
                     79:   --   cffmat    coefficient matrix, represents m-plane, m = n-p;
                     80:   --   cntmat    polynomial matrix, represents moving m-plane, m = n-p,
                     81:   --             the continuation parameter is the last variable;
                     82:   --   polmat    polynomial matrix, contains the pattern of the p-plane;
                     83:   --   bp        Laplace expansion of one minor, the coefficient minors come
                     84:   --             first and have a zero as first element.
                     85:
                     86: -- EXPANDING TO CONSTRUCT POLYNOMIAL SYSTEMS :
                     87:
                     88:   function Expanded_Minors
                     89:                ( cffmat : Standard_Floating_Matrices.Matrix;
                     90:                  polmat : Standard_Complex_Poly_Matrices.Matrix;
                     91:                  bs : Bracket_System ) return Poly_Sys;
                     92:
                     93:   function Expanded_Minors
                     94:                ( cffmat : Standard_Complex_Matrices.Matrix;
                     95:                  polmat : Standard_Complex_Poly_Matrices.Matrix;
                     96:                  bs : Bracket_System ) return Poly_Sys;
                     97:
                     98:   function Expanded_Minors
                     99:                ( cntmat,polmat : Standard_Complex_Poly_Matrices.Matrix;
                    100:                  bs : Bracket_System ) return Poly_Sys;
                    101:
                    102:   function Lifted_Expanded_Minors
                    103:                ( cntmat,polmat : Standard_Complex_Poly_Matrices.Matrix;
                    104:                  bs : Bracket_System ) return Poly_Sys;
                    105:
                    106:   -- DESCRIPTION :
                    107:   --   Expansion of coefficient and polynomial minors along the Laplace
                    108:   --   expansion formulas in bs creates a polynomial system.
                    109:   --   With the prefix Lifted_, the polynomials in polmat are extended
                    110:   --   with zero lifting.
                    111:
                    112:   -- ON ENTRY :
                    113:   --   cffmat    coefficient matrix, represents m-plane;
                    114:   --   cntmat    polynomial matrix, represents moving m-plane,
                    115:   --             the continuation parameter is the last variable;
                    116:   --   polmat    polynomial matrix, contains the pattern of the p-plane;
                    117:   --   bs        Laplace expansion of all minors, the first equation is
                    118:   --             the generic one and should not count in the range of
                    119:   --             the resulting polynomial system.
                    120:
                    121:   function Evaluate ( p : Poly; x : Standard_Complex_Matrices.Matrix )
                    122:                     return Complex_Number;
                    123:
                    124:   -- DESCRIPTION :
                    125:   --   Evaluates the polynomial p at the matrix x, where x is a value
                    126:   --   for the polynomial matrix used above to define p.
                    127:
                    128:   function Evaluate ( p : Poly_Sys; x : Standard_Complex_Matrices.Matrix )
                    129:                     return Standard_Complex_Vectors.Vector;
                    130:
                    131:   -- DESCRIPTION :
                    132:   --   Evaluates the polynomial system p at the matrix x, where x is a value
                    133:   --   for the polynomial matrix used above to define p.
                    134:
                    135:   procedure Embed ( t : in out Term );
                    136:   procedure Embed ( p : in out Poly );
                    137:   procedure Embed ( p : in out Poly_Sys );
                    138:   procedure Embed ( m : in out Standard_Complex_Poly_Matrices.Matrix );
                    139:
                    140:   -- DESCRIPTION :
                    141:   --   Augments the number of variables with one, as is required to embed
                    142:   --   the polynomials in a homotopy.
                    143:
                    144:   function Linear_Homotopy ( target,start : Poly ) return Poly;
                    145:
                    146:   -- DESCRIPTION :
                    147:   --   Returns (1-t)*start + t*target, with t an additional last variable.
                    148:
                    149:   function Linear_Interpolation
                    150:               ( target,start : Poly; k : natural ) return Poly;
                    151:
                    152:   -- DESCRIPTION :
                    153:   --   Returns (1-t)*start + t*target, with t the k-th variable.
                    154:
                    155:   procedure Divide_Common_Factor ( p : in out Poly; k : in natural );
                    156:
                    157:   -- DESCRIPTION :
                    158:   --   If the k-th variable occurs everywhere in p with a positive power,
                    159:   --   then it will be divided out.
                    160:
                    161: end Numeric_Minor_Equations;

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