Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/GAP/pkg/modulepresentationsforcap/doc/   (Algebra von RWTH Aachen Version 4.15.1©)  Datei vom 22.8.2025 mit Größe 23 kB image not shown  

 chap2_mj.html   Interaktion und
PortierbarkeitHTML

 
 products/Sources/formale Sprachen/GAP/pkg/modulepresentationsforcap/doc/chap2_mj.html


<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<script type="text/javascript"
  src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
<title>GAP (ModulePresentationsForCAP) - Chapter 2: Examples and Tests</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="generator" content="GAPDoc2HTML" />
<link rel="stylesheet" type="text/css" href="manual.css" />
<script src="manual.js" type="text/javascript"></script>
<script type="text/javascript">overwriteStyle();</script>
</head>
<body class="chap2"  onload="jscontent()">


<div class="chlinktop"><span class="chlink1">Goto Chapter: </span><a href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a href="chap2_mj.html">2</a>  <a href="chapInd_mj.html">Ind</a>  </div>

<div class="chlinkprevnexttop"> <a href="chap0_mj.html">[Top of Book]</a>   <a href="chap0_mj.html#contents">[Contents]</a>    <a href="chap1_mj.html">[Previous Chapter]</a>    <a href="chapInd_mj.html">[Next Chapter]</a>   </div>

<p id="mathjaxlink" class="pcenter"><a href="chap2.html">[MathJax off]</a></p>
<p><a id="X7967FE8E7BBDF485" name="X7967FE8E7BBDF485"></a></p>
<div class="ChapSects"><a href="chap2_mj.html#X7967FE8E7BBDF485">2 <span class="Heading">Examples and Tests</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2_mj.html#X7FFB58F67850769C">2.1 <span class="Heading">Annihilator</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2_mj.html#X86E8A9537A87B4EC">2.2 <span class="Heading">Intersection of Submodules</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2_mj.html#X8296A25779A52244">2.3 <span class="Heading">Koszul Complex</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2_mj.html#X808DC49C7ED99B52">2.4 <span class="Heading">Monoidal Categories</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2_mj.html#X828DF9B1782D1AF6">2.5 <span class="Heading">Closed Monoidal Structure</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2_mj.html#X7C3B1694803034A2">2.6 <span class="Heading">Projectivity test</span></a>
</span>
</div>
</div>

<h3>2 <span class="Heading">Examples and Tests</span></h3>

<p><a id="X7FFB58F67850769C" name="X7FFB58F67850769C"></a></p>

