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>