products/Sources/formale Sprachen/GAP/pkg/polenta/doc/chap3_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 (Polenta) - Chapter 3: An example application</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="chap3" 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="chap3_mj.html" >3</a> <a href="chap4_mj.html" >4</a> <a href="chap5_mj.html" >5</a> <a href="chapBib_mj.html" >Bib</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="chap2_mj.html" >[Previous Chapter]</a> <a href="chap4_mj.html" >[Next Chapter]</a> </div >
<p id="mathjaxlink" class="pcenter" ><a href="chap3.html" >[MathJax off]</a></p>
<p><a id="X81CAD2F27B2066C4" name="X81CAD2F27B2066C4" ></a></p>
<div class="ChapSects" ><a href="chap3_mj.html#X81CAD2F27B2066C4" >3 <span class="Heading" >An example application</span ></a>
<div class="ContSect" ><span class="tocline" ><span class="nocss" > </span ><a href="chap3_mj.html#X7DAC33E37B977087" >3.1 <span class="Heading" >Presentation for rational matrix groups</span ></a>
</span >
</div >
<div class="ContSect" ><span class="tocline" ><span class="nocss" > </span ><a href="chap3_mj.html#X79CF643081B3FB26" >3.2 <span class="Heading" >Modules series</span ></a>
</span >
</div >
<div class="ContSect" ><span class="tocline" ><span class="nocss" > </span ><a href="chap3_mj.html#X7BA34CD28059D6CD" >3.3 <span class="Heading" >Triangularizable subgroups</span ></a>
</span >
</div >
</div >
<h3>3 <span class="Heading" >An example application</span ></h3>
<p>In this section we outline three example computations with functions from the previous chapter.</p>
<p><a id="X7DAC33E37B977087" name="X7DAC33E37B977087" ></a></p>
<h4>3.1 <span class="Heading" >Presentation for rational matrix groups</span ></h4>
<div class="example" ><pre >
<span class="GAPprompt" >gap></span > <span class="GAPinput" >mats :=</span >
[ [ [ 1, 0, -1/2, 0 ], [ 0, 1, 0, 1 ], [ 0, 0, 1, 0 ], [ 0, 0, 0, 1 ] ],
[ [ 1, 1/2, 0, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 1 ], [ 0, 0, 0, 1 ] ],
[ [ 1, 0, 0, 1 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 0 ], [ 0, 0, 0, 1 ] ],
[ [ 1, -1/2, -3, 7/6 ], [ 0, 1, -1, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 0, 1 ] ],
[ [ -1, 3, 3, 0 ], [ 0, 0, 1, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 0, 1 ] ] ];
<span class="GAPprompt" >gap></span > <span class="GAPinput" >G := Group( mats );</span >
<matrix group with 5 generators>
# calculate an isomorphism from G to a pcp-group
<span class="GAPprompt" >gap></span > <span class="GAPinput" >nat := IsomorphismPcpGroup( G );;</span >
<span class="GAPprompt" >gap></span > <span class="GAPinput" >H := Image( nat );</span >
Pcp-group with orders [ 2, 2, 3, 5, 5, 5, 0, 0, 0 ]
<span class="GAPprompt" >gap></span > <span class="GAPinput" >h := GeneratorsOfGroup( H );</span >
[ g1, g2, g3, g4, g5, g6, g7, g8, g9]
<span class="GAPprompt" >gap></span > <span class="GAPinput" >mats2 := List( h, x -> PreImage( nat, x ) );;</span >
# take a random element of G
<span class="GAPprompt" >gap></span > <span class="GAPinput" >exp := [ 1, 1, 1, 1, 0, 0, 0, 0, 1 ];;</span >
<span class="GAPprompt" >gap></span > <span class="GAPinput" >g := MappedVector( exp, mats2 );</span >
[ [ -1, 17/2, -1, 233/6 ],
[ 0, 1, 0, -2 ],
[ 0, 1, -1, 2 ],
[ 0, 0, 0, 1 ] ]
# map g into the image of nat
<span class="GAPprompt" >gap></span > <span class="GAPinput" >i := ImageElm( nat, g );</span >
g1*g2*g3*g4*g9
# exponent vector
<span class="GAPprompt" >gap></span > <span class="GAPinput" >Exponents( i );</span >
[ 1, 1, 1, 1, 0, 0, 0, 0, 1 ]
# compare the preimage with g
<span class="GAPprompt" >gap></span > <span class="GAPinput" >PreImagesRepresentative( nat, i );</span >
[ [ -1, 17/2, -1, 233/6 ],
[ 0, 1, 0, -2 ],
[ 0, 1, -1, 2 ],
[ 0, 0, 0, 1 ] ]
<span class="GAPprompt" >gap></span > <span class="GAPinput" >last = g;</span >
true
</pre ></div >
<p><a id="X79CF643081B3FB26" name="X79CF643081B3FB26" ></a></p>
<h4>3.2 <span class="Heading" >Modules series</span ></h4>
<div class="example" ><pre >
<span class="GAPprompt" >gap></span > <span class="GAPinput" >gens :=</span >
[ [ [ 1746/1405, 524/7025, 418/1405, -77/2810 ],
[ 815/843, 899/843, -1675/843, 415/281 ],
[ -3358/4215, -3512/21075, 4631/4215, -629/1405 ],
[ 258/1405, 792/7025, 1404/1405, 832/1405 ] ],
[ [ -2389/2810, 3664/21075, 8942/4215, -35851/16860 ],
[ 395/281, 2498/2529, -5105/5058, 3260/2529 ],
[ 3539/2810, -13832/63225, -12001/12645, 87053/50580 ],
[ 5359/1405, -3128/21075, -13984/4215, 40561/8430 ] ] ];
<span class="GAPprompt" >gap></span > <span class="GAPinput" >H := Group( gens );</span >
<matrix group with 2 generators>
<span class="GAPprompt" >gap></span > <span class="GAPinput" >RadicalSeriesSolvableMatGroup( H );</span >
[ [ [ 1, 0, 0, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 0 ], [ 0, 0, 0, 1 ] ],
[ [ 1, 0, 0, 79/138 ], [ 0, 1, 0, -275/828 ], [ 0, 0, 1, -197/414 ] ],
[ [ 1, 0, -3, 2 ], [ 0, 1, 55/4, -55/8 ] ],
[ [ 1, 4/15, 2/3, 1/6 ] ],
[ ] ]
</pre ></div >
<p><a id="X7BA34CD28059D6CD" name="X7BA34CD28059D6CD" ></a></p>
<h4>3.3 <span class="Heading" >Triangularizable subgroups</span ></h4>
<div class="example" ><pre >
<span class="GAPprompt" >gap></span > <span class="GAPinput" >G := PolExamples(3);</span >
<matrix group with 2 generators>
<span class="GAPprompt" >gap></span > <span class="GAPinput" >GeneratorsOfGroup( G );</span >
[ [ [ 73/10, -35/2, 42/5, 63/2 ],
[ 27/20, -11/4, 9/5, 27/4 ],
[ -3/5, 1, -4/5, -9 ],
[ -11/20, 7/4, -2/5, 1/4 ] ],
[ [ -42/5, 423/10, 27/5, 479/10 ],
[ -23/10, 227/20, 13/10, 231/20 ],
[ 14/5, -63/5, -4/5, -79/5 ],
[ -1/10, 9/20, 1/10, 37/20 ] ] ]
<span class="GAPprompt" >gap></span > <span class="GAPinput" >subgroups := SubgroupsUnipotentByAbelianByFinite( G );</span >
rec( T := <matrix group with 2 generators>,
U := <matrix group with 4 generators> )
<span class="GAPprompt" >gap></span > <span class="GAPinput" >GeneratorsOfGroup( subgroups.T );</span >
[ [ [ 73/10, -35/2, 42/5, 63/2 ],
[ 27/20, -11/4, 9/5, 27/4 ],
[ -3/5, 1, -4/5, -9 ],
[ -11/20, 7/4, -2/5, 1/4 ] ],
[ [ -42/5, 423/10, 27/5, 479/10 ],
[ -23/10, 227/20, 13/10, 231/20 ],
[ 14/5, -63/5, -4/5, -79/5 ],
[ -1/10, 9/20, 1/10, 37/20 ] ] ]
# so G is triangularizable!
</pre ></div >
<div class="chlinkprevnextbot" > <a href="chap0_mj.html" >[Top of Book]</a> <a href="chap0_mj.html#contents" >[Contents]</a> <a href="chap2_mj.html" >[Previous Chapter]</a> <a href="chap4_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="chap3_mj.html" >3</a> <a href="chap4_mj.html" >4</a> <a href="chap5_mj.html" >5</a> <a href="chapBib_mj.html" >Bib</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 >
quality 98%
¤ Dauer der Verarbeitung: 0.8 Sekunden
¤
*© Formatika GbR, Deutschland