<h4>2.1 <span class="Heading">Annihilator</span></h4>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">ZZZ := HomalgRingOfIntegersInSingular();;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">fpres := LeftPresentations( ZZZ );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M1 := AsLeftPresentation( fpres, HomalgMatrix( [ [ "2" ] ], ZZZ ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M2 := AsLeftPresentation( fpres, HomalgMatrix( [ [ "3" ] ], ZZZ ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M3 := AsLeftPresentation( fpres, HomalgMatrix( [ [ "4" ] ], ZZZ ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M := DirectSum( M1, M2, M3 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( Annihilator( M ) );</span>
12

A monomorphism in Category of left presentations of Z
<span class="GAPprompt">gap></span> <span class="GAPinput">fpres := RightPresentations( ZZZ );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M1 := AsRightPresentation( fpres, HomalgMatrix( [ [ "2" ] ], ZZZ ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M2 := AsRightPresentation( fpres, HomalgMatrix( [ [ "3" ] ], ZZZ ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M3 := AsRightPresentation( fpres, HomalgMatrix( [ [ "4" ] ], ZZZ ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M := DirectSum( M1, M2, M3 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( Annihilator( M ) );</span>
12

A monomorphism in Category of right presentations of Z
</pre></div>

<p><a id="X86E8A9537A87B4EC" name="X86E8A9537A87B4EC"></a></p>

<h4>2.2 <span class="Heading">Intersection of Submodules</span></h4>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Q := HomalgFieldOfRationalsInSingular();;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R := Q * "x,y";</span>
Q[x,y]
<span class="GAPprompt">gap></span> <span class="GAPinput">fpres := LeftPresentations( R );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">F := AsLeftPresentation( fpres, HomalgMatrix( [ [ 0 ] ], R ) );</span>
<An object in Category of left presentations of Q[x,y]>
<span class="GAPprompt">gap></span> <span class="GAPinput">I1 := AsLeftPresentation( fpres, HomalgMatrix( [ [ "x" ] ], R ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">I2 := AsLeftPresentation( fpres, HomalgMatrix( [ [ "y" ] ], R ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( I1 );</span>
x

An object in Category of left presentations of Q[x,y]
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( I2 );</span>
y

An object in Category of left presentations of Q[x,y]
<span class="GAPprompt">gap></span> <span class="GAPinput">eps1 := PresentationMorphism( F, HomalgMatrix( [ [ 1 ] ], R ), I1 );</span>
<A morphism in Category of left presentations of Q[x,y]>
<span class="GAPprompt">gap></span> <span class="GAPinput">eps2 := PresentationMorphism( F, HomalgMatrix( [ [ 1 ] ], R ), I2 );</span>
<A morphism in Category of left presentations of Q[x,y]>
<span class="GAPprompt">gap></span> <span class="GAPinput">kernelemb1 := KernelEmbedding( eps1 );</span>
<A monomorphism in Category of left presentations of Q[x,y]>
<span class="GAPprompt">gap></span> <span class="GAPinput">kernelemb2 := KernelEmbedding( eps2 );</span>
<A monomorphism in Category of left presentations of Q[x,y]>
<span class="GAPprompt">gap></span> <span class="GAPinput">P := FiberProduct( kernelemb1, kernelemb2 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( P );</span>
(an empty 0 x 1 matrix)

An object in Category of left presentations of Q[x,y]
<span class="GAPprompt">gap></span> <span class="GAPinput">pi1 := ProjectionInFactorOfFiberProduct( [ kernelemb1, kernelemb2 ], 1 );</span>
<A monomorphism in Category of left presentations of Q[x,y]>
<span class="GAPprompt">gap></span> <span class="GAPinput">composite := PreCompose( pi1, kernelemb1 );</span>
<A monomorphism in Category of left presentations of Q[x,y]>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( composite );</span>
x*y

A monomorphism in Category of left presentations of Q[x,y]
</pre></div>

<p><a id="X8296A25779A52244" name="X8296A25779A52244"></a></p>

<h4>2.3 <span class="Heading">Koszul Complex</span></h4>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Q := HomalgFieldOfRationalsInSingular();;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R := Q * "x,y,z";;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">fpres := LeftPresentations( R );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M := HomalgMatrix( [ [ "x" ], [ "y" ], [ "z" ] ], 3, 1, R );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Ml := AsLeftPresentation( fpres, M );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">eps := CoverByFreeModule( Ml );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">iota1 := KernelEmbedding( eps );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( iota1 );</span>
x,
y,


A monomorphism in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( Source( iota1 ) );</span>
0, -z,y,
-z,0, x,
-y,x, 0 

An object in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">pi1 := CoverByFreeModule( Source( iota1 ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">d1 := PreCompose( pi1, iota1 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( d1 );</span>
x,
y,


A morphism in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">iota2 := KernelEmbedding( d1 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( iota2 );</span>
0, -z,y,
-z,0, x,
-y,x, 0 

A monomorphism in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( Source( iota2 ) );;</span>
x,-y,z

An object in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">pi2 := CoverByFreeModule( Source( iota2 ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">d2 := PreCompose( pi2, iota2 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( d2 );</span>
0, -z,y,
-z,0, x,
-y,x, 0 

A morphism in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">iota3 := KernelEmbedding( d2 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( iota3 );</span>
x,-y,z

A monomorphism in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( Source( iota3 ) );</span>
(an empty 0 x 1 matrix)

An object in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">pi3 := CoverByFreeModule( Source( iota3 ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">d3 := PreCompose( pi3, iota3 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( d3 );</span>
x,-y,z

A morphism in Category of left presentations of Q[x,y,z]
<span class="GAPprompt">gap></span> <span class="GAPinput">N := HomalgMatrix( [ [ "x" ] ], 1, 1, R );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Nl := AsLeftPresentation( fpres, N );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">d2Nl := TensorProductOnMorphisms( d2, IdentityMorphism( Nl ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">d1Nl := TensorProductOnMorphisms( d1, IdentityMorphism( Nl ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">IsZero( PreCompose( d2Nl, d1Nl ) );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">cycles := KernelEmbedding( d1Nl );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">boundaries := ImageEmbedding( d2Nl );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">boundaries_in_cyles := LiftAlongMonomorphism( cycles, boundaries );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">homology := CokernelObject( boundaries_in_cyles );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">LessGenFunctor := FunctorLessGeneratorsLeft( fpres );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">homology := ApplyFunctor( LessGenFunctor, homology );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">StdBasisFunctor := FunctorStandardModuleLeft( fpres );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">homology := ApplyFunctor( StdBasisFunctor, homology );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( homology );</span>
z,
y,


An object in Category of left presentations of Q[x,y,z]
</pre></div>

<p><a id="X808DC49C7ED99B52" name="X808DC49C7ED99B52"></a></p>

<h4>2.4 <span class="Heading">Monoidal Categories</span></h4>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">ZZZ := HomalgRingOfIntegers();;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">fpres := LeftPresentations( ZZZ );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Ml := AsLeftPresentation( fpres, HomalgMatrix( [ [ 2 ] ], 1, 1, ZZZ ) );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Nl := AsLeftPresentation( fpres, HomalgMatrix( [ [ 3 ] ], 1, 1, ZZZ ) );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Tl := TensorProductOnObjects( Ml, Nl );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( Tl ) );</span>
[ [  3 ],
  [  2 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsZeroForObjects( Tl );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">Bl := Braiding( DirectSum( Ml, Nl ), DirectSum( Ml, Ml ) );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( Bl ) );</span>
[ [  1,  0,  0,  0 ],
  [  0,  0,  1,  0 ],
  [  0,  1,  0,  0 ],
  [  0,  0,  0,  1 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsWellDefined( Bl );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">Ul := TensorUnit( CapCategory( Ml ) );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">IntHoml := InternalHomOnObjects( DirectSum( Ml, Ul ), Nl );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( IntHoml ) );</span>
[ [  1,  2 ],
  [  0,  3 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">generator_l1 := StandardGeneratorMorphism( IntHoml, 1 );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">morphism_l1 := LambdaElimination( DirectSum( Ml, Ul ), Nl, generator_l1 );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( morphism_l1 ) );</span>
[ [  -3 ],
  [   2 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">generator_l2 := StandardGeneratorMorphism( IntHoml, 2 );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">morphism_l2 := LambdaElimination( DirectSum( Ml, Ul ), Nl, generator_l2 );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( morphism_l2 ) );</span>
[ [   0 ],
  [  -1 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsEqualForMorphisms( LambdaIntroduction( morphism_l1 ), generator_l1 );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">IsCongruentForMorphisms( LambdaIntroduction( morphism_l1 ), generator_l1 );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">IsEqualForMorphisms( LambdaIntroduction( morphism_l2 ), generator_l2 );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">IsCongruentForMorphisms( LambdaIntroduction( morphism_l2 ), generator_l2 );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">fpres := RightPresentations( ZZZ );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Mr := AsRightPresentation( fpres, HomalgMatrix( [ [ 2 ] ], 1, 1, ZZZ ) );</span>
<An object in Category of right presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Nr := AsRightPresentation( fpres, HomalgMatrix( [ [ 3 ] ], 1, 1, ZZZ ) );</span>
<An object in Category of right presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Tr := TensorProductOnObjects( Mr, Nr );</span>
<An object in Category of right presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( Tr ) );</span>
[ [  3,  2 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsZeroForObjects( Tr );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">Br := Braiding( DirectSum( Mr, Nr ), DirectSum( Mr, Mr ) );</span>
<A morphism in Category of right presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( Br ) );</span>
[ [  1,  0,  0,  0 ],
  [  0,  0,  1,  0 ],
  [  0,  1,  0,  0 ],
  [  0,  0,  0,  1 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsWellDefined( Br );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">Ur := TensorUnit( CapCategory( Mr ) );</span>
<An object in Category of right presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">IntHomr := InternalHomOnObjects( DirectSum( Mr, Ur ), Nr );</span>
<An object in Category of right presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( IntHomr ) );</span>
[ [  1,  0 ],
  [  2,  3 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">generator_r1 := StandardGeneratorMorphism( IntHomr, 1 );</span>
<A morphism in Category of right presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">morphism_r1 := LambdaElimination( DirectSum( Mr, Ur ), Nr, generator_r1 );</span>
<A morphism in Category of right presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( morphism_r1 ) );</span>
[ [  -3,   2 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">generator_r2 := StandardGeneratorMorphism( IntHoml, 2 );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">morphism_r2 := LambdaElimination( DirectSum( Ml, Ul ), Nl, generator_r2 );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( UnderlyingMatrix( morphism_r2 ) );</span>
[ [   0 ],
  [  -1 ] ]
<span class="GAPprompt">gap></span> <span class="GAPinput">IsEqualForMorphisms( LambdaIntroduction( morphism_r1 ), generator_r1 );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">IsCongruentForMorphisms( LambdaIntroduction( morphism_r1 ), generator_r1 );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">IsEqualForMorphisms( LambdaIntroduction( morphism_r2 ), generator_r2 );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">IsCongruentForMorphisms( LambdaIntroduction( morphism_r2 ), generator_r2 );</span>
true
</pre></div>

<p><a id="X828DF9B1782D1AF6" name="X828DF9B1782D1AF6"></a></p>

<h4>2.5 <span class="Heading">Closed Monoidal Structure</span></h4>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R := HomalgRingOfIntegers( );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">fpres := LeftPresentations( R );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M := AsLeftPresentation( fpres, HomalgMatrix( [ [ 2 ] ], 1, 1, R ) );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">N := AsLeftPresentation( fpres, HomalgMatrix( [ [ 3 ] ], 1, 1, R ) );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">T := TensorProductOnObjects( M, N );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( T );</span>
[ [  3 ],
  [  2 ] ]

An object in Category of left presentations of Z
<span class="GAPprompt">gap></span> <span class="GAPinput">IsZero( T );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">H := InternalHomOnObjects( DirectSum( M, M ), DirectSum( M, N ) );</span>
<An object in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( H );</span>
[ [   0,   0,   0,  -2 ],
  [   1,   2,   0,   0 ],
  [   0,   2,   2,   0 ],
  [   2,   3,   0,   2 ] ]

An object in Category of left presentations of Z
<span class="GAPprompt">gap></span> <span class="GAPinput">alpha := StandardGeneratorMorphism( H, 3 );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">l := LambdaElimination( DirectSum( M, M ), DirectSum( M, N ), alpha );</span>
<A morphism in Category of left presentations of Z>
<span class="GAPprompt">gap></span> <span class="GAPinput">IsZero( l );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">Display( l );</span>
[ [  -2,   6 ],
  [  -1,  -3 ] ]

A morphism in Category of left presentations of Z
</pre></div>

<p><a id="X7C3B1694803034A2" name="X7C3B1694803034A2"></a></p>

<h4>2.6 <span class="Heading">Projectivity test</span></h4>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Q := HomalgFieldOfRationalsInSingular();;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R := Q * "x";;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">F := FreeLeftPresentation( 2, Q );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">HasIsProjective( F ) and IsProjective( F );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">G := FreeRightPresentation( 2, Q );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">HasIsProjective( G ) and IsProjective( G );</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">M := AsLeftPresentation( HomalgMatrix( "[ x, x ]", 1, 2, R ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">IsProjective( M );</span>
false
<span class="GAPprompt">gap></span> <span class="GAPinput">N := AsLeftPresentation( HomalgMatrix( "[ 1, x ]", 1, 2, R ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">IsProjective( N );</span>
true
</pre></div>


<div class="chlinkprevnextbot"> <a href="chap0_mj.html">[Top of Book]</a>   <a href="chap0_mj.html#contents">[Contents]</a>    <a href="chap1_mj.html">[Previous Chapter]</a>    <a href="chapInd_mj.html">[Next Chapter]</a>   </div>


<div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a href="chap2_mj.html">2</a>  <a href="chapInd_mj.html">Ind</a>  </div>

<hr />
<p class="foot">generated by <a href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc">GAPDoc2HTML</a></p>
</body>
</html>

99%


¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.22Angebot  Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können  ¤

*Eine klare Vorstellung vom Zielzustand






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.