Difference between revisions of "ApCoCoA-1:Cyclic groups"

From ApCoCoAWiki
 
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=== <div id="Cyclic_groups">[[:ApCoCoA:Symbolic data#Cyclic_groups|Cyclic groups]]</div> ===
+
=== <div id="Cyclic_groups">[[:ApCoCoA:Symbolic data#Cyclic_groups|Cyclic Groups]]</div> ===
 
==== Description ====
 
==== Description ====
 
Every cyclic group is generated by a single element a. If n is finite the group is isomorphic to Z/nZ, otherwise it can be
 
Every cyclic group is generated by a single element a. If n is finite the group is isomorphic to Z/nZ, otherwise it can be
Line 5: Line 5:
 
  C(n) = <a | a^{n} = 1>
 
  C(n) = <a | a^{n} = 1>
  
(Reference: Gallian, Joseph (1998), Contemporary abstract algebra (4th ed.), Boston: Houghton Mifflin, Chapter 4
+
==== Reference ====
 +
Joseph A. Gallian, Contemporary Abstract Algebra (4th ed.), Boston: Houghton Mifflin, Chapter 4, 1998.
  
 
==== Computation ====
 
==== Computation ====
Line 16: Line 17:
 
   Use ZZ/(2)[a];
 
   Use ZZ/(2)[a];
 
   NC.SetOrdering("LLEX");
 
   NC.SetOrdering("LLEX");
 +
 
 
   Define CreateRelationsCyclic()
 
   Define CreateRelationsCyclic()
  Relations:=[];
+
    Relations:=[];
 
+
    // Add relation a^n = 1
  // add relation a^n = 1
+
    Append(Relations,[[a^MEMORY.N],[1]]);
  Append(Relations,[[a^MEMORY.N],[-1]]);
+
    Return Relations;
  Return Relations;
 
 
   EndDefine;
 
   EndDefine;
 
    
 
    
 
   Relations:=CreateRelationsCyclic();
 
   Relations:=CreateRelationsCyclic();
 +
  Relations;
 
    
 
    
   // Compute the Groebner Bases
+
   // Compute a Groebner Basis.
   GB:=NC.GB(Relations);
+
   Gb:=NC.GB(Relations);
   // RESULT for MEMORY.N = 5 :: [[[a^5], [1]]]
+
  Gb;
 +
   // RESULT for MEMORY.N = 5 :: [[[a^5], [1]]]
 +
 
 +
==== Example in Symbolic Data Format ====
 +
  <FREEALGEBRA createdAt="2014-03-02" createdBy="strohmeier">
 +
  <vars>a</vars>
 +
  <basis>
 +
  <ncpoly>a^5-1</ncpoly>
 +
  </basis>
 +
  <Comment>Cyclic_group_5</Comment>
 +
  </FREEALGEBRA>

Latest revision as of 20:28, 22 April 2014

Description

Every cyclic group is generated by a single element a. If n is finite the group is isomorphic to Z/nZ, otherwise it can be interpreted as Z with the addition of integers as the group operation. For every cyclic group there only exists one subgroup containing a, the group itself.

C(n) = <a | a^{n} = 1>

Reference

Joseph A. Gallian, Contemporary Abstract Algebra (4th ed.), Boston: Houghton Mifflin, Chapter 4, 1998.

Computation

 /*Use the ApCoCoA package ncpoly.*/
 
 // Number of cyclic group
 MEMORY.N:=5;
 
 Use ZZ/(2)[a];
 NC.SetOrdering("LLEX");
 
 Define CreateRelationsCyclic()
   Relations:=[];
   // Add relation a^n = 1
   Append(Relations,[[a^MEMORY.N],[1]]);
   Return Relations;
 EndDefine;
 
 Relations:=CreateRelationsCyclic();
 Relations;
 
 // Compute a Groebner Basis.
 Gb:=NC.GB(Relations);
 Gb;
 // RESULT for MEMORY.N = 5 :: [[[a^5], [1]]]

Example in Symbolic Data Format

 <FREEALGEBRA createdAt="2014-03-02" createdBy="strohmeier">
 	<vars>a</vars>
 	<basis>
 	<ncpoly>a^5-1</ncpoly>
 	</basis>
 	<Comment>Cyclic_group_5</Comment>
 </FREEALGEBRA>