
| Current Path : /usr/share/gap/lib/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : //usr/share/gap/lib/matobjplist.gd |
############################################################################ # # matobjplist.gd # by Max Neunhöffer # # Copyright (C) 2006 by Lehrstuhl D für Mathematik, RWTH Aachen # # This file is a sample implementation for new style vectors and matrices. # It stores matrices as dense lists of lists with wrapping. # This part declares the representations and other type related things, # and declares some global functions. # ############################################################################ DeclareRepresentation( "IsPlistVectorRep", IsVectorObj and IsPositionalObjectRep, [] ); # 2 positions used: # ![1] : BaseDomain # ![2] : the elements as plain list DeclareRepresentation( "IsPlistMatrixRep", IsRowListMatrix and IsPositionalObjectRep, [] ); # 4 positions used: # ![1] : BaseDomain # ![2] : empty vector of corresponding vector representation # ![3] : row length # ![4] : the rows as plain list of vectors in the filter IsPlistVectorRep # Some constants for matrix access: BindGlobal( "BDPOS", 1 ); BindGlobal( "EMPOS", 2 ); BindGlobal( "RLPOS", 3 ); BindGlobal( "ROWSPOS", 4 ); # For vector access: #BindGlobal( "BDPOS", 1 ); # see above BindGlobal( "ELSPOS", 2 ); # Two filters to speed up some methods: DeclareFilter( "IsIntVector" ); DeclareFilter( "IsFFEVector" ); ############################################################################ # Constructors: ############################################################################ DeclareGlobalFunction( "MakePlistVectorType" );