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

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Implift/transforming_integer_vector_lists.ads, Revision 1.1.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 Transformations;                    use Transformations;
                      4:
                      5: package Transforming_Integer_Vector_Lists is
                      6:
                      7: -- DESCRIPTION :
                      8: --   Unimodular transformations of lists of standard integer vectors.
                      9:
                     10:   procedure Shift ( l : in out List; v : in Vector );
                     11:   procedure Shift ( l : in out List; v : in Link_to_Vector );
                     12:
                     13:   function  Shift ( l : List; v : Vector ) return List;
                     14:   function  Shift ( l : List; v : Link_to_Vector ) return List;
                     15:
                     16:   -- DESCRIPTION :
                     17:   --   The list will be shifted: Shift(l,v) = { y-v | Is_In(l,y) }
                     18:
                     19:   function "*"( l : List; t : Transfo ) return List;
                     20:   function "*"( t : Transfo; l : List ) return List;
                     21:
                     22:   -- DESCRIPTION :
                     23:   --   Returns the transformed list of points.
                     24:
                     25:   procedure Apply ( l : in out List; t : in Transfo );
                     26:
                     27:   -- DESCRIPTION :
                     28:   --   Applies the transformation t to the list l.
                     29:
                     30:   function  Reduce ( l : List; i : integer ) return List;
                     31:   procedure Reduce ( l : in out List; i : in integer );
                     32:
                     33:   -- DESCRIPTION :
                     34:   --   Returns a list of vectors where the i-th component has been deleted.
                     35:
                     36:   function  Insert ( l : List; i,a : integer ) return List;
                     37:   procedure Insert ( l : in out List; i,a : in integer );
                     38:
                     39:   -- DESCRIPTION :
                     40:   --   Returns a list of vectors where the i-th component has been inserted,
                     41:   --   for all d in l: d(i) = a.
                     42:
                     43:   function  Transform_and_Reduce ( t : Transfo; i : integer; l : List )
                     44:                                  return List;
                     45:   procedure Transform_and_Reduce ( t : in Transfo; i : in integer;
                     46:                                    l : in out List );
                     47:
                     48:   -- DESCRIPTION :
                     49:   --   Transforms the list l and deletes the i-th component
                     50:   --   of every element in the transformed list.
                     51:
                     52:   function  Insert_and_Transform
                     53:              ( l : List; i,a : integer; t : Transfo ) return List;
                     54:   procedure Insert_and_Transform
                     55:              ( l : in out List; i,a : in integer; t : in Transfo );
                     56:
                     57:   -- DESCRIPTION :
                     58:   --   Inserts the i-th component of every element in the list l,
                     59:   --   using the value a, and transforms the list, applying t.
                     60:
                     61: end Transforming_Integer_Vector_Lists;

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