Orta Doğu Teknik Üniversitesi, Ankara Grup/Temsil Kuramından Kesitler Feza Gürsey Enstitüsü, İstanbul 08 Şubat 2010
GAP ne için kullanılır? Yapılacak ispatların doğruluğunu bazı gruplar üzerinde denemek Gruplar Kuramı eğitiminde önemli görülen tanımların GAP ile somutlaştırılması Grupların merak edilebilecek bazı özelliklerini incelemek
GAP ta grup nasıl tanımlanır? Üreteçlerle grup tanımlama gap g:=group((1,2,3,4,5),(1,2)); Group([(1,2,3,4,5),(1,2)]) gap h:=group([[1,2,3],[1,2,1],[1,1,-1]]);; Serbest Grup tanımlama ve bu serbest gruptan, üreteç ve bağıntılarla grup tanımlama gap g:=freegroup(2); free group on the generators [f1,f2] gap h := g/[g.1 7, g.2 2, g.2 g.1 g.2 g.1]; fp group on the generators [f1,f2] AllSmallGroups(Mertebe,Aranan Kriter);
Listeler ve Kümeler Liste tanımlama a:=[]; b:=["elma",2,true,5,false]; Listeye nesne ekleme Add(liste adı,eklenecek nesne); Listeye liste ekleme Append(liste adı,eklenecek liste); Listeyi kümeye çevirmek Set(liste adı ); Kümeye eleman eklemek AddSet(küme adı, eklenecek eleman);
Koşullu İfadeler gap if... koşul... then... yapılması istenen şeyler elif... başka bir koşul... then... yapılması istenen şeyler else... yapılması istenen şeyler fi;
Döngüler for döngüsü gap for... değişken... in... liste... do yapılması istenen şey od; while döngüsü gap while... koşul... do yapılması istenen şey od;
Örnek gap g:=symmetricgroup(7); Sym([1..7]) gap a:=(1,2,3,5)(4,6); (1,2,3,5)(4,6) gap b:=[]; [] gap for x in g do if a x = x a then AddSet(b,x); fi; od;
Vektörler ve Matrisler gap v:=[2,1,3,4/5];; gap u:=[1,2,4,5];; gap 2*v; [4,2,6,8/5] gap v*u; 20 gap m:=[[1,1,-1],[2,0,4],[1,2,5]];; gap v*m; [7,8,17] gap m*u; [-1,18,25] gap m[1][3]; -1
Fonksiyonlar gap fonksiyona verilecek isim:=function(değişkenler) local... fonksiyonda kullanılacak diğer değişkenler; değişkenlerle yapılacak işlemler return... fonsiyonun vermesi istenen sonuç; end; function( değişkenler )... end
Örnek gap cent:=function(g,x) local i,a; a:=[]; for i in g do if x i = i x then AddSet(a,i); fi; od; return a; end; function( g,x )... end gap cent(symmetricgroup(5),(1,2)); Group([(1,2),(3,5),(4,5)])
Bazı ön tanımlı Fonksiyonlar Center IsSolvable IsNilpotent IsSimple IsSubgroup Order ConjugacyClasses RightTransversal Aranan bir fonksiyonun GAP ta tanımlı olup olmadığına?aranan fonksiyonun adı şeklinde bakılabilir
Yapı Dönüşümleri GroupHomomorphismByImages(Tanım Grubu, Görüntü Grubu, Tanım Grubunun üreteçleri, üreteçlerin görüntüleri); Image(yapı dönüşümünün adı, görüntüsü aranan eleman); Kernel(yapı dönüşümünün adı); PreImage(yapı dönüşümünün adı, ters görüntüsü aranan eleman); PreImageRepresentative(yapı dönüşümünün adı, ters görüntüsü aranan eleman); IsomorphismGroups(grup 1, grup 2);
Karakter Tablosu Display(CharacterTable(Grup));
gap comm:=function(x) local a,i,j; a:=[]; for i in x do for j in x do AddSet(a,iˆ-1*jˆ-1*i*j); od; od; return Group(a); end; comm(x)... end
gap IsSolv:=function(x) local a,b,i; a:=x; b:=comm(x); i:=0; while not (Size(a)=Size(b)) do a:=b; b:=comm(a); i:=i+1; od; if Size(a)=1 then Print(x," is solvable with solvability length ",i,"\ n"); else Print(x," is not solvable\ n") fi; end; IsSolv(x)... end
gap ct2:=charactertable("a5"); CharacterTable( "A5" ) gap Display(ct2); A5 2 2 2... 3 1. 1.. 5 1.. 1 1 1a 2a 3a 5a 5b 2P 1a 1a 3a 5b 5a 3P 1a 2a 1a 5b 5a 5P 1a 2a 3a 1a 1a X.1 1 1 1 1 1 X.2 3 1. A A X.3 3 1. A A X.4 4. 1 1 1 X.5 5 1 1.. A= -E(5)-E(5)ˆ4= (1-ER(5))/2= -b5
gap c:=charactertable("m11");; gap Maxes(c); [ A6.2 3, L2(11), 3 2 : Q8.2, A5.2, 2.S4 ]