Annotation of OpenXM_contrib/PHC/Ada/Schubert/bracket_expansions.ads, Revision 1.1
1.1 ! maekawa 1: with Brackets; use Brackets;
! 2: with Bracket_Monomials; use Bracket_Monomials;
! 3: with Standard_Natural_Matrices; use Standard_Natural_Matrices;
! 4: with Standard_Complex_Polynomials; use Standard_Complex_Polynomials;
! 5: with Bracket_Polynomials; use Bracket_Polynomials;
! 6:
! 7: package Bracket_Expansions is
! 8:
! 9: -- DESCRIPTION :
! 10: -- This package provides operations to expand bracket polynomials as
! 11: -- complex multivariate polynomials in the matrix indeterminates xij.
! 12:
! 13: function Expand ( n,d : natural; b : Bracket ) return Poly;
! 14: function Expand ( n,d : natural; b : Bracket_Monomial ) return Poly;
! 15: function Expand ( n,d : natural; b : Bracket_Term ) return Poly;
! 16: function Expand ( n,d : natural; b : Bracket_Polynomial ) return Poly;
! 17:
! 18: -- DESCRIPTION :
! 19: -- On return is the expanded bracket polynomial in the xij's,
! 20: -- where i runs over 1..n and j over 1..d.
! 21:
! 22: function Localized_Expand ( n,d : natural; b : Bracket ) return Poly;
! 23:
! 24: -- DESCRIPTION :
! 25: -- For i >= n-d+1, the variable xij is either 1 or 0, depending on
! 26: -- whether i=j+n-d or not, for i in 1..n and j in 1..d.
! 27: -- This is the standard map to localize a d-plane, a better one
! 28: -- is generated below.
! 29:
! 30: function Localization_Map ( n,d : natural ) return Matrix;
! 31:
! 32: -- DESCRIPTION :
! 33: -- Returns a localization map for a matrix representing a d-plane
! 34: -- in affine n-space. The elements of the identity matrix are as
! 35: -- usual represented by zeros and ones. Every row will have at least
! 36: -- one free element whose entry is marked by two.
! 37:
! 38: -- REQUIRED : n > d+1.
! 39:
! 40: function Expand ( locmap : Matrix; b : Bracket ) return Poly;
! 41:
! 42: -- DESCRIPTION :
! 43: -- Expands a d-by-d minor of the matrix, selecting the rows with
! 44: -- entries in b, respecting the localization map in locmap.
! 45: -- The format of locmap must be as the output of Localization_Map.
! 46: -- The polynomial on return has as many variables as the number of
! 47: -- entries in the matrix locmap.
! 48: -- The number of variables can be reduced by the procedure below.
! 49:
! 50: procedure Reduce_Variables ( locmap : in Matrix; p : in out Poly );
! 51:
! 52: -- DESCRIPTION :
! 53: -- Reduces the #variables in the polynomial, removing all variables that
! 54: -- correspond to zeros in the localization map.
! 55:
! 56: end Bracket_Expansions;
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>