1# GAP Declarations
2# This file was generated from
3# $Id: algpath.gd,v 1.7 2012/08/01 16:01:10 sunnyquiver Exp $
4DeclareProperty( "IsPathRing", IsMagmaRingModuloSpanOfZero );
5DeclareProperty( "IsPathRing", IsAlgebra );
6DeclareSynonym( "IsPathAlgebra", IsAlgebra and IsPathRing );
7DeclareFilter("IsElementOfPathRing");
8DeclareGlobalFunction( "PathRing" );
9DeclareGlobalFunction( "PathAlgebra" );
10DeclareAttribute( "QuiverOfPathRing", IsPathRing );
11DeclareSynonymAttr( "QuiverOfPathAlgebra", QuiverOfPathRing );
12DeclareGlobalFunction("FactorPathAlgebraByRelators");
13DeclareCategory( "IsQuiverAlgebra", IsAlgebra );
14InstallTrueMethod( IsQuiverAlgebra, IsPathAlgebra );
15
16DeclareOperation( "LeadingTerm", [IsRingElement] );
17DeclareSynonym("Tip", LeadingTerm);
18DeclareSynonym( "TipCoefficient", LeadingCoefficient );
19DeclareSynonym( "TipMonomial", LeadingMonomial );
20
21DeclareOperation( "IsLeftUniform", [IsRingElement]);
22DeclareOperation( "IsLeftUniform", [IsList,IsPath]);
23DeclareOperation( "IsRightUniform", [IsRingElement]);
24DeclareOperation( "IsRightUniform", [IsList,IsPath]);
25DeclareOperation( "IsUniform", [IsRingElement]);
26
27DeclareCategory( "IsQuotientOfPathAlgebra", IsQuiverAlgebra );
28DeclareAttribute( "OrderingOfAlgebra", IsAlgebra );
29DeclareAttribute( "GroebnerBasisOfIdeal", IsRing );
30DeclareAttribute( "GroebnerBasisOfLeftIdeal", IsRing );
31DeclareAttribute( "GroebnerBasisOfRightIdeal", IsRing );
32
33DeclareCategory( "IsElementOfQuotientOfPathAlgebra", IsRingElement );
34DeclareCategoryCollections( "IsElementOfQuotientOfPathAlgebra" );
35DeclareCategoryFamily( "IsElementOfQuotientOfPathAlgebra" );
36
37DeclareInfoClass( "InfoElementOfQuotientOfPathAlgebra" );
38DeclareProperty("IsFullFpPathAlgebra",
39    IsFLMLOR and IsElementOfQuotientOfPathAlgebraCollection );
40DeclareAttribute( "RelatorsOfFpAlgebra",
41    IsQuotientOfPathAlgebra and IsFullFpPathAlgebra);
42DeclareAttribute( "RelationsOfAlgebra", IsQuiverAlgebra);
43DeclareAttribute( "IdealOfQuotient", IsQuiverAlgebra);
44DeclareAttribute( "GroebnerBasisFunction", IsQuiverAlgebra );
45DeclareAttribute( "NormalFormFunction", IsFamily );
46DeclareOperation( "ElementOfQuotientOfPathAlgebra",
47    [ IsElementOfQuotientOfPathAlgebraFamily, IsRingElement, IsBool ] );
48
49DeclareOperation( "ElementOfPathAlgebra",
50    [ IsPathAlgebra, IsPath ] );
51
52
53DeclareHandlingByNiceBasis( "IsFpPathAlgebraElementsSpace",
54    "for spaces of f.p. path algebras" );
55
56DeclareOperation( "BasisOfDomain", [IsQuotientOfPathAlgebra]);
57
58
59# (This should have been an operation with argument filters
60# [ IsElementOfPathAlgebra ], but that filter does not exist).
61DeclareGlobalFunction( "PathAlgebraContainingElement");
62
63DeclareAttribute( "OriginalPathAlgebra", IsQuiverAlgebra );
64DeclareOperation( "MakeUniformOnRight", [ IsHomogeneousList ] );
65DeclareOperation( "GeneratorsTimesArrowsOnRight", [ IsHomogeneousList ] );
66DeclareOperation( "NthPowerOfArrowIdeal", [ IsPathAlgebra, IS_INT ] );
67DeclareOperation( "TruncatedPathAlgebra", [ IsField, IsQuiver, IS_INT ] );
68DeclareOperation( "AddNthPowerToRelations", [ IsPathAlgebra, IsHomogeneousList, IS_INT ] );
69
70DeclareAttribute( "OppositePathAlgebra", IsAlgebra );
71DeclareGlobalFunction( "OppositePathAlgebraElement"); # should be operation with args [ IsElementOfPathAlgebra ]
72DeclareOperation( "OppositeRelations", [ IsDenseList ] );
73DeclareOperation( "VertexPosition", [ IsElementOfQuotientOfPathAlgebra ] );
74
75DeclareProperty( "IsSelfinjectiveAlgebra",  IsQuiverAlgebra );
76DeclareProperty( "IsSymmetricAlgebra", IsQuiverAlgebra );
77DeclareProperty( "IsWeaklySymmetricAlgebra", IsQuiverAlgebra );
78DeclareProperty( "IsSchurianAlgebra", IsQuiverAlgebra );
79DeclareProperty( "IsSemicommutativeAlgebra", IsPathAlgebra);
80DeclareProperty( "IsSemicommutativeAlgebra", IsQuotientOfPathAlgebra);
81InstallTrueMethod( IsHereditaryAlgebra, IsPathAlgebra );
82InstallTrueMethod( IsFiniteGlobalDimensionAlgebra, IsPathAlgebra );
83
84DeclareAttribute( "CoxeterPolynomial",  IsQuiverAlgebra  );
85DeclareAttribute( "CoxeterMatrix", IsQuiverAlgebra );
86DeclareOperation( "TipMonomialandCoefficientOfVector", [ IsQuiverAlgebra, IsCollection ] );
87DeclareOperation( "TipReduceVectors", [ IsQuiverAlgebra, IsCollection ] );
88DeclareOperation( "CoefficientsOfVectors", [ IsAlgebra, IsCollection, IsList ] );
89DeclareProperty( "IsDistributiveAlgebra", IsQuotientOfPathAlgebra );
90DeclareAttribute( "NakayamaAutomorphism", IsQuotientOfPathAlgebra );
91DeclareAttribute( "NakayamaPermutation", IsQuotientOfPathAlgebra );
92DeclareAttribute( "OrderOfNakayamaAutomorphism", IsQuotientOfPathAlgebra );
93DeclareAttribute( "AssociatedMonomialAlgebra", IsQuiverAlgebra );
94DeclareProperty( "IsMonomialAlgebra", IsQuiverAlgebra );
95DeclareOperation( "SaveAlgebra", [ IsQuiverAlgebra, IsString, IsString ]);
96DeclareOperation( "ReadAlgebra", [ IsString ]);
97DeclareProperty( "IsTriangularReduced", IsQuiverAlgebra );
98DeclareOperation( "PathRemoval", [ IsElementOfMagmaRingModuloRelations, IsList ] );
99DeclareOperation( "QuiverAlgebraOfAmodAeA", [ IsQuiverAlgebra, IsList ] );