gap> Q := HomalgFieldOfRationals();; gap> A := VectorSpaceObject( 4, Q );; gap> B := VectorSpaceObject( 3, Q );; gap> C := VectorSpaceObject( 2, Q );; gap> alpha := VectorSpaceMorphism( A, > HomalgMatrix( [ [ 1, 1, 1 ], [ 0, 1, 1 ], > [ 1, 0, 1 ], [ 1, 1, 0 ] ], 4, 3, Q ), B );; gap> gamma := VectorSpaceMorphism( C, > HomalgMatrix( [ [ -1, 1, -1 ], [ 1, 0, -1 ] ], 2, 3, Q ), B );; gap> p := ProjectionInFactorOfFiberProduct( [ alpha, gamma ], 1 );; gap> q := ProjectionInFactorOfFiberProduct( [ alpha, gamma ], 2 );; gap> PreCompose( AsGeneralizedMorphism( alpha ), GeneralizedInverse( gamma ) ); <A morphism in Generalized morphism category of Category of matrices over Q> gap> gen1 := PreCompose( AsGeneralizedMorphism( alpha ), > GeneralizedInverse( gamma ) ); <A morphism in Generalized morphism category of Category of matrices over Q> gap> gen2 := PreCompose( GeneralizedInverse( p ), AsGeneralizedMorphism( q ) ); <A morphism in Generalized morphism category of Category of matrices over Q> gap> IsCongruentForMorphisms( gen1, gen2 ); true

We are going to intersect the nodal curve f = y^2 - x^2(x+1) and the cusp g = (x+y)^2 - (y-x)^3. The two curves are arranged in a way such that they intersect at (0,0) with intersection number as high as possible. We are going to compute this intersection number using the definition of the intersection number as the length of the module R/(f,g) localized at (0,0). In order to model modules over the localization of Q[x,y] at (0,0), we use a suitable Serre quotient category. 1 2 1 1 true We are going to intersect the nodal curve f = y^2 - x^2(x+1) and the cusp g = (x+y)^2 - (y-x)^3. The two curves are arranged in a way such that they intersect at (0,0) with intersection number as high as possible. We are going to compute this intersection number using the definition of the intersection number as the length of the module R/(f,g) localized at (0,0). In order to model modules over the localization of Q[x,y] at (0,0), we use a suitable Serre quotient category. 1 2 1 1 true We are going to intersect the nodal curve f = y^2 - x^2(x+1) and the cusp g = (x+y)^2 - (y-x)^3. The two curves are arranged in a way such that they intersect at (0,0) with intersection number as high as possible. We are going to compute this intersection number using the definition of the intersection number as the length of the module R/(f,g) localized at (0,0). In order to model modules over the localization of Q[x,y] at (0,0), we use a suitable Serre quotient category. 1 2 1 1 true

\href{https://terrytao.wordpress.com/2015/10/07/sweeping-a-matrix-rotates-its-graph/}{\textrm{Geometric interpretation of sweeping a matrix by Terence Tao.}}

gap> Q := HomalgFieldOfRationals();; gap> V := VectorSpaceObject( 3, Q );; gap> mat := HomalgMatrix( [ [ 9, 8, 7 ], [ 6, 5, 4 ], [ 3, 2, 1 ] ], 3, 3, Q );; gap> alpha := VectorSpaceMorphism( V, mat, V );; gap> graph := FiberProductEmbeddingInDirectSum( > [ alpha, IdentityMorphism( V ) ] );; gap> Display( graph ); [ [ 1, -2, 1, 0, 0, 0 ], [ -4/3, 7/3, 0, 2, 1, 0 ], [ 5/3, -8/3, 0, -1, 0, 1 ] ] A split monomorphism in Category of matrices over Q gap> D := DirectSum( V, V );; gap> rotmat := HomalgMatrix( [ [ 0, 0, 0, -1, 0, 0 ], > [ 0, 1, 0, 0, 0, 0 ], > [ 0, 0, 1, 0, 0, 0 ], > [ 1, 0, 0, 0, 0, 0 ], > [ 0, 0, 0, 0, 1, 0 ], > [ 0, 0, 0, 0, 0, 1 ] ], > 6, 6, Q );; gap> rot := VectorSpaceMorphism( D, rotmat, D );; gap> p := PreCompose( graph, rot );; gap> Display( p ); [ [ 0, -2, 1, -1, 0, 0 ], [ 2, 7/3, 0, 4/3, 1, 0 ], [ -1, -8/3, 0, -5/3, 0, 1 ] ] A morphism in Category of matrices over Q gap> pi1 := ProjectionInFactorOfDirectSum( [ V, V ], 1 );; gap> pi2 := ProjectionInFactorOfDirectSum( [ V, V ], 2 );; gap> reversed_arrow := PreCompose( p, pi1 );; gap> arrow := PreCompose( p, pi2 );; gap> g := GeneralizedMorphismBySpan( reversed_arrow, arrow );; gap> IsHonest( g ); true gap> sweep_1_alpha := HonestRepresentative( g );; gap> Display( sweep_1_alpha ); [ [ -1/9, 8/9, 7/9 ], [ 2/3, -1/3, -2/3 ], [ 1/3, -2/3, -4/3 ] ] A morphism in Category of matrices over Q gap> Display( alpha ); [ [ 9, 8, 7 ], [ 6, 5, 4 ], [ 3, 2, 1 ] ] A morphism in Category of matrices over Q

generated by GAPDoc2HTML