Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

10 Linear closures of path categories and their quotients
 10.1 Constructors

10 Linear closures of path categories and their quotients

10.1 Constructors

10.1-1 LinearClosure
‣ LinearClosure( k, C )( operation )

Returns: a CAP category

Returns the \(k\)-linear closure category of C.

10.1-2 GroebnerBasis
‣ GroebnerBasis( kC, relations )( operation )

Returns: a list of morphisms

Returns the Groebner basis of the two-sided ideal generated by relations.

10.1-3 ReducedGroebnerBasis
‣ ReducedGroebnerBasis( kC, relations )( operation )

Returns: a list of morphisms

Returns a reduced Groebner basis of the two-sided ideal generated by relations.

10.1-4 QuotientCategory
‣ QuotientCategory( kC, relations )( operation )

Returns: a list of morphisms

Returns a the quotient category of kC modulo the two-sided ideal generated by relations. This method requires the Groebner basis of relations to be a finite set.

gap> LoadPackage( "Algebroids", false );
true
gap> str :=
>   "q(0..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]";;
gap> 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]" )
gap> k := HomalgFieldOfRationals( );
Q
gap> 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]" ) )
gap> kC := LinearClosure( k, C ); # or k[C];
Q-LinearClosure( 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]" ) ) )
gap> rels := [ kC.x^10 - kC.x^5, kC.abt - kC.et, kC.y^10 - kC.y^5, kC.x^5, kC.y^5 ];
[ 1*x^10 - 1*x^5:(0) -≻ (0), 1*a⋅b⋅t - 1*e⋅t:(1) -≻ (5),
  1*y^10 - 1*y^5:(5) -≻ (5), 1*x^5:(0) -≻ (0), 1*y^5:(5) -≻ (5) ]
gap> quo_kC := QuotientCategory( kC, rels ); # or kC / rels;
Q-LinearClosure( 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]" ) ) ) / [ 1*x^10 - 1*x^5,
1*a⋅b⋅t - 1*e⋅t, 1*y^10 - 1*y^5, ... ]
gap> HomStructure( quo_kC.0, quo_kC.5 );
<A row module over Q of rank 50>
gap> A := AlgebroidFromDataTables( quo_kC );
Q-algebroid( {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] ) defined by 6 objects and 9 generating morphisms
gap> HomStructure( A.0, A.5 );
<A row module over Q of rank 50>
gap> quo_C := C / [ [ C.x^10, C.x^5 ], [ C.abt, C.et ], [ C.y^10, C.y^5 ] ];
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]" ) ) / [ x^10 = x^5, a⋅b⋅t = e⋅t, y^10 = y^5 ]
gap> k_quo_C := k[quo_C];
Q-LinearClosure( 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]" ) ) / [ x^10 = x^5, a⋅b⋅t = e⋅t,
y^10 = y^5 ] )
gap> quo_k_quo_C := k_quo_C / [ k_quo_C.x^5, k_quo_C.y^5 ];
Q-LinearClosure( 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]" ) ) / [ x^10 = x^5, a⋅b⋅t = e⋅t,
y^10 = y^5 ] ) / [ 1*[x^5], 1*[y^5] ]
gap> HomStructure( quo_k_quo_C.0, quo_k_quo_C.5 );
<A row module over Q of rank 50>
gap> Dimension( quo_k_quo_C );
126
gap> ModelingCategory( quo_k_quo_C );
Q-LinearClosure( 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]" ) ) ) / [ 1*x^10 - 1*x^5,
1*a⋅b⋅t - 1*e⋅t, 1*y^10 - 1*y^5, ... ]
gap> B := AlgebroidFromDataTables( quo_k_quo_C );
Q-algebroid( {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] ) defined by 6 objects and 9 generating morphisms
gap> HomStructure( B.0, B.5 );
<A row module over Q of rank 50>
gap> LoadPackage( "Algebroids", false );
true
gap> k := HomalgFieldOfRationals( );
Q
gap> q := FinQuiver( "q(o)[x:o->o,y:o->o]" );
FinQuiver( "q(o)[x:o-≻o,y:o-≻o]" )
gap> C := PathCategory( q );
PathCategory( FinQuiver( "q(o)[x:o-≻o,y:o-≻o]" ) )
gap> kC := k[C];
Q-LinearClosure( PathCategory( FinQuiver( "q(o)[x:o-≻o,y:o-≻o]" ) ) )
gap> 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*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) ]
gap> gb := ReducedGroebnerBasis( kC, rels );
[ -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) ]
gap> f := Sum( gb );
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)
gap> ReductionOfMorphism( kC, f, rels );
1*x^2⋅y^3 + 1*y^5 + 1*x^2⋅y^2 + 1*y^4:(o) -≻ (o)
gap> ReductionOfMorphism( kC, f, gb );
0:(o) -≻ (o)
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 Ind

generated by GAPDoc2HTML