# Difference between revisions of "ApCoCoA-1:Fibonacci groups"

### Fibonacci groups

#### Description

Fibonacci groups are related to the inductive definition of the Fibonacci numbers f_{i} + f_{i+1} = f_{i+2} where f_{1} = f_{2} = 1. For a natural number m <= 7 this groups are finite (see table below).

``` F(2,m) = <x_{1},...,x_{m} | x_{i}x_{i+1} = x_{i+2}>
```
 m isomorphic group order 1 trivial group 1 2 trivial group 1 3 Quaternion group 8 4 cyclic group Z5 5 5 cyclic group Z11 11 7 cyclic group Z29 29

#### Reference

R. Thomas, “The Fibonacci groups F(2,2m)”, Bull. London Math. Soc.,21, No. 5, 463-465 (1989).

#### Computation

``` /*Use the ApCoCoA package ncpoly.*/

// Number of fibonacci group
MEMORY.N:=7;

Use ZZ/(2)[x[1..MEMORY.N],y[1..MEMORY.N]];
NC.SetOrdering("LLEX");

Define CreateRelationsFibonacci()
Relations:=[];

// add the relations of the inverse elements
For Index1 := 1 To MEMORY.N Do
//Append(Relations,[[x[Index1],y[Index1]],[1]]);
//Append(Relations,[[y[Index1],x[Index1]],[1]]);
EndFor;

// add the relations x_{i}x_{i+1} = x_{i+2}
For Index2 := 1 To MEMORY.N -2 Do
Append(Relations,[[x[Index2],x[Index2+1]],[x[Index2+2]]]);
EndFor;
Append(Relations,[[x[MEMORY.N-1],x[MEMORY.N]],[x[1]]]);
Append(Relations,[[x[MEMORY.N],x[1]],[x[2]]]);

Return Relations;
EndDefine;

Relations:=CreateRelationsFibonacci();
Relations;

Gb:=NC.GB(Relations,31,1,100,1000);
Gb;
```