‣ LinearClosure ( k, C ) | ( operation ) |
Returns: a CAP category
Returns the \(k\)-linear closure category of C.
‣ GroebnerBasis ( kC, relations ) | ( operation ) |
Returns: a list of morphisms
Returns the Groebner basis of the two-sided ideal generated by relations.
‣ ReducedGroebnerBasis ( kC, relations ) | ( operation ) |
Returns: a list of morphisms
Returns a reduced Groebner basis of the two-sided ideal generated by relations.
‣ 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)
generated by GAPDoc2HTML