[BACK]Return to cayley_embedding.ads CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Root_Counts / Dynlift

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Dynlift/cayley_embedding.ads, Revision 1.1

1.1     ! maekawa     1: with Standard_Integer_Vectors;           use Standard_Integer_Vectors;
        !             2: with Lists_of_Integer_Vectors;           use Lists_of_Integer_Vectors;
        !             3: with Arrays_of_Integer_Vector_Lists;     use Arrays_of_Integer_Vector_Lists;
        !             4: with Simplices,Triangulations;           use Simplices,Triangulations;
        !             5: with Integer_Mixed_Subdivisions;         use Integer_Mixed_Subdivisions;
        !             6:
        !             7: package Cayley_Embedding is
        !             8:
        !             9: -- DESCRIPTION :
        !            10: --   This procedure provides utilities to implement the embedding
        !            11: --   of a tuple of supports to use the Cayley trick.
        !            12: --   The novelty with this implementation is that the additional
        !            13: --   coordinates to the points are added in front.
        !            14:
        !            15: -- UTILITIES TO APPLY BEFORE THE CONSTRUCTION OF THE TRIANGULATION :
        !            16:
        !            17:   function Embedding_Before_Lifting
        !            18:                ( supports : Array_of_Lists ) return List;
        !            19:
        !            20:   -- DESCRIPTION :
        !            21:   --   The supports will be embedded in higher dimensional space
        !            22:   --   by adding (r-1) extra coordinates.
        !            23:   --   The supports will be placed on the vertices of a simplex.
        !            24:   --   This is done before the lifting is defined on the supports.
        !            25:
        !            26: -- UTILITIES TO APPLY AFTER THE CONSTRUCTION OF THE TRIANGULATION :
        !            27:
        !            28:   function Extract ( vtp,n : natural; pts : List ) return List;
        !            29:
        !            30:   -- DESCRIPTION :
        !            31:   --   Extracts the points out of the list that are of the type
        !            32:   --   indicated by vtp, i.e.: all points that belong to the list of
        !            33:   --   points placed on the vertex with number vtp.
        !            34:
        !            35:   function Extract_Mixed_Cell
        !            36:                 ( n : natural; mix : Vector; s : Simplex ) return Mixed_Cell;
        !            37:
        !            38:   -- DESCRIPTION :
        !            39:   --   If the simplex determines a mixed cell, then this mixed cell
        !            40:   --   will be returned.  Otherwise, the returned mixed cell will have
        !            41:   --   an empty inner normal.
        !            42:
        !            43:   function Extract_Mixed_Cells
        !            44:                 ( n : natural; mix : Vector; t : Triangulation )
        !            45:                 return Mixed_Subdivision;
        !            46:
        !            47:   -- DESCRIPTION :
        !            48:   --   Given a triangulation of the large extended polytope,
        !            49:   --   the mixed cells will be extracted.  The parameter
        !            50:   --   n equals the dimension before the embedding and lifting.
        !            51:
        !            52:   function Extract_non_Flat_Mixed_Cells
        !            53:                 ( n : natural; mix : Vector; t : Triangulation )
        !            54:                 return Mixed_Subdivision;
        !            55:
        !            56:   -- DESCRIPTION :
        !            57:   --   Does the same as the routine just above, but stops when
        !            58:   --   a simplex with normal (0,..,0,1) is encountered.
        !            59:
        !            60:   procedure Deflate ( n : natural; l : in out List );
        !            61:
        !            62:   -- DESCRIPTION :
        !            63:   --   Removes the extra coordinates which have been introduced for
        !            64:   --   the embedding.  The parameter n equals the dimension before
        !            65:   --   the embedding and the lifting.
        !            66:
        !            67:   procedure Deflate ( n : natural; mic : in out Mixed_Cell );
        !            68:
        !            69:   -- DESCRIPTION :
        !            70:   --   Removes the extra coordinates which have been introduced for
        !            71:   --   the embedding.  The parameter n equals the dimension before
        !            72:   --   the embedding and the lifting.
        !            73:
        !            74:   procedure Deflate ( n : natural; mixsub : in out Mixed_Subdivision );
        !            75:
        !            76:   -- DESCRIPTION :
        !            77:   --   Removes the extra coordinates which have been introduced for
        !            78:   --   the embedding.  The parameter n equals the dimension before
        !            79:   --   the embedding and the lifting.
        !            80:
        !            81: end Cayley_Embedding;

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