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

Annotation of OpenXM_contrib/PHC/Ada/Schubert/straightening_syzygies.ads, Revision 1.1

1.1     ! maekawa     1: with Brackets,Bracket_Monomials;         use Brackets,Bracket_Monomials;
        !             2: with Bracket_Polynomials;                use Bracket_Polynomials;
        !             3:
        !             4: package Straightening_Syzygies is
        !             5:
        !             6: -- DESCRIPTION :
        !             7: --   This package generates and uses the so-called van der Waerden syzygies
        !             8: --   to straighten bracket polynomials w.r.t. the tableau order.
        !             9:
        !            10:   function Laplace_Expansion ( n,d : natural ) return Bracket_Polynomial;
        !            11:
        !            12:   -- DESCRIPTION :
        !            13:   --   Returns the Laplace expansion of the determinant of an (n*n)-matrix,
        !            14:   --   in terms of two blocks of size d and n-d respectively.
        !            15:   --   The output is in terms of a quadratic bracket polynomial.
        !            16:   --   The first entry of every bracket for the first block equals 0,
        !            17:   --   to avoid messing up the structure of the Laplace expansion.
        !            18:
        !            19:   function Straightening_Syzygy ( b1,b2 : Bracket ) return Bracket_Polynomial;
        !            20:
        !            21:   -- DESCRIPTION :
        !            22:   --   Returns the van der Waerden syzygy that can be used to straighten
        !            23:   --   the nonstandard monomial b1*b2.  If b1*b2 is already standard, then
        !            24:   --   the polynomial with only the monomial b1*b2 is returned.
        !            25:
        !            26:   -- REQUIRED : b1 < b2.
        !            27:
        !            28:   function Straightening_Syzygy ( b : Bracket_Monomial )
        !            29:                                 return Bracket_Polynomial;
        !            30:
        !            31:   -- DESCRIPTION :
        !            32:   --   Returns Straightening_Syzygy(b1,b2), with b = b1*b2.
        !            33:
        !            34:   -- REQUIRED : b = b1*b2.
        !            35:
        !            36:   function nonStandard_Monomials ( n,d : natural ) return Bracket_Polynomial;
        !            37:
        !            38:   -- DESCRIPTION :
        !            39:   --   Returns the polynomial of all quadratic nonStandard monomials,
        !            40:   --   where d is the dimension of the brackets and n the number of
        !            41:   --   elements to choose from.
        !            42:
        !            43:   generic
        !            44:     with procedure Process ( s : in Bracket_Polynomial;
        !            45:                              continue : out boolean );
        !            46:   procedure Enumerate_Syzygies ( p : in Bracket_Polynomial );
        !            47:
        !            48:   -- DESCRIPTION :
        !            49:   --   Constructs the straightening syzygy s for every monomial in p
        !            50:   --   and invokes the procedure Process with s as its argument.
        !            51:   --   Enumeration stops when continue is set to false.
        !            52:
        !            53:   function Straighten ( b1,b2 : Bracket ) return Bracket_Polynomial;
        !            54:
        !            55:   -- DESCRIPTION :
        !            56:   --   Returns a bracket polynomial, equivalent to b1*b2, that contains
        !            57:   --   only standard monomials.  This is done by repeatively replacing the
        !            58:   --   nonstandard monomials b1*b2 by the generated van der Waerden syzygies.
        !            59:
        !            60:   function Straighten ( b : Bracket_Monomial ) return Bracket_Polynomial;
        !            61:   function Straighten ( b : Bracket_Term ) return Bracket_Polynomial;
        !            62:   function Straighten ( b : Bracket_Polynomial ) return Bracket_Polynomial;
        !            63:
        !            64:   -- DESCRIPTION :
        !            65:   --   Returns an equivalent bracket polynomial that contains only
        !            66:   --   standard monomials.
        !            67:
        !            68: end Straightening_Syzygies;

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