Skip to content

Commit

Permalink
Merge pull request #580 from mohamed-barakat/dp
Browse files Browse the repository at this point in the history
turn dp instead of Dp into default order in PathCategory
  • Loading branch information
mohamed-barakat authored Sep 17, 2024
2 parents fd43462 + 8d4c598 commit 3cef36c
Show file tree
Hide file tree
Showing 8 changed files with 32 additions and 44 deletions.
4 changes: 2 additions & 2 deletions Algebroids/PackageInfo.g
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ SetPackageInfo( rec(

PackageName := "Algebroids",
Subtitle := "Algebroids and bialgebroids as preadditive categories generated by enhanced quivers",
Version := "2024.09-02",
Version := "2024.09-03",
Date := ~.Version{[ 1 .. 10 ]},
Date := (function ( ) if IsBound( GAPInfo.SystemEnvironment.GAP_PKG_RELEASE_DATE ) then return GAPInfo.SystemEnvironment.GAP_PKG_RELEASE_DATE; else return Concatenation( ~.Version{[ 1 .. 4 ]}, "-", ~.Version{[ 6, 7 ]}, "-01" ); fi; end)( ),
License := "GPL-2.0-or-later",
Expand Down Expand Up @@ -137,7 +137,7 @@ Dependencies := rec(
[ "CartesianCategories", ">= 2024.02-01" ],
[ "Toposes", ">= 2023.03-05" ],
[ "FinSetsForCAP", ">= 2024.02-02" ],
[ "FpCategories", ">= 2024.02-11" ],
[ "FpCategories", ">= 2024.09-04" ],
[ "QPA", ">= 2.0" ],
[ "MatricesForHomalg", ">= 2021.12-01" ],
[ "FreydCategoriesForCAP", ">= 2024.07-05" ],
Expand Down
17 changes: 8 additions & 9 deletions Algebroids/examples/GroebnerBasisInLinearClosureOfPathCategory.g
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,18 @@ kC := k[C];
#! Q-LinearClosure( PathCategory( FinQuiver( "q(o)[x:o-≻o,y:o-≻o]" ) ) )
rels := [ kC.xy - kC.yx, ( kC.x^2 + kC.y^2 ) * ( kC.x + kC.xy ),
( kC.x^2+kC.y^2 ) * ( kC.yy+kC.x^3 ) ];
#! [ 1*x⋅y - 1*y⋅x:(o) -≻ (o), 1*x^3⋅y + 1*y^2⋅x⋅y + 1*x^3 + 1*y^2⋅x:(o) -≻ (o),
#! [ -1*y⋅x + 1*x⋅y:(o) -≻ (o), 1*x^3⋅y + 1*y^2⋅x⋅y + 1*x^3 + 1*y^2⋅x:(o) -≻ (o),
#! 1*x^5 + 1*y^2⋅x^3 + 1*x^2⋅y^2 + 1*y^4:(o) -≻ (o) ]
gb := ReducedGroebnerBasis( kC, rels );
#! [ 1*x⋅y - 1*y⋅x:(o) -≻ (o),
#! 1*x^5 - 1*y^4⋅x + 1*y^2⋅x^2 + 1*y^4 + 1*x^3 + 1*y^2⋅x:(o) -≻ (o),
#! 1*y⋅x^3 + 1*y^3⋅x + 1*x^3 + 1*y^2⋅x:(o) -≻ (o),
#! 1*y^3⋅x^2 + 1*y^5 + 1*y^2⋅x^2 + 1*y^4:(o) -≻ (o) ]
#! [ -1*y⋅x + 1*x⋅y:(o) -≻ (o),
#! 1*x^3⋅y + 1*x⋅y^3 + 1*x^3 + 1*x⋅y^2:(o) -≻ (o),
#! 1*x^5 - 1*x⋅y^4 + 1*x^2⋅y^2 + 1*y^4 + 1*x^3 + 1*x⋅y^2:(o) -≻ (o),
#! 1*x^2⋅y^3 + 1*y^5 + 1*x^2⋅y^2 + 1*y^4:(o) -≻ (o) ]
f := Sum( gb );
#! 1*x^5 + 1*y^3⋅x^2 - 1*y^4⋅x + 1*y^5 + 1*y⋅x^3 + 2*y^2⋅x^2 + 1*y^3⋅x
#! + 2*y^4 + 2*x^3 + 2*y^2⋅x + 1*x⋅y - 1*y⋅x:(o) -≻ (o)
#! 1*x^5 + 1*x^2⋅y^3 - 1*x⋅y^4 + 1*y^5 + 1*x^3⋅y + 2*x^2⋅y^2 + 1*x⋅y^3 +
#! 2*y^4 + 2*x^3 + 2*x⋅y^2 - 1*y⋅x + 1*x⋅y:(o) -≻ (o)
ReductionOfMorphism( kC, f, rels );
#! -1*y^2⋅x^3 + 1*y^3⋅x^2 - 1*y^4⋅x + 1*y^5 + 1*y⋅x^3 + 1*y^2⋅x^2 + 1*y^3⋅x
#! + 1*y^4 + 2*x^3 + 2*y^2⋅x:(o) -≻ (o)
#! 1*x^2⋅y^3 + 1*y^5 + 1*x^2⋅y^2 + 1*y^4:(o) -≻ (o)
ReductionOfMorphism( kC, f, gb );
#! 0:(o) -≻ (o)
#! @EndExample
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ q := FinQuiver( str );
#! t:4-≻5,y:5-≻5]" )
k := HomalgFieldOfRationals( );
#! Q
C := PathCategory( q );
C := PathCategory( q : admissible_order := "Dp" );
#! PathCategory( FinQuiver( "q(0,1,2,3,4,5)[x:0-≻0,s:0-≻1,a:1-≻2,c:1-≻3,e:1-≻4,
#! b:2-≻4,d:3-≻4,t:4-≻5,y:5-≻5]" ) )
kC := LinearClosure( k, C ); # or k[C];
Expand Down
2 changes: 1 addition & 1 deletion FpCategories/PackageInfo.g
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ SetPackageInfo( rec(

PackageName := "FpCategories",
Subtitle := "Finitely presented categories by generating quivers and relations",
Version := "2024.09-03",
Version := "2024.09-04",
Date := (function ( ) if IsBound( GAPInfo.SystemEnvironment.GAP_PKG_RELEASE_DATE ) then return GAPInfo.SystemEnvironment.GAP_PKG_RELEASE_DATE; else return Concatenation( ~.Version{[ 1 .. 4 ]}, "-", ~.Version{[ 6, 7 ]}, "-01" ); fi; end)( ),
License := "GPL-2.0-or-later",

Expand Down
6 changes: 3 additions & 3 deletions FpCategories/examples/PathCategory.g
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ str :=
q := FinQuiver( str );
#! FinQuiver( "q(0,1,2,3,4,5)[x:0-≻0,s:0-≻1,a:1-≻2,c:1-≻3,e:1-≻4,b:2-≻4,d:3-≻4,
#! t:4-≻5,y:5-≻5]" )
C := PathCategory( q );
C := PathCategory( q : admissible_order := "Dp" );
#! PathCategory( FinQuiver( "q(0,1,2,3,4,5)[x:0-≻0,s:0-≻1,a:1-≻2,c:1-≻3,e:1-≻4,
#! b:2-≻4,d:3-≻4,t:4-≻5,y:5-≻5]" ) )
Display( C );
Expand Down Expand Up @@ -130,7 +130,7 @@ LoadPackage( "Algebroids", false );
str := "q(0,1,2,3,4,5)[s:0->1,a:1->2,c:1->3,e:1->4,b:2->4,d:3->4,t:4->5]";;
quiver := FinQuiver( str );
#! FinQuiver( "q(0,1,2,3,4,5)[s:0-≻1,a:1-≻2,c:1-≻3,e:1-≻4,b:2-≻4,d:3-≻4,t:4-≻5]" )
P := PathCategory( quiver );
P := PathCategory( quiver : admissible_order := "Dp" );
#! PathCategory( FinQuiver( "q(0,1,2,3,4,5)[s:0-≻1,a:1-≻2,c:1-≻3,e:1-≻4,b:2-≻4,
#! d:3-≻4,t:4-≻5]" ) )
Display( P );
Expand Down Expand Up @@ -163,7 +163,7 @@ HomStructure( T.0, T.5 );
LoadPackage( "Algebroids", false );
#! true
str := "q(o)[x:o->o,y:o->o,z:o->o]";;
C := PathCategory( FinQuiver( str ) : sort_external_homs_like_qpa := true );
C := PathCategory( FinQuiver( str ) );
#! PathCategory( FinQuiver( "q(o)[x:o-≻o,y:o-≻o,z:o-≻o]" ) )
F := FreeCategory( RightQuiver( str ) );
#! FreeCategory( RightQuiver( "q(o)[x:o->o,y:o->o,z:o->o]" ) )
Expand Down
35 changes: 12 additions & 23 deletions FpCategories/gap/PathCategories.gi
Original file line number Diff line number Diff line change
Expand Up @@ -9,28 +9,19 @@ InstallMethod( PathCategory,
[ IsFinQuiver ],

function ( q )
local sort_external_homs_like_qpa, admissible_order, name, C;
local admissible_order, name, C;

sort_external_homs_like_qpa := ValueOption( "sort_external_homs_like_qpa" );
admissible_order := ValueOption( "admissible_order" );

if sort_external_homs_like_qpa = true then

admissible_order := "dp";

else

admissible_order := ValueOption( "admissible_order" );

if admissible_order = fail then

admissible_order := "Dp";

elif not admissible_order in [ "Dp", "dp" ] then

Error( "only \"Dp\" and \"dp\" admissible orders are supported!\n" );

fi;

if admissible_order = fail then

## like QPA
admissible_order := "dp";

elif not admissible_order in [ "dp", "Dp" ] then

Error( "only \"dp\" and \"Dp\" admissible orders are supported!\n" );

fi;

name := Concatenation( "PathCategory( ", Name( q ), " )" );
Expand All @@ -49,8 +40,6 @@ InstallMethod( PathCategory,

C!.category_as_first_argument := true;

C!.sort_external_homs_like_qpa := sort_external_homs_like_qpa;

C!.admissible_order := admissible_order;

SetIsObjectFiniteCategory( C, true );
Expand Down Expand Up @@ -1087,7 +1076,7 @@ InstallMethod( MacaulayMorphisms,

until hypothesis;

if C!.sort_external_homs_like_qpa = true then
if C!.admissible_order = "dp" then

FpCategories_SORT_MORPHISMS_LIKE_QPA( supports );

Expand Down
4 changes: 2 additions & 2 deletions FunctorCategories/PackageInfo.g
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ SetPackageInfo( rec(

PackageName := "FunctorCategories",
Subtitle := "Categories of functors",
Version := "2024.09-06",
Version := "2024.09-07",

Date := ~.Version{[ 1 .. 10 ]},
Date := (function ( ) if IsBound( GAPInfo.SystemEnvironment.GAP_PKG_RELEASE_DATE ) then return GAPInfo.SystemEnvironment.GAP_PKG_RELEASE_DATE; else return Concatenation( ~.Version{[ 1 .. 4 ]}, "-", ~.Version{[ 6, 7 ]}, "-01" ); fi; end)( ),
Expand Down Expand Up @@ -93,7 +93,7 @@ Dependencies := rec(
[ "MonoidalCategories", ">= 2024.06-02" ],
[ "CartesianCategories", ">= 2024.06-03" ],
[ "ToolsForCategoricalTowers", ">= 2024.03-02" ],
[ "FpCategories", ">= 2024.03-03" ],
[ "FpCategories", ">= 2024.09-04" ],
[ "Algebroids", ">= 2024.03-01" ],
[ "FiniteCocompletions", ">= 2024.03-12" ],
[ "PreSheaves", ">= 2024.02-02" ],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ IsZero( qA.3 );
D := AlgebroidFromDataTables( qA );
#! Q-algebroid( {3}[e:3-≻3] ) defined by 1 object and 1 generating morphism
BasisOfExternalHom( D.3, D.3 );
#! [ <1*e^2:(3) -≻ (3)>, <1*e:(3) -≻ (3)>, <1*id(3):(3) -≻ (3)> ]
#! [ <1*id(3):(3) -≻ (3)>, <1*e:(3) -≻ (3)>, <1*e^2:(3) -≻ (3)> ]
data_tables := DataTablesOfCategory( quo_kC );;
data_tables_Z := ShallowCopy( data_tables );;
data_tables_Z[1] := HomalgRingOfIntegers();;
Expand Down Expand Up @@ -107,14 +107,14 @@ kC := k[C];
#! Q-LinearClosure( PathCategory( FinQuiver( "q(o)[x:o-≻o,y:o-≻o]" ) ) )
A := kC / [ kC.xy - kC.yx, kC.x^3, kC.y^3 ];
#! Q-LinearClosure( PathCategory( FinQuiver( "q(o)[x:o-≻o,y:o-≻o]" ) ) )
#! / [ 1*x⋅y - 1*y⋅x, 1*x^3, 1*y^3 ]
#! / [ -1*y⋅x + 1*x⋅y, 1*x^3, 1*y^3 ]
B := AlgebroidFromDataTables( A );
#! Q-algebroid( {o}[x:o-≻o,y:o-≻o] ) defined by 1 object and 2 generating morphisms
IsAdmissibleAlgebroid( B );
#! true
A := kC / [ kC.xy - kC.yx, kC.x^3 - kC.x, kC.y^3 ];
#! Q-LinearClosure( PathCategory( FinQuiver( "q(o)[x:o-≻o,y:o-≻o]" ) ) )
#! / [ 1*x⋅y - 1*y⋅x, 1*x^3 - 1*x, 1*y^3 ]
#! / [ -1*y⋅x + 1*x⋅y, 1*x^3 - 1*x, 1*y^3 ]
B := AlgebroidFromDataTables( A );
#! Q-algebroid( {o}[x:o-≻o,y:o-≻o] ) defined by 1 object and 2 generating morphisms
IsAdmissibleAlgebroid( B );
Expand Down

0 comments on commit 3cef36c

Please sign in to comment.