Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
| Download
GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
Project: cocalc-sagemath-dev-slelievre
Views: 418386#include "defs.h"12# define PSP 5000003# define SVSP 1000004# define NPT 327675# define MB 806# define TRSP 20000007/* TRSP is the space of the array used to store the coset reps, which are8stored using a tree structure.9*/1011char inf0[80],inf1[80],inf2[80],inf3[80],outf1[80], outf2[80],outf3[80],12temp1[90],temp2[90],13/* inf1 is gpname.?1 (no default)14inf2 is gpname.?2 (no default, the subgroup of inf1 for which transversal15is to be computed).16Defaults: inf3 gpname.pg17outf1 inf3.nr18outf2 gpname.dcr19outf3 gpname.cr.20inf0 is used to remember the gpname alone.21*/22ofstr[2],ngn[8],expg,exph,cr,dcr,hg,triv,cong;23int psp=PSP,trsp=TRSP,svsp=SVSP;24int mpt=NPT,mb=MB,nfuse,25tree[TRSP],perm[PSP],gorb[NPT+1],lorbg[MB],lorbh[MB],base[MB],26fpt[MB],bpt[MB],coh_index[MB+1],*cp[10*NPT],*trad[MB],*sv[SVSP],27*tailad[MB],**cpad[MB],**svgptr[MB],**svhptr[MB];2829int30main (int argc, char *argv[])31{ int arg; char c,err; int d;32err=0; cong=0; arg=1; hg=0; cr=0; expg=0; exph=0; dcr=0; nfuse= -1;33if (argc<=arg) {err=1; goto error;}34while (argv[arg][0]=='-')35{ c=argv[arg][1]; if (c=='c') cr=1;36else if (c=='g') cong=1;37else if (c=='e')38{ d=argv[arg][2]; if (d=='g') expg=1; else if (d=='h') exph=1;39else {err=1; goto error;}40}41else if (c=='d')42{ dcr=1; hg=1; d=argv[arg][2]; if (d!='\0')43{ d-='0'; if (d<0 || d>9) {err=1;goto error;} ofstr[1]='\0'; nfuse=d;}44}45else if (c=='h') hg=2;46else {err=1; goto error;}47arg++; if (argc<=arg) {err=1; goto error;}48}49if (argc<=arg+2) {err=1; goto error;}50strcpy(inf1,argv[arg]); strcat(inf1,"."); strcpy(inf2,inf1);51strcpy(inf3,inf1); strcpy(outf1,inf1); strcpy(outf3,inf1); strcpy(outf2,inf1);52strcpy(inf0,inf1); strcpy(temp1,inf1); strcpy(temp2,inf1);53strcat(temp1,"conpt"); strcat(temp2,"crt");54strcat(inf1,argv[arg+1]);55arg+=2; if (strcmp(argv[arg],"triv")==0) triv=1;56else {triv=0; strcat(inf2,argv[arg]);}57if (hg)58{ arg++;59if (argc<=arg) strcat(inf3,"pg");60else61strcat(inf3,argv[arg]);62}63if (dcr)64{ arg++; if (argc<=arg) strcat(outf2,"dcr"); else strcat(outf2,argv[arg]); }65if (cr)66{ arg++; if (argc<=arg) strcat(outf3,"cr"); else strcat(outf3,argv[arg]);}67if (dcr && nfuse>=0)68{arg++; if (argc<=arg) strcpy(ngn,"ng"); else strcpy(ngn,argv[arg]);}69if (hg && dcr==0)70{ arg++;71if (argc<=arg) {strcpy(outf1,inf3);strcat(outf1,".nr");}72else strcat(outf1,argv[arg]);73}74if (cnprg1()== -1) exit(1);75if (hg || cong) if (cnprg2()== -1) exit(1);76error: if (err)77{ fprintf(stderr,"Usage:\n");78fprintf(stderr,"conrun [-g] [-c] [-d(n)] [-h] [-eg] [-eh]\n");79fprintf(stderr,80"gpname inf1 inf2 (if -h [inf3]) [outf2(dcr)] [outf3(cr)].\n");81exit(1);82}83exit(0);84}858687