Difference between revisions of "ApCoCoA-1:SpecialLinear group"
From ApCoCoAWiki
StrohmeierB (talk | contribs) |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | === <div id="SpecialLinear_group">[[:ApCoCoA:Symbolic data#SpecialLinear_group|Special Linear | + | === <div id="SpecialLinear_group">[[:ApCoCoA:Symbolic data#SpecialLinear_group|Special Linear Group]]</div> === |
==== Description ==== | ==== Description ==== | ||
The special linear group over Z is the group of all n x n matrices with coefficients in Z which has a determinant equals 0. | The special linear group over Z is the group of all n x n matrices with coefficients in Z which has a determinant equals 0. | ||
Line 16: | Line 16: | ||
Define CreateRelationsSpecialLinear() | Define CreateRelationsSpecialLinear() | ||
Relations:=[]; | Relations:=[]; | ||
+ | |||
// add the invers relations | // add the invers relations | ||
Append(Relations,[[a,c],[1]]); | Append(Relations,[[a,c],[1]]); | ||
Line 32: | Line 33: | ||
Relations:=CreateRelationsSpecialLinear(); | Relations:=CreateRelationsSpecialLinear(); | ||
− | + | Gb:=NC.GB(Relations,31,1,100,1000); | |
+ | ====Example in Symbolic Data Format==== | ||
+ | <FREEALGEBRA createdAt="2014-01-20" createdBy="strohmeier"> | ||
+ | <vars>a,b,c,d</vars> | ||
+ | <uptoDeg>9</uptoDeg> | ||
+ | <basis> | ||
+ | <ncpoly>a*c-1</ncpoly> | ||
+ | <ncpoly>c*a-1</ncpoly> | ||
+ | <ncpoly>b*d-1</ncpoly> | ||
+ | <ncpoly>d*b-1</ncpoly> | ||
+ | <ncpoly>a*b*a-b*a*b</ncpoly> | ||
+ | <ncpoly>(a*b*a)^4-1</ncpoly> | ||
+ | </basis> | ||
+ | <Comment>Special_Linear_group</Comment> | ||
+ | </FREEALGEBRA> |
Latest revision as of 21:02, 22 April 2014
Description
The special linear group over Z is the group of all n x n matrices with coefficients in Z which has a determinant equals 0. A simple representation is given by:
SL_2(Z) = <a,b | aba = bab, (aba)^4 = 1 >
Reference
Andrew Baker: An introduction to matrix groups and their applications
Computation
/*Use the ApCoCoA package ncpoly.*/ // a is invers to c, b is invers to d Use ZZ/(2)[a,b,c,d]; NC.SetOrdering("LLEX"); Define CreateRelationsSpecialLinear() Relations:=[]; // add the invers relations Append(Relations,[[a,c],[1]]); Append(Relations,[[c,a],[1]]); Append(Relations,[[b,d],[1]]); Append(Relations,[[d,b],[1]]); // add the relation aba = bab Append(Relations,[[a,b,a],[b,a,b]]); // add the relation (aba)^4 = 1 Append(Relations,[[a,b,a,a,b,a,a,b,a,a,b,a],[1]]); Return Relations; EndDefine; Relations:=CreateRelationsSpecialLinear(); Gb:=NC.GB(Relations,31,1,100,1000);
Example in Symbolic Data Format
<FREEALGEBRA createdAt="2014-01-20" createdBy="strohmeier"> <vars>a,b,c,d</vars> <uptoDeg>9</uptoDeg> <basis> <ncpoly>a*c-1</ncpoly> <ncpoly>c*a-1</ncpoly> <ncpoly>b*d-1</ncpoly> <ncpoly>d*b-1</ncpoly> <ncpoly>a*b*a-b*a*b</ncpoly> <ncpoly>(a*b*a)^4-1</ncpoly> </basis> <Comment>Special_Linear_group</Comment> </FREEALGEBRA>