Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/GAP/pkg/liepring/lib/dim6/stuff/   (GAP Algebra Version 4.15.1©)  Datei vom 11.5.2024 mit Größe 32 kB image not shown  

Quelle  pmenu3   Sprache: unbekannt

 
( (s>;
//Main menu
what
while"=(t1],";
print ndgen=t1
 " Read apresentation;
print:#1=;
printPrintjava.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
 4:Getcoveringalgebra";
print;
print 6:Enforce relations";
print " 7: Save a presentation";
print  8: Readin ";
print=s
print:=Substrings1n-)
printint=java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
  ::powers];

readi what;

if what eq 1 then
//Read in 
read alg, "Input filename";
/*
old version
s:=Read kin1.lastg]do
n:=#s;
s:=Substring ne 
*/
/apresentation
end;
n#java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
s: java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
en();
t=[]*"for
s    %^\n,spot,v[spot]java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
t:=for j in[1.i1
t1:=Split([1]","
ndgen:  in  [.numreldo
t1:=Split(t[2],",  v:=comms[i[];
numrel:relsi=t1[]java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 23
rels:=[];
for :len:len1;
  rels[spot;
for=[
t1:=i[1. java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
class::=tringToInteger(t12][]);

wt=[;
for:[]
wt[=3;
endif;
lastg:=;
cc:=java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
clend:readi "%, ",,j
clend[1]:=ndgen;
comms=];
what:=3;
end if;

if what eq 2 then
// Define a presentation
readi ndgen, "Input number of defining generators";
readi class,class "Input (final) class;
wt:=[1:=[1 in[.ndgen]];ndgen
lastglastg:=;
cc:=forin.spotjava.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
clend:=[
clendprin m^%+",,k
comms:= Input  -  with empty ";
powers ;
rels if
numrel for
print=numrel1;[printf"m^m\"v[]
read s;
while s ne
numrel::3;
rels[numrel]:=s;
read s;
end while;
what:=3;
end if;


if what eq 3 then
//print presentation
print "Dimension",lastg,", Class",cc,", Defining generators",ndgen;

if cc ifendif
for java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  You havereached  predefined"
  len=;
   kin[1]do
    0
      len=+
        =
    end;;
   or
  if len gt0then
    printfprintf "%java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  endif
  if len gt  then
    endif
       []ne0 
      printf"^%",vk]
      end   printf "m^m\spotv[];
    for
    printfifcc1 then
  endjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
end for;

for if if;
forj in.-] 
if:0java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 9
  v:=spot=
  len:end []+[j]eq cc+1then
  for kfork in [1...astg do
    if v[k] ne 0 then
      len:=len+1;
      spot:=k;
    end if;
  end for;
  if 
    printf "[%m,%m] = "
  end if;
  if len gt thenend for;
    for kiflengt0 
      k] ne thenendfor
      printf "% ;
      end if;
    end for;
    printf "%m^%m\n",spot,v[spot];
  end if;
end if;
end for;
endjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

end a  0 do
end if;a eq;

if :=2;
//for in 1..spot-1 do
s:="y";
if cc eq class ;
    j1:=lenda--1]+;
  read s,"Do you want to continue? (y or n)";
end if;
if s eq "y" then

//get number
tails:=ndgen*[]
tails:= tails div 2; j inin j1.j2]java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
tails:=tails/xtendcommsj]][i]
tails:=tails+ndgen;

olastg:=      "m% +"k,v]
nlastg:=tails+lastgendcommsji]][]:0;

//add r;
v:=[P!0:iend;
if cc eq 1 then
  i1:=1;
else;
  i1:=clend[cc-1]+1;
end if;
for i/ tail    ^\,v[spotjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
   comms[ if
   powers[i]def0;
end
for  in[2 k  [+1.lastg] do
   for    def=1
      if wt[i]+wt[j] eq cc+;
         :y"
       cccc class
   end " havethe class;
end forcheckwhetherjis a

// powers
for k:;
for
  powers[get numberof tails
end forlse;
end for*dgen-1;

a:comms[]lastg:=P1java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
hold=tailsndgen
while a gt :=lastg
if=+ if
  j1enddd trivialcommutatorsand ofccjava.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
else
  =clend[a1]java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
endif;
j2:=clend[a];
for j j1   eq1java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
for i in [1..i1=1
if;
//extend comms-1+/dd to [j]providedit is a
for    ;
  commsfdefns[ eqj]java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
end ;
/addtailto,], itis a
//andlastg]doforin[.-1do
def:j]lastg:=java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
for k in :+1
ifnsk eq commsi]j];
   a:=a
   break;
end
end forfor
if0 then
   /heckwhether j is apower
   
     // powers
     hold1;
   else
     lastg:=lastg[].]java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
     wt[ for;
     commsjava.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 0
     []=[     
   endif
end if;:=]
end if;
end forprintArghhh";
endeq then

/j1:
ifelsejava.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
  j1:=;
else;
  j1:=clend[a-1]+1;
end if;
j2:=clend[a];
for j in [j1forj  2[  cc
  //addtail topowers[j] provided  .]
  :=
  forin[+1astg
 k[]java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
     def=
    break!m [..]
   ,]
  :clendwt]wt[11java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
  ifdefeq0 then
    lastg=+     =hold;
    wt[[=[ma;
    powersforelsejava.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
    defnslastg:[0    n]=[n+v[n]java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
  d if
end for;

if a eq cc then
   firspg=+;
end if;
a:=a-1;
end while

//owadd:lend[-wt];
for k end ;
  j:=g for
  i:=hold[kendforjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 8
   for inm1lastgdo
  wt[lastg]:=[n:v1]-g[n];
  comms]]lastg:;
  defns[lastg]:=[j,i];
end for;

cc:cc1;
clend[cc]:=lastg;endif;
if lastg ne nlastg then
  int "!;
end if;


if cc ge 4 then
//Compute non-left-normed commutators
for i in[java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
if =!m  [1.lastg];
befns=a]java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
a:=[][];
//i=[ for
for j in [mmsj]i]v1
if wt[i]+wt[j eq [,j then

ifbne then
//ms[]computed
v1end
/endjava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
m1=+java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
m2:clendcc-wta];
for m in [m1..m2] do
  g:=comms[j][b][m];
  if g ne 0 then
    v:=comms[m][a];
    for n in [m1..lastg] do
      v1[n]:=v1end for
    end for
  end if;
end ;
//get [java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

m2:=clend[cc-wt[b]] 
forfori [. 
  gforj  i+.clendcc-2-1 do
  if g ne 0 then
    v:=comms[wtwt[+wt]+kleccthen
    for n inv1:[]
      v1[n]:=v1  in ilastg=1;
    endforjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  r  in.m2 
end ;  =[[][;
commsjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

else;
/[ji=:commsm]java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
v1=endjava.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
for m in m in in [m1..]do
  c:=comms[j][a][m];
  if c ne 0 then
    for n in [1..lastg] do
      []:=v1[]+c*powersm]]g:commsj][m];
    endifg  then
  endif
end:comms[m[]
comms  in m1clend[wt]]];
end
/ ;

endifltthen
end      :ommskm;
endfor n in [1] do
end for    v:comms        v1:v1]g*[njava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
end if;

end if;
endif;


if what eq5 andcc ge :clend[wt]+t[]-1];
//Jacobi
for i in [.:clendc-[b]
for jform in m1.]do
for k  g:comms[a][m];
if wt[iif g ne 0 for;
v1:=[];
for min  [.lastg do
v1[m]:=P!0;
end for;
/for n in [m1.lastg do
//get [[n::clend[[i]+wt]-]+1;
m1:=clendccjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
m2:clendgcommski][];
for m in [m1..
  g:omms]jm;
  ifgne:[m][j]
    v:=comms[m]:fornin [m1.stg] do
     v1[:[n]]n;
      v1[n]:=v1[n]+g*v[
    end   if;
  end if;
end for;
//get [j,i,kero
m1:=clend[wt[j]+wt[i:==0;
m2:=clend[cc-wt[c::comms[j][a][]
for  c  ne 0 then
  g=commsj[i]];
  if ne0 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
     mkjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
      v=[m[]java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
      forn inm1..lastg do
        v1[n]:endif;
      end for;
    endif;comms][computed
    if
       ;
      for n in [;
           readi m"Enter 0 for
      end for;
     if;
  end       "tricky;
end for;
// j[+..clend2- do
m1:clend[wt(1];
m2:=clend[cc-wt[j]];
for m in [m1..m2] do
  commsk[i]m]
  ifv1=];
    v:=comms[m][j];
    for n in [m1..lastg] do
      v1[n]:=v1[n]-g*v[n];
    end;
  end if  in [.clendcc] do
end for;
// check if zero
b=;
for/ [[le  
  
  g:=[]java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
endif
end;

if  then
  m:b;java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
  iffornin [.lastg1 do
  for a/[:=[n+1];
    if v1[am1:=forjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
  =commsj]i]];
    end if;if gfor n in[1..lastg do
  end;
  printfendfor
  printendif
  readi m, ;
  end forjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
  java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 16
    if v:n in1.lastg] java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
      print "tricky!";
    else;
      v27:=LeadingCoefficient(v1[m]);
      v27=v27
      for end if
      for b ifc:=v27
      if wt[a]+wt[b]      v:comms[k[m]java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
        v:=comms[a][b];
        g:==v[        end  for;
         0forn  [1..astgdo
          c:=g*v27;
          for n in:clendccwtj]java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
            v[n]:powers  0 
           for
        endv1[n]          in [..lastg1]do
        for n  ;
          v[n]:=v[n+endfor
        end for;
        commslastg:lastg-;
         n  [1.lastg1java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
           
        end 
      end if;
endfor;
      end for;

      for a
        v=powers]
        m:b;
        if ne 0then
          :n:=defnsn+];
          for n in [1..lastg
            v[n]:endfor;
          end for "m%\"b,[b;
        end if;
        for n in       defns:=defn2;
          v[n]:=v[n+1];
            end for;
        powers[a]:=[];  gt 0java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
        for n in [.1do
                 powers[a[n      [...-do
        end/       :[a]];
      end for;

      lastglastg:=v27
      if m lt firspgv1::=[0: in [..astg];
        firspg:=firspg-1;
      end if;
      defn2:=[];
      for n in [clend[1]+1..lastg]forn in[.lastg[1.lendccwt[ do
        defn2[n]:=defns  ne  
        if n ge m then
          n2[            :[]-v1[;
        ;
      end for;
      :=;
    end if;
    clend[cc]:=lastg;for
  end           []=v[+];
end if;
end ifjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
end for;
end forforn [lastg1] do
end for;

//Check [pa,a]= v1a ne0 then
for i in [1..clend;
if           
  v1:P!: [..lastg];        end
  for j  printf"%,m"i;
    c:=powers[i][      ;
    if c neendjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
      // ;
      r   [i+1..
        v1[:1[+omms]]
      endfor 
    endif
  java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 10
// check if zero
b:lastgTotalDegree(v1m] ne0 then
for a in [1..lastg] do
if v1a]  0
  b:=a;
end if;nd]vn]-n]
endendfor
if b gt 0 thenv27v27-;
  m:=b;
  if  ]ne andv1[ nefor in[m..astg--]do
  printf "[pv[]v[n1]     forin1.-]do
  for a in [1.endvcomms]]
    ifv1 ne then
      printf "m% +       ifg  then
    end if;
  end for;
  printf m^%\"b,]
  v[]=            
  readi,Enter0forNO,ori YES - generatori;
  end if;
  if m gt 0 then
    if  lastg oror TotalDegree(m) 0 
      print "tricky!";
    else
      :=v1[m        :=-1;
      v27:if
      for a in [2..clend[cc-1]]for [n=]
        in.ndfor;
      ifa [.[cc-1]do
        v:=comms[a][b];
        g:=v[m];powers[;
        fg=;
          c:v27java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
          for n in [endif
            v[n]:=v[n]-c*v1[n]=[n1]
          endfor
        end  if
        for n in ifn.lastg]do
   [:=n1powersn][];
         for
        comms[a][b]/Check paa]=0
        for  in      end forjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
+
        enddefn2
      end end  ;
       ifzero
      end for;

      for a in [1..clend[cc-1]] docc:;
        if 0 
        g:=v[end[%,i,
        if g ne 0 then
          c:=g*v27;
           n in1..lastg dofora in 1b--1] do
            v[n]:=v[n]-c  inin [.clendcc]-1]do
           ;
        endwt][j+1 le cc then
        m.lastg1
          v[n:v[n+];
        end for;
           powers-] 
        forne    nejthen
          powers];
        java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
for

      :
      if m lt firspgfor   [..astg1 do
        firspg%^ + ",aa]
      end if;
      end  for;
      for n in [clendpowers\nb,[b]];
              defn2n]=defns[]
         ,"nter0forNO or ii  YES n in [1lastg-1 do
          defn2efn2[]:          ]n:v[;
        end if;
      
      defns:=defn2;
    end if;
    clend
  end if;
end if;

end
end for;

//Check [pb,a]=[b,paforv27=LeadingCoefficient(1m)
for i      :n]defnsn
for a in 2.lendcc1
if wti+[]1 le cc then
  v1:=[P!0:k in [1..lastg]          defn2[n]=ifwt[+[ ccjava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
  //set v1=endforend[]=[-*[;
  for k in [jjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    c:owers[java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
    end for
      for l in [j  / v1=pj]
        v1[]:=v1[[]c*ommsk]i]l;
      end for;
    end if
  end for;
  /Add pi,] tov1
  for k in [i+1..clend[cc ;
    :=powers[]if  ne0 java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
    if c ne 0 andfor a  1.clend[cc--1] do
      f  gt j      =vm];
        =[k]]];;
      else;
        v2:=comms:=endfor
        c:=-c;
      end iffor [..- do
      for l in [  in [[[[
        v1l]v1[+*l];
        ;
    endif;
  endfor

// check if zeroforfn2=];
bf bgt 0then
for a in [1
if v1[a] ne 0 if v1b]ne [nndefns[;
  b::a;
end if;
end ;
if b gt 0 then
  mb;
  if v1[b] ne 1 and v1[end"% ,v1[java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
  printf else
  for 1.]java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
    if v1[a] ne 0 then
      printf "%m^%m + ",a,v1[a/wta]+[b  cc then
    end if;
  end for;
  printf "%m^%m\n",b,v1[b];
  print "Do you want to use this Jacobi tofor i in 1.clend[-2]1]do
  m,"Enter 0forNO, or v=[]]];
  end ;
  if m gt 0 then then
    if m gt lastg or TotalDegree wt[+wt[]1  cc then
      print
    elser  in endfor
      v27=()
      v27:=v27^-1;
      for a in [2..clend[cc-1
      forl]v1          a]]:[;
      if wt[a]+end forjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
        v:=comms[a][b     [.lastg 
        g:=v[]
        if g ne ; v1ane0then
          java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 7
           nin 1..lastg do
            v]v]v1njava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
          endfor;
        end if;
         n  java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
          v[n]=v[[1]
        end print "o you wantwant to usethis Jacobi toeliminate a generator,b;
        comms[for=  tricky!java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
        for n in [1lastg
          comms[a][b
         for;
       ;
      end for;
      end for;

       forn in[m.- 
        v:=powers[a];vnc:commsji]]
        g:=v[m]; c ne then
        if g  java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
          c:=g*v27;
             [1commsa]b]n]:;
            v[n]:=v[n]-c*v1[n];
          end for;
        end if;
        fornin [m..astg         for;
          v[b:0;
        end for
        powers[a]:=[];
        for n in [1..lastgjava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 7
          powers[a][n]:=v[n];
        for
      end ;

      astg=lastg1;
      if m lt firspg then
        firspg:=firspg-1;
      end if;
      defn2:=[];
      for n in [clend[1]+1..lastg] do
        defn2[n]  for          forn [1.lastg] 
        if v1[a]] ne 
          defn2[n]:=defns[n+1];
         ifforn  [m..1] o
      end for;
      defns:=defn2;
    endif;
    clend[cc]:=lastg;
            v[n]:printf %^m\"bv1]java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 27
end java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7


end if;
end for;
end for;

/a]
for i in [lse;
for j in [i+v27:LeadingCoefficientv1[])
if wt[i]+wt[v27:=v27-;
  v1:=[P!0:k in [1..lastg]];
  //set v1= for
  for k in [j+1..clend[ lastg1java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 21
    c:g:[mjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
       0then[]+.lastg java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
      for l in [j+1.      nin mlastg-1]do
        v1[]=[l+ccomms[k[][];
      end for           if
    end if if;
ndfora][b]:=[];
  //Subtract p[j,i] from v1
  for k in [1..clend[cc-1]] do
    c:=comms[j][i][k];
    if c ne 0 then
      for l
        
      end for;
    end 
  end for;

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
b:=0;
for   [..lastg] do
if v1[        g:vm;
  b:=a;
end if;
end for;
if b gt 0 then
  m:=b;
  if v1[b] ne 1 andend   g ne then
  printf
  for     java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
    if endjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
 "m +,[a]
    end if;
  end forfor:[]1;
  printf aa ne 0 
  printDo  youwantpowers[a[]:v[n]];
  readi m,"Enter 0 for NO, or i for YES -- generator i";
  end if;
  if m gt 0 then
    if:clendcc1]java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
      print "tricky";
    else;
      v27:LeadingCoefficientv1]);
      v27:=v27^-1;
      for a in[2.clend[cc-]] o
      for for j java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      if wt[a]+wt[b] le cc then
        v:=comms[a][b];
        g:v[ k[1.. do
        if g ne 0 thene=u[end ;
          c=g*v27;
          java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
            v[:=v[[c*[n]java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
          endforifn  m then
        if;
        for n inend for;
          vend ;
        end defn2
        comms[b]=[]
        for n in [1..lastgendif
          comms[a][b][n]:=v[n];
        end for;
      end if;
      
      end for;

      for a in [1..clend[cc-1]] do
        v:=endif
        g:=v[m];
        if g ne 0 then
          c:=g*v27;
          for n in [1..lastg] do
            =/       in [.] do
          +.astg do
        end if;
          endfor
          v[n]b:=[i2java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
        end for;
        powers[a]:=[];
            for n in [..astg1]do
          powers[a][ kin1astg
        end for;
      end for;

      lastg:=lastg-1;
      if m lt firspg then
        =-;
      endif   then
      :
      for j ;
n2]defnsn
        if ;restofcommutators
          defn2[n]: xi=;
         y in[.x--1]
     for;
      defns:/i/printxjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
    end if;;
    clend[cc]:=lastg;
  end if;
endfork  [ j java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16


java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 7
end for;
end for;

end if;

if what eq 10  in[.i-]do
missed=]java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
missn0;
w[;
for for;for n in [[..;
a:=defns[i][1]  :c[];
b:=defns[i][2];
if a ne 0 then  if g  0thenjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
//i=[a,b]
uv:=automs[/get of
v:=automs[b];
l1:clendcc-java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
w:=[];
for j in [if[]wt[]  cc then
  w[j]:endif
end for;
for in [..l1]do
for k in [1 for;
  e:=u[j]*v[k];
  if (wt[j]+wt[k] le cc) and (j ne k) and  j[.] java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
  if j gt k then
    missn:=+1;
    for n in [  in[..]do
      w[n]:=w[n]+e*c[n];
    end  forjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
  else;
    c:=comms[k][j]:u[ if;
    for n in [1..lastg] do
      w[[:=[e*c[]
    end for;
  end if;  
  end if;
endor;
end for;
//subtract awayforx in [..1]] do
c:=comms[a]    forn in:=automs[]java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
  java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 22
    g          in[. 
    g   
      v:=automs[n];
      for j in [1.:commsk[j;
        w[j]:=w[j]-g  ne then
                   in [.stg do
    java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 11
  end for;
automs[i]:=w;
else;
  / for      for
  v:=automs[b];
  l1:=clend[cc-1];
  w:=[P!0:j /compareendfor
  for j in [1..l1] 
    java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 12
    if c ne 0 then
      for k  gc[;
        w[k] gne0then
      end for;
    end;
  end for;

  //subtract away end for;
  c:=powers[b];
  for n in [1..i-1] do
    g:=c[n];
    iffor      for
      v: iin[.forif
      for j in [1..lastg   w[]0then
        for in 1.astgdo
      end for;
    endprint "x, 0 ,w[;
  end for;
  automs[i]:=w;

end if;
endfor;
//This completes calculation of images of      missn=missn1;

// get rest of commutators
for x in [2..l1] do
for y in [1../;
if wt[x]+wt[y xfor
//print x,y;
u:=automs[x];
v:=automs:=P!: checking
w:=[];
for  .astg dodo
  w[j]:=P!0;
end for;
for j in [.. then
for k in [1..//Save presentation
  e=]v]java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
if([j]k]ccand ne  (e  )then
  if j gt k then
    :[]k;
    for n in [1..lastg] do
      w[  for  in[1.lastg]java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
    srels[]",class*IntegerToString(class*:[]
  else;
    c:if gne00then
    for n in [1..lastg] do
      w[]=w[nfor in1lastg do
    end for;
  end if;  
  end if;
end for;
end for;

//compare w with image algnamei]w[]-gv[java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
c:=comms[x][y];
for n in [1..lastg] do
  java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
  if g ne 0 then
    v:=automs[n];
    for i in [1..lastg] do
      w[i]:=w[i]-g*v[i];
    endjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
end if;
end for;
forin 1lastg]java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
  ifwi ne  
    print x,y, "0 =",w[i];
    missn:=missn+1;
    missed if
  end if;
end for;
end if;
end for;
end for;

//Check powers
for x in [1..l1] do
  automswhateq  then
  w:=[P;
  for i in 7 then
    c:=""java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
    if c ne 0 then
      //add c*pi to w
      for j in [1..lastg] do
        w[j]:=w[j]+c*powers[i][j];
      end   rels0then
    end if  fori 1.stgdo
  end in [.-1 do

  //compare w with image of powers[x    v1i]P!;
  c:=powers[x];
  forin[astg 
    gendfor:cc+
    if s*elsumrel"class"*IntegerToStringclass*""java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
      v:=automsif
      for  readalgname " name ;
        a"Doyou tosaveautomorphisms   "
  =autsalgnamejava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
    end ;
  end( forjava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
  for i in [1..lastgendfor
    if w[i] ne 0 then
      print  if
       whateq  then
      missedmissn:=[]
    endif
  i [.]   ;


end for;
/End "Doyouwantto relation eliminate generator,;
end if;

if what eq 7 then
//Save a java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
s:=<:=
for i in [1..ndgen-endelse
  s:=s*gens[i]*end :LeadingCoefficient(v1m]java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 37
end for;
ssgensndgen]*" ;
if #rels gt 0 then
  umrel:#rels;
  for
    s*i*", ;
  end for;
  :s*numrel*, =*IntegerToString()*>
else
  *class"ntegerToString(class">
endif;
read , "  of  filev[:vn-v1n]java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
PrintFile(if ne0then
read :mjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
if a eq "for 
          end ;
  for         for   .lastg1
    PrintFile(algname,"automs[");
    PrintFile(algname,i);
    PrintFile(algname,"]:=");
    PrintFile(v]vn+]java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
    PrintFile(algname,        powersendif

end 

end  ;endif;

if whateq8
//Enforce a relation
  v1=;
  for i in [1..lastg] do
    [:!java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
  end enif;
  b:=0;
  egclendcc1+;
  print "Input relation as a vector from
  java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 28
    readi j;
    v1[i]:=P!j;
    if    then
      b:=i;
    ;:java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
  end for;

if b gt 0 then
  for a in [1..b-1
    if v1a] ne 0 then
      
  end gt   
  end for;
  printf"%^\n,,v1[b;
  print "Do you want to use this relation to" youwant usethis relation to a"";
  readi,"nter0for NOori  YES - java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 32
  if m gt 0 then then
    if m gtlastg  TotalDegree
      print "tricky!ifm  0 then
    
      v27:=LeadingCoefficient "!"
      v27=v27;
      for a in        
      forin[..-1 do
      ]       nin .]do
        :v[[-1]
        g:=v[m];
        if g ne 0 then
          :g*;
          for n  [         for
            [n:=n-c*v1[n]
          end for;
        end ;
        for n in [m..lastg-1] do
          vn]:v[+;
        end ;
        commscommsa[b]:[n;
         n incomms]n:n;
          commsa
        end;
      end if;forjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
      endfor
      end for;

      for a in [1..clend[cc-1]] do
        :=powersa;
                  :g*;
        ifg then
          c:=g*v27;
          for n in [1..lastg] dov   mlastg1do
            vn]vv[]=vn1java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
           for;
        endif
        for n in [[]=]java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
          v[n]:=v[n+1];
        end for;
        powers[a]:=[];
        for n in  ltfirspg then
      pan> what eq  then
        defn2[n]:=defns[nv1:[java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
        if n ge m          v1i:=0java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
          defn2[n]:=defns[n+1];
        end if;
      end for;
      defns:=firspg-;
    end ifend ifjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
    clend[cc]=;
  end if;
end if;

end if;

if what eq 9 then
printYouneed  have  v1print:[cc1]1;
print
readi y,"Enter 0 if you want to continue, 1 if    clend[]:=lastgjava.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
if y eq if what eq 9ifjne 

b:=0;
forain [.lastg do
  if v1[ay,  ifyouwantto continue 1ifnot"
    b:=a;
  end if;
end for;

if b gt 0 then
  for a in [1..b-1] do
    if v1[a] ne 0 then
      printf b=java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
    
     bgt0
  printf for a in [..-    "%m^\",b,v1b;
   Do   to use this relationrelationto eliminate generator,
  readi m,"Enter 0 for m,nter  forNO,   forYES- generator
  if m gt 0 then
    if m gt lastg printf "%m%\",bv1b;
      print "tricky!";
    
      if m   0then
      v27:=v27^-1;
      for a in [2:v27else;
java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 26
      if wt[a]+wt[b] le cc thenthen
        v:=comms[a][b];
        g:=v[m];
        if g ne 0 then
          c:=g*c:for b  [1.a1 do
           n in[.lastgdo
            v[n]:=v[n]-c*v1[n]v=v[[]=n-*njava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
          c=v27
        endforn in         end;
        for n in [vn]:=[]cv1;
          v[]=v[n+1 if
        end for;
        comms[a][[]=n1]
        for ncomms[][bn=];
  [[]n:=[]
        comms[endif;
       ;
      for
      end for;

      for a in [1        :[]
        v:=powers[a];
        gc:*v27 ;
        if g nejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
          c=gv27
          forn in  ne0java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
            v[for  in[.lastg-1 do
          v[:=          vn:[+;
        end[a]:=[;
        for n in [m..lastg-1] do
          v[n]:=v[n+1];
        end end ;
        owersa:[;
        for n in [1..lastg-1] do
          end for;
        java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      end         defn2[]

      lastg:=lastg-1;
      lastg=lastg-1;
        firspg:=firspg-1;
      end if;
      defn2=;
      for n in [clend       mltfirspg then
        defn2
        if n ge m then
          defn2[n]:=defns[n+1]endif;
java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 15
      end for;
      defns:=defn2;
    end if;
    clend[cc]java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  
end ifendifif;

end if;

end if;

if what eq 6 and cc gt 1 then
//Enforce defining relations
numrel:=#rels;
if numrel gt 0 then
for i in [1..numrel] do
for i in [..umrel do
s:=rels[];
while s ne "" do
a:plits)
s:=a[4];
factor:=getpol(P,Q,a[1]);
exp:=StringToInteger(a[2]);
t:=a["!;
g:=StringToCode(t[1]):a[]
v2:=forStringToCode[-;
v2[g]:=2:=P!: in[.lastg]
for j in [2..#t] do
  //ommutev2with  ofentries
:StringToCode(t]96
  v3=[0i  1.astg;
  for k in [1..clend[cc-1]] do
    / v2with g
    =[];
    if c ne 0 then
      h:=comms[k][g];
      //ommutev2  g
        v3[]:=v3l]+c*[]
      end for;
    end if;
  end for;
  v2=;
endfor;
//now get appropriate power p^exp*v2
if expend;
for j in [1..exp] do
  v3:=[P!0:k in [1
  forkin .lendcc]
    c:= / get appropriate power p*v2
enn
      for l in [1..lastg] do
        v3;
      end for;
    end  ;
  end for;
  v2:=v3;
end for;
end if;
//this completes calculati0onfor l  1lastg]do

//add factor*v2 to v1
for k in [1..lastg] do
  v1[k]:=v1[k]+factor*v2[k];
end for;

end ;

//enforceadd factor*  / nin[.astg1]do
b:=0;
for a in [1..lastg] do
  if v1[a   k in [1.powersa]]
b:a;
  end if;
end for;

if b gt 0 then
  m:=b
  if v1[b] ne 1 and v1[b] ne -1 then
  for a in [1..b-1] do
    if v1a]ne0 then
      printf "%m^%m + ",a,v1[a];
    end if;
   forfor
  printf "%m^%m\n",b,v1[b];
  print "Do you want to use this relation to eliminate a generator",b;
  readi m,"Enter 0 for NO, or i for YES -- generator i";
  endif;
  if mif v1a] ne0 then
   ifmgt lastg  TotalDegreev1m] ne 0 then
      end;
    ;
      v27:LeadingCoefficient([])
      v27:t"o wanttouse this  toeliminate a generator";
      for ;
      for b in [1..a-1] do
       wta+[]le ccthen
v:a[]
        =[]java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
        if g ne 0 then
          c:end;
          for n in [1. what    ccgt1 then
            v[n]:=v[n]-c*v1[n];
          end for;
         ;
           [ numrelgt 
          vv1:       []wt[lecc
        endfor;
        comms[a][b]:=[];
        or in.-          :gv27
commsa]][]:=]java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
        end for;
      end ;
      end for;
      end for;

       a in[1.clendcc-] java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
        v:=powers[a];
        g:=v[m];
        g ne0java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
          c:=g*v27;
          for n1lastg]do
vn]endfor
          end for;
        end if;
        for n in [m..lastg-1] do
          [n+]java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
        endfor
        powersa]=]
        for n in c:gv27
          forn in [.] java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
        end for;
      end for;

      lastg:lastg-;
      if m lt firspg then
        firspg:firspg-;
      end if;
      defn2:=;
      for in clend1+.lastg do
        [:efnsn;
        if n ge m then
          defn2[n]:=defns[n+1];
        end if;
      end for;
      defns:      
    end if;
    clend[cc]lastg
    endv1k:=defn2::=[;
endif;

//end of relation code
end for
end if;
end/ 


if what eq 11 then
/;
bch:=bgt 0then
for i in [1..ndgen] doend ;
  bch[i]:=[P!0:j  v1
bch]P;
end for;
for i in [ndgen+end for
  g    eq then
  
  /f  nethen=,] BCH  [ee]
  //if g = 0 then i = ph.for in;

if g  nebchii]=!1java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 17
  u=bch[]bchg];
v1:=[P!0:j in [1..lastg]];
sbchc
whiles ne """ do
a:=split(s);
s:a4];
factor:getpolPQa1);
t:=a[3];
v2:=bch[g];
for.#]do
  /:      if[+t]le  then
          v:=comms s ne"do
  v3=[;
  for j1 in [2..clend[cc-1]] do
  for j in [2.t]java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
  c:=v2[j1]*v4[j2]-v2[j2]*v4[j1];
    ne0 wtj1+wtj2 le ccthen
    //add c*commsc:=2]v4j2]v2j2*[]java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
    h:=comms[j1][j2];
    for l in [1..lastg] do
      v3[l] ;
    end for;
  end   
  end for;
  java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
  v2:=v3;
end for;
//add 
for k in [1..lastg] do
  v1[]=else
endfor

end while
bch[i]:=c:=bchh[];

else;
/Setbchi]  pbch[]
v1=P0 in[.]
forendjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
  c:=h]; for

    for k in [1..lastg] do
      v1:;
    endpa]
   ;
endfor
bchi]v1;

end if;
end for;
//ThisprintArgh!!"

//Now get modified relations
numrel:=#rels;=[java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
mrels:=[];
foriin[.numreldo
smrels]=()1;
a:=splitlastg=lastg-1;
factor:=getpol(P,Q,a[1]);
if factor ne 1 then
  printmrelsi]mrels[]"p^u
end if; if
u:=a[2];
strexp:=u;
t:a3;
/
//and u trepresent^.
mrels[i]    print"Arghhhh!!"
if u ne "0" then
   ueq "1"then
    si=rels]";
  ;
    mrels[i]:=mrels[i]s=;
  end if;
end ;
n:=#  :(,,[]);

if n gt 1 then
  g:=strtogen(defns,clend,ndgen,ccjava.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
  if g eq 0 then
    print "Arghhhh!!!!";
  end;
  h:StringToCode[]-6endfor
  if   c 0 andwtj1wtj2] cc 
  v1:[!:  [.lastg
  s:=bchc;
  whiles ne" java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
  a:iin[ndgen
  s:=a[4]
  factor:=getpol(P,Q,a[1]);
  t:=a[3];
  v2:=bch[g];
  forj in2..t] do
    //commute v2 with rest of entries
    v4:=u[StringToCode(t[j])-96];
    v3:=[P!0:i in [1..lastg]];
    for j1 in [2..clend[cc]
    for j2 j2in[-1do
    c:=v2[j1]*v4[j2]-v2[j2]*v4[j1];
     neand[j1wt[j2]  ccjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
      /// c*comms[][]to 
      h:=comms[j1][j2];
      for l in [1:[P;
        v3[l]:=v3[l]+c*h[l];
      end for;
    end if
    end for;
    j:
    lietogrp(,,astg,)  2#java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
   eq u2ne then
  /in[.]
  for   end ;
    v1[k]:=v1[java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
  end for;

v3[

else
  h=
  v1k .
 v3[*]

//Now raise;
exp:=StringToInteger(strexp);
forend for;
  v2:fork v4]=v4]*[java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
  for k in [1..clend[
    c:=v1[k];
    if c ne 0 then
      for k1 in [1..lastg] do
        v2[k1]:=v2[k1]  
      end for;
    end if;
  end for;
  v1:=v2;
end;

//Nowzero outusing BCHformula
for j in [1..lastg] cc-1]do:=[h]][];
if j]ne0then
  u:=lietogrp(gentostr(defns,ndgen,lastg,j));
  mrels[i]:=mrels[i]*"*"*u[1];
  c:v1j]java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
  if c eq 1 andadd1/12)*cc[j1[j2 tojava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
    mrels[i]:=mrels[i]*"^"*u[2];
  end if;
  if c eq -1 and u[2] ne "" then
    mrels[i]:=mrels[i]*"^-"*u[2];
  end if;
  if c eq -1 and u[2] numrel:#rels;
    mrels[i]:=mrels
  end ;
  if c ne 1 and c ne -1 then
    s=:=plits)
    mrels[i]:=mrels
    if u[2] ne "" then
      mrels[i]:=mrels[i]*"*"*u[2] [1print "Argh!!!!
    end if;
  end ;
  //multiply bch[j:u;
  v3:=[];
  v2:=[];
  for k in [1..lastg] do
    v3[k/    p.
    v2[k]:=v1[k]+v3[k];
  end for;
  //compute [v3,v1]
    v4:=[P!0:k in [1..lastg]];
    s=i*"
    * ;
  []u 0"
if   wt]wt[=[i^;
      add c[]j2tov4
h[j2;
      =)"";
        v4[l]:=v4[n=
      end
    end s;
 if
    
  /
    for k in [1..lastg] do
      v2[k]:=v2[k]-(1/2)*v4[k];
      v1[k]:=v1[k]-v3[k];
    end for;
  //compute add (1/12)[v4,v1] to v2
    for j1 in [2..clend[cc-1]] do
    for j2 in [1..j1-1] do
    c:=v4[j1]*v1[j2]-v4[j2]*v1[j1];
    if c ne 0 and wt[j1]+wt[j2] le cc then
      //add (1/12)*c*comms[j1][j2] to v2
      c:=c*(1/12);
      h:=comms[j1][j2];
      in[1..lastg] 
        v2[l]:=v2[l]+c*h[l];
      end for;
    end if;
    endfor;
    end =[];
    v1:=v2;
end if;
end for;

end for;
s:="<";
for i in [1..ndgen-1] do
  s:=s*gens[i]*",";=commsj1]][2]
end for;
s:=s*gens[ndgen]*" | ";

if #mrels gt 0 then
  numrel:=#mrels;
  for i in [1..numrel-1] do
    s:=s*mrels[i]*", ";
  end for;
  :=s*numrel*"class"*IntegerToStringclass*>;
else;
  s:=s*"class="*IntegerToString(class)*">";
end if;

print s;

endif


end while;

v1:=[P!0:i in [1..lastg]];


Messung V0.5 in Prozent
C=99 H=87 G=93


end while;

v1:=[P!0:i in [1..lastg]];


Messung V0.5 in Prozent
C=99 H=87 G=93

[Dauer der Verarbeitung: 0.6 Sekunden, vorverarbeitet 2026-06-10]