Difference between revisions of "ApCoCoA-1:SpecialLinear group"

From ApCoCoAWiki
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
=== <div id="SpecialLinear_group">[[:ApCoCoA:Symbolic data#Special Linear_group|SpecialLinear group]]</div> ===
+
=== <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);
+
   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>