#designed for the 2011 competition PRETRS = ((\ matrix -dim 1 -ib 3 -ob 5 || \ matrix -dim 2 -ib 2 -ob 3 || \ matrix -dim 3 -ib 1 -ob 2 || \ matrix -dim 3 -ib 1 -ob 1 || \ fail)[1]*) DIRECTTRS = ((\ kbo || \ (lpo | ref;lpo) || \ bounds -rfc -qc || \ fail)*[7])! SLTRS = ((\ sl -dp -ur -dim 1 -ib 1 -ob 2 -pl || \ sl -dp -ur -dim 1 -ib 2 -ob 2 -pl || \ sl -dp -ur -dim 2 -ib 1 -ob 2 -pl || \ fail)) ARCTICTRS = \ (arctic -dp -ur -dim 1 -ib 4 -ob 3[1] | \ arctic -dp -ur -dim 2 -ib 2 -ob 2[2] | \ arctic -dp -ur -dim 3 -ib 1 -ob 1[2] | \ arctic -dp -ur -dim 4 -ib 1 -ob 1[2] | \ fail) ARCTICBZTRS = \ (arctic -bz -dp -ur -dim 1 -ib 4 -ob 3[1] | \ arctic -bz -dp -ur -dim 2 -ib 2 -ob 2[2] | \ arctic -bz -dp -ur -dim 3 -ib 1 -ob 1[2] | \ arctic -bz -dp -ur -dim 4 -ib 1 -ob 1[2] | \ fail) BOUNDS = (bounds -dp -rfc -qc || bounds -dp -all -rfc -qc || bounds -rfc -qc) MAINTRS = (dp;tdg?;(sccs | sc)*;edg[0.5]?;cdg -rfc[0.5]?;((sccs | \ (sc || sct || \ {ur?;( \ matrix -dp -ur -dim 1 -ib 3 -ob 5 || \ matrix -dp -ur -dim 1 -ib 3 -ob 8 -rat 2 -db 1 || \ matrix -dp -ur -dim 1 -ib 4 -ob 10 -rat 4 -db 1 || \ matrix -dp -ur -dim 2 -ib 2 -ob 3 || \ matrix -dp -ur -dim 3 -ib 1 -ob 3 || \ matrix -dp -ur -dim 3 -ib 2 -ob 3 || \ matrix -dp -ur -dim 4 -ib 1 -ob 2 || \ (kbo -ur -af | lpo -ur -af) || \ ARCTICTRS || \ ARCTICBZTRS || \ (if duplicating then fail else SLTRS) || \ fail) \ }restore || \ BOUNDS || \ fail \ ))[6] | \ uncurryx -appsym max -aarity max?;uncurryx -top -appsym max -aarity max \ )*[10]) TOTALTRS=(PRETRS;(MAINTRS || DIRECTTRS || unfold)) TRS = ((\ if applicative then \ (lpo | uncurry?;uncurry -mirror?;TOTALTRS) \ else \ TOTALTRS \ )[10] || \ poly -nl -heuristic 1 -neg -ib 3 -ob 7 -direct[9] \ ) SN=(PRETRS;(MAINTRS || DIRECTTRS)) REV = rev? PRESRS = ( \ matrix -dim 1 -ib 4 -ob 5[4] || \ matrix -dim 2 -ib 2 -ob 3[4] || \ matrix -dim 3 -ib 1 -ob 2[4] || \ matrix -dim 3 -ib 2 -ob 3[4] || \ matrix -dim 4 -ib 1 -ob 2[4] || \ REV;matrix -dim 1 -ib 4 -ob 5[4] || \ REV;matrix -dim 2 -ib 2 -ob 3[4] || \ REV;matrix -dim 3 -ib 1 -ob 2[4] || \ REV;matrix -dim 3 -ib 2 -ob 3[4] || \ REV;matrix -dim 4 -ib 1 -ob 2[4] || \ bounds -rfc -qc[4] || \ REV;bounds -rfc -qc[4] || \ kbo [4] || \ unfold [4] || \ arctic -dim 1 -ib 4 -ob 5[4] || \ arctic -dim 2 -ib 2 -ob 3[4] || \ arctic -dim 3 -ib 1 -ob 2[4] || \ arctic -dim 3 -ib 2 -ob 2[4] || \ fail)* INTERNSRS = \ matrix -dim 1 -dp -ib 5 -ob 6[59] || \ matrix -dim 1 -dp -ur -ib 4 -ob 10 -rat 2 -db 5[59] || \ (kbo | kbo -af -ur | lpo -af -ur)[59] || \ matrix -dp -dim 2 -ib 3 -ob 3[59] || \ (matrix -dp -dim 3 -ib 1 -ob 2[30] | matrix -dp -dim 3 -ib 2 -ob 3)[59] || \ matrix -dp -dim 4 -ib 1 -ob 1[59] || \ matrix -dp -dim 5 -ib 1 -ob 2[59] || ARCTICSRS = \ arctic -dp -ur -dim 1 -ib 4 -ob 5[59] || \ arctic -dp -ur -dim 2 -ib 2 -ob 3[59] || \ arctic -dp -ur -dim 3 -ib 1 -ob 2[59] || \ arctic -dp -ur -dim 4 -ib 1 -ob 1[59] || ARCTICBZSRS = \ arctic -bz -dp -ur -dim 1 -ib 4 -ob 5[59] || \ arctic -bz -dp -ur -dim 2 -ib 2 -ob 3[59] || \ arctic -bz -dp -ur -dim 3 -ib 1 -ob 2[59] || \ arctic -bz -dp -ur -dim 4 -ib 1 -ob 1[59] || BOUNDSRS = \ ((bounds -dp -rfc -qc[20] | bounds -dp -rfc -all -qc)[30] || bounds -dp -qc[30]) || LOOPSRS = (\ loop -dp -r 15 -c 15[10] | \ loop -dp -r 20 -c 15[10] | \ loop -dp -r 15 -c 20[10] | \ loop -dp -r 20 -c 20[30]) || LABSRS = (((dp;(tdg?;(sccs | ur | poly -ib 1 -ob 2 | poly -dp -ur -ib 1 -ob 3)*;rlab)2*)[3]))! MAINSRS = (dp;(tdg?;edg[0.5]?;cdg -rfc[0.5]?;sccs?;({ur?;( \ INTERNSRS \ BOUNDSRS \ ARCTICBZSRS \ ARCTICSRS \ LOOPSRS \ fail)}restore?)[59])*) SRS = ((PRESRS;(MAINSRS[59] || REV;MAINSRS[59])) || (sleep -t 20?;LABSRS)) #TODO: add methods in direct setting #DERIVATION LENGTH ARCTIC_CPXB = ( \ arctic -cp -dim 1 -ib 3 -ob 4 || \ arctic -cp -dim 1 -ib 4 -ob 5 || \ arctic -cp -dim 2 -ib 2 -ob 3 || \ arctic -cp -dim 2 -ib 3 -ob 4 || \ arctic -cp -dim 3 -ib 2 -ob 3 || \ arctic -cp -dim 3 -ib 3 -ob 4 || \ fail) WGPB = ( \ matrix -strict -cp -triangle -dim 1 -ib 4 -ob 5 || \ matrix -strict -cp -triangle -dim 1 -ib 5 -ob 6 || \ matrix -strict -cp -triangle -dim 1 -ib 6 -ob 7 || \ matrix -strict -cp -triangle -dim 1 -ib 7 -ob 8 || \ matrix -strict -cp -triangle -dim 1 -ib 8 -ob 9 || \ fail) MATRIXAB = ( \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 2 -ob 2 || \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 2 -ob 3 || \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 3 -ob 3 || \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 3 -ob 4 || \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 4 -ob 5 || \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 5 -ob 5 || \ matrix -cp -overlay -ones 1 -triangle -dim 3 -ib 1 -ob 2 || \ matrix -cp -overlay -ones 1 -triangle -dim 3 -ib 2 -ob 2 || \ matrix -cp -overlay -ones 1 -triangle -dim 3 -ib 3 -ob 3 || \ matrix -cp -overlay -ones 1 -triangle -dim 3 -ib 3 -ob 4 || \ matrix -cp -overlay -ones 1 -triangle -dim 4 -ib 2 -ob 2 || \ fail) LINEARB = ( \ bounds -cp[5] || \ (if dummy then ARCTIC_CPXB else fail) || \ MATRIXAB || \ fail) QUADRATICB = ( \ matrix -cp -overlay -triangle -direct -dim 2 -ib 3 -ob 4 || \ matrix -cp -overlay -triangle -dim 2 -ib 2 -ob 2 || \ matrix -cp -overlay -triangle -dim 2 -ib 2 -ob 3 || \ matrix -cp -overlay -triangle -dim 2 -ib 3 -ob 3 || \ matrix -cp -overlay -triangle -dim 2 -ib 3 -ob 4 || \ matrix -cp -overlay -triangle -dim 2 -ib 4 -ob 5 || \ matrix -cp -overlay -triangle -dim 2 -ib 5 -ob 5 || \ matrix -cp -overlay -ones 2 -triangle -dim 3 -ib 2 -ob 2 || \ matrix -cp -overlay -ones 2 -triangle -dim 3 -ib 3 -ob 3 || \ matrix -cp -overlay -ones 2 -triangle -dim 4 -ib 1 -ob 2 || \ fail) CUBICB = ( \ matrix -cp -overlay -triangle -dim 3 -ib 1 -ob 2 || \ matrix -cp -overlay -triangle -dim 3 -ib 2 -ob 2 || \ matrix -cp -overlay -triangle -dim 3 -ib 3 -ob 3 || \ matrix -cp -overlay -triangle -dim 3 -ib 3 -ob 4 || \ matrix -cp -mul -dim 3 -ib 3 -ob 3 || \ fail) QUARTICB= ( \ matrix -cp -overlay -triangle -dim 4 -ib 1 -ob 2 || \ matrix -cp -overlay -triangle -dim 4 -ib 2 -ob 2 || \ matrix -cp -mul -dim 4 -ib 2 -ob 3 || \ fail) COMPLABB= rlab; ( \ matrix -cp -overlay -triangle -direct -dim 1 -ib 2 -ob 3[15] | \ matrix -cp -overlay -triangle -direct -dim 2 -ib 2 -ob 4[15] | \ matrix -cp -overlay -triangle -direct -dim 3 -ib 2 -ob 2[30] | \ fail) COMPLEXDIRECTB = ( \ WGPB[5]*;( \ LINEARB[10] || \ (QUADRATICB[55]) || \ (CUBICB[55]) || \ (QUARTICB[55]) || \ fail)* \ ) # #sleep -t 5?;matrix -triangle -direct -dim 2 -ib 3 -ob 4 || \ #sleep -t 10?;matrix -triangle -direct -dim 3 -ib 3 -ob 3 || \ #sleep -t 20?;matrix -triangle -direct -dim 4 -ib 2 -ob 3 || \ COMPLEXITY = (var | (if duplicating then fail else ( \ bounds [5] || bounds -qc[10] || \ ((if applicative then uncurry?;uncurry -mirror? else fail)?; ( \ (cp;(COMPLEXDIRECTB || sleep -t 5?;COMPLABB)) || \ fail))!))) #certification # add strategy for arctic as soon as supported by ceta # if srs then arctic -dim 1 -ib 4 -ob 5 else fail || \ # if srs then arctic -dim 2 -ib 2 -ob 3 else fail || \ # if srs then arctic -dim 3 -ib 1 -ob 2 else fail || \ # if srs then arctic -dim 3 -ib 2 -ob 2 else fail || \ PRETRSCERT = ((\ matrix -dim 1 -ib 5 -ob 8 || \ matrix -dim 2 -ib 3 -ob 4 || \ matrix -dim 3 -ib 2 -ob 3 || \ matrix -dim 3 -ib 1 -ob 2 || \ matrix -dim 4 -ib 1 -ob 2 || \ matrix -dim 5 -ib 1 -ob 1 || \ fail)[5]*) DIRECTTRSCERT = ((\ unfold || \ fail)*[7])! ARCTICTRSCERT = \ (arctic -dp -ur -dim 1 -ib 4 -ob 3[10] | \ arctic -dp -ur -dim 2 -ib 2 -ob 2[15] | \ arctic -dp -ur -dim 3 -ib 1 -ob 1[15] | \ arctic -dp -ur -dim 4 -ib 1 -ob 1[15] | \ fail) ARCTICBZTRSCERT = \ (arctic -bz -dp -ur -dim 1 -ib 4 -ob 3[10] | \ arctic -bz -dp -ur -dim 2 -ib 2 -ob 2[15] | \ arctic -bz -dp -ur -dim 3 -ib 1 -ob 1[15] | \ arctic -bz -dp -ur -dim 4 -ib 1 -ob 1[15] | \ fail) MAINTRSCERT = (dp;edg[1.0]?;(sccs | \ (sc || sct || \ ur?;( \ matrix -dp -ur -dim 1 -ib 3 -ob 5 || \ matrix -dp -ur -dim 1 -ib 3 -ob 8 -rat 2 -db 1 || \ matrix -dp -ur -dim 1 -ib 4 -ob 10 -rat 4 -db 1 || \ matrix -dp -ur -dim 2 -ib 2 -ob 3 || \ matrix -dp -ur -dim 2 -ib 3 -ob 4 -rat 2 -db 0 || \ matrix -dp -ur -dim 3 -ib 1 -ob 3 || \ matrix -dp -ur -dim 3 -ib 2 -ob 3 || \ matrix -dp -ur -dim 3 -ib 2 -ob 3 -rat 2 -db 0 || \ matrix -dp -ur -dim 4 -ib 1 -ob 2 || \ lpo -ur -af || \ ARCTICTRSCERT || \ ARCTICBZTRSCERT || \ fail)) \ )*[59]) TOTALTRSCERT=((PRETRSCERT;MAINTRSCERT) || DIRECTTRSCERT) TRSCERT = TOTALTRSCERT #relative PRERELATIVE = (\ (if duplicating then fail else (bounds -rt || bounds -rt -qc)) || \ lpo -quasi || \ matrix -dim 1 -ib 5 -ob 6 || \ matrix -dim 2 -ib 4 -ob 5 || \ matrix -dim 2 -ib 2 -ob 2 || \ matrix -dim 3 -ib 3 -ob 4 || \ matrix -dim 3 -ib 2 -ob 3 || \ matrix -dim 4 -ib 2 -ob 3 || \ matrix -dim 4 -ib 2 -ob 2 || \ matrix -dim 5 -ib 2 -ob 2 || \ matrix -dim 5 -ib 1 -ob 2 || \ arctic -dim 1 -ib 4 -ob 5 || \ arctic -dim 2 -ib 3 -ob 4 || \ arctic -dim 3 -ib 2 -ob 3 || \ arctic -dim 4 -ib 2 -ob 2 || \ fail \ ) SNRELATIVE = ((\ PRERELATIVE || \ REV;PRERELATIVE || \ if srs then (sleep -t 20?;rlab) else fail || \ fail \ )[4]*;rt -inv -force;SN)[59] RELATIVE = ((\ unfold || \ REV;unfold || \ SNRELATIVE)*)[59] #everything together COMP = (if standard \ then (var | con | (if srs then (SRS[59]) else (TRS[10]))) \ else RELATIVE) #complexity COMPLEXITY = COMPLEXITY ARCTIC_CPXC = ( \ arctic -cp -dim 1 -ib 4 -ob 5 || \ arctic -cp -dim 2 -ib 3 -ob 4 || \ arctic -cp -dim 3 -ib 3 -ob 4 || \ arctic -cp -dim 4 -ib 1 -ob 2 || \ arctic -cp -dim 4 -ib 2 -ob 3 || \ arctic -cp -dim 5 -ib 1 -ob 1 || \ arctic -cp -dim 5 -ib 1 -ob 2 || \ fail) MATRIXAC = ( \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 2 -ob 4 || \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 3 -ob 4 || \ matrix -cp -overlay -ones 1 -triangle -dim 2 -ib 5 -ob 5 || \ matrix -cp -overlay -ones 1 -triangle -dim 3 -ib 2 -ob 2 || \ matrix -cp -overlay -ones 1 -triangle -dim 3 -ib 2 -ob 3 || \ matrix -cp -overlay -ones 1 -triangle -dim 3 -ib 3 -ob 4 || \ matrix -cp -overlay -ones 1 -triangle -dim 4 -ib 1 -ob 2 || \ matrix -cp -overlay -ones 1 -triangle -dim 4 -ib 2 -ob 2 || \ matrix -cp -overlay -ones 1 -triangle -dim 5 -ib 1 -ob 1 || \ matrix -cp -overlay -ones 1 -triangle -dim 5 -ib 1 -ob 2 || \ matrix -cp -overlay -ones 1 -triangle -dim 5 -ib 2 -ob 2 || \ fail) LINEARC = ( \ bounds -cp[5] || \ (if dummy then ARCTIC_CPXC else fail) || \ MATRIXAC || \ fail) QUADRATICC = ( \ matrix -cp -overlay -triangle -dim 2 -ib 2 -ob 4 || \ matrix -cp -overlay -triangle -dim 2 -ib 3 -ob 4 || \ matrix -cp -overlay -triangle -dim 2 -ib 4 -ob 5 || \ matrix -cp -overlay -triangle -dim 2 -ib 5 -ob 5 || \ matrix -cp -overlay -ones 2 -triangle -dim 3 -ib 1 -ob 2 || \ matrix -cp -overlay -ones 2 -triangle -dim 3 -ib 2 -ob 3 || \ matrix -cp -overlay -ones 2 -triangle -dim 3 -ib 3 -ob 3 || \ matrix -cp -overlay -ones 2 -triangle -dim 4 -ib 1 -ob 2 || \ matrix -cp -overlay -ones 2 -triangle -dim 4 -ib 2 -ob 2 || \ matrix -cp -overlay -ones 2 -triangle -dim 5 -ib 1 -ob 2 || \ matrix -cp -overlay -ones 2 -triangle -dim 5 -ib 2 -ob 2 || \ fail) CUBICC = ( \ matrix -cp -overlay -triangle -dim 3 -ib 2 -ob 3 || \ matrix -cp -overlay -triangle -dim 3 -ib 3 -ob 4 || \ matrix -cp -mul -dim 3 -ib 3 -ob 3 || \ matrix -cp -mul -dim 3 -ib 3 -ob 3 || \ matrix -cp -overlay -triangle -dim 4 -ones 3 -ib 1 -ob 2 || \ matrix -cp -overlay -triangle -dim 4 -ones 3 -ib 2 -ob 2 || \ matrix -cp -overlay -triangle -dim 5 -ones 3 -ib 1 -ob 1 || \ matrix -cp -overlay -triangle -dim 5 -ones 3 -ib 2 -ob 2 || \ fail) CP1 = ((LINEARC)*) CP1 = (CP1[5]?;rlab;CP1) CP2 = ((LINEARC || QUADRATICC)*) CP2 = (CP2[5]?;rlab;CP2) CP3 = ((LINEARC || QUADRATICC || CUBICC)*) CP3 = (CP3[5]?;rlab;CP3) #cert COMPCERT = (var | con | (if srs \ then ((sleep -t 50?;rlab;TRSCERT[59])! || (TRSCERT[59])! || (rev;TRSCERT[59])!) \ else TRSCERT[59])) #asdissch6 ARCTICMREC = \ (arctic -dp -dim 1 -ib 4 -ob 3[1] | \ arctic -dp -dim 2 -ib 2 -ob 2[2] | \ arctic -dp -dim 3 -ib 1 -ob 1[2] | \ arctic -dp -dim 4 -ib 1 -ob 1[2] | \ fail) ARCTICBZMREC = \ (arctic -bz -dp -dim 1 -ib 4 -ob 3[1] | \ arctic -bz -dp -dim 2 -ib 2 -ob 2[2] | \ arctic -bz -dp -dim 3 -ib 1 -ob 1[2] | \ arctic -bz -dp -dim 4 -ib 1 -ob 1[2] | \ fail) MRECTRS = (dp;tdg?;(sccs | sc)*;edg[0.5]?;cdg -rfc[0.5]?;((sccs | \ (sc || \ ( \ matrix -dp -dim 1 -ib 3 -ob 5 || \ matrix -dp -dim 1 -ib 3 -ob 8 -rat 2 -db 1 || \ matrix -dp -dim 1 -ib 4 -ob 10 -rat 4 -db 1 || \ matrix -dp -dim 2 -ib 2 -ob 3 || \ matrix -dp -dim 3 -ib 1 -ob 3 || \ matrix -dp -dim 3 -ib 2 -ob 3 || \ matrix -dp -dim 4 -ib 1 -ob 2 || \ (kbo -af | lpo -af) || \ ARCTICMREC || \ ARCTICBZMREC || \ fail) || \ fail \ ))[6] \ )*[10]) MRECSRS = (dp;(tdg?;edg[0.5]?;cdg -rfc[0.5]?;sccs?;( \ matrix -dim 1 -dp -ib 5 -ob 6[59] || \ matrix -dim 1 -dp -ib 4 -ob 10 -rat 2 -db 5[59] || \ (kbo | kbo -af | lpo -af)[59] || \ matrix -dp -dim 2 -ib 3 -ob 3[59] || \ (matrix -dp -dim 3 -ib 1 -ob 2[30] | matrix -dp -dim 3 -ib 2 -ob 3)[59] || \ matrix -dp -dim 4 -ib 1 -ob 1[59] || \ matrix -dp -dim 5 -ib 1 -ob 2[59] || \ arctic -dp -dim 1 -ib 4 -ob 5[59] || \ arctic -dp -dim 2 -ib 2 -ob 3[59] || \ arctic -dp -dim 3 -ib 1 -ob 2[59] || \ arctic -dp -dim 4 -ib 1 -ob 1[59] || \ arctic -bz -dp -dim 1 -ib 4 -ob 5[59] || \ arctic -bz -dp -dim 2 -ib 2 -ob 3[59] || \ arctic -bz -dp -dim 3 -ib 1 -ob 2[59] || \ arctic -bz -dp -dim 4 -ib 1 -ob 1[59] || \ fail)[59])*) MRECCOMP = (if standard \ then (var | (if srs then (MRECSRS[59]) else (MRECTRS[10]))) \ else fail) ARCTICDG = \ (arctic -dir -dp -dim 1 -ib 4 -ob 3[1] | \ arctic -dir -dp -dim 2 -ib 2 -ob 2[2] | \ arctic -dir -dp -dim 3 -ib 1 -ob 1[2] | \ arctic -dir -dp -dim 4 -ib 1 -ob 1[2] | \ fail) ARCTICBZDG = \ (arctic -dir -bz -dp -dim 1 -ib 4 -ob 3[1] | \ arctic -dir -bz -dp -dim 2 -ib 2 -ob 2[2] | \ arctic -dir -bz -dp -dim 3 -ib 1 -ob 1[2] | \ arctic -dir -bz -dp -dim 4 -ib 1 -ob 1[2] | \ fail) DGTRS = (dp;tdg?;edg[0.5]?;cdg -rfc[0.5]?;sccs?; \ ( \ matrix -direct -dp -dim 1 -ib 3 -ob 5 || \ matrix -direct -dp -dim 1 -ib 3 -ob 8 -rat 2 -db 1 || \ matrix -direct -dp -dim 1 -ib 4 -ob 10 -rat 4 -db 1 || \ matrix -direct -dp -dim 2 -ib 2 -ob 3 || \ matrix -direct -dp -dim 3 -ib 1 -ob 3 || \ matrix -direct -dp -dim 3 -ib 2 -ob 3 || \ matrix -direct -dp -dim 4 -ib 1 -ob 2 || \ ((kbo -af)! | (lpo -af)!) || \ ARCTICDG || \ ARCTICBZDG \ )[10]) DGSRS = (dp;(tdg?;edg[0.5]?;cdg -rfc[0.5]?;sccs?;( \ matrix -direct -dim 1 -dp -ib 5 -ob 6[59] || \ matrix -direct -dim 1 -dp -ib 4 -ob 10 -rat 2 -db 5[59] || \ ((kbo)! | (kbo -af)! | (lpo -af)!)[59] || \ matrix -direct -dp -dim 2 -ib 3 -ob 3[59] || \ (matrix -direct -dp -dim 3 -ib 1 -ob 2[30] | matrix -direct -dp -dim 3 -ib 2 -ob 3)[59] || \ matrix -direct -dp -dim 4 -ib 1 -ob 1[59] || \ matrix -direct -dp -dim 5 -ib 1 -ob 2[59] || \ arctic -dir -dp -dim 1 -ib 4 -ob 5[59] || \ arctic -dir -dp -dim 2 -ib 2 -ob 3[59] || \ arctic -dir -dp -dim 3 -ib 1 -ob 2[59] || \ arctic -dir -dp -dim 4 -ib 1 -ob 1[59] ||\ arctic -dir -bz -dp -dim 1 -ib 4 -ob 5[59] || \ arctic -dir -bz -dp -dim 2 -ib 2 -ob 3[59] || \ arctic -dir -bz -dp -dim 3 -ib 1 -ob 2[59] || \ arctic -dir -bz -dp -dim 4 -ib 1 -ob 1[59] \ )[59])) DGCOMP = (if standard \ then (var | (if srs then (DGSRS[59]) else (DGTRS[10]))) \ else fail) DPTRS = (dp; \ ( \ matrix -direct -dp -dim 1 -ib 3 -ob 5 || \ matrix -direct -dp -dim 1 -ib 3 -ob 8 -rat 2 -db 1 || \ matrix -direct -dp -dim 1 -ib 4 -ob 10 -rat 4 -db 1 || \ matrix -direct -dp -dim 2 -ib 2 -ob 3 || \ matrix -direct -dp -dim 3 -ib 1 -ob 3 || \ matrix -direct -dp -dim 3 -ib 2 -ob 3 || \ matrix -direct -dp -dim 4 -ib 1 -ob 2 || \ ((kbo -af)! | (lpo -af)!) || \ ARCTICDG || \ ARCTICBZDG \ )[10]) DPSRS = (dp;( \ matrix -direct -dim 1 -dp -ib 5 -ob 6[59] || \ matrix -direct -dim 1 -dp -ib 4 -ob 10 -rat 2 -db 5[59] || \ ((kbo)! | (kbo -af)! | (lpo -af)!)[59] || \ matrix -direct -dp -dim 2 -ib 3 -ob 3[59] || \ (matrix -direct -dp -dim 3 -ib 1 -ob 2[30] | matrix -direct -dp -dim 3 -ib 2 -ob 3)[59] || \ matrix -direct -dp -dim 4 -ib 1 -ob 1[59] || \ matrix -direct -dp -dim 5 -ib 1 -ob 2[59] || \ arctic -dir -dp -dim 1 -ib 4 -ob 5[59] || \ arctic -dir -dp -dim 2 -ib 2 -ob 3[59] || \ arctic -dir -dp -dim 3 -ib 1 -ob 2[59] || \ arctic -dir -dp -dim 4 -ib 1 -ob 1[59] || \ arctic -dir -bz -dp -dim 1 -ib 4 -ob 5[59] || \ arctic -dir -bz -dp -dim 2 -ib 2 -ob 3[59] || \ arctic -dir -bz -dp -dim 3 -ib 1 -ob 2[59] || \ arctic -dir -bz -dp -dim 4 -ib 1 -ob 1[59] \ )[59]) DPCOMP = (if standard \ then (var | (if srs then (DPSRS[59]) else (DPTRS[10]))) \ else fail) ARCTICUR = \ (arctic -dir -dp -ur -dim 1 -ib 4 -ob 3[1] | \ arctic -dir -dp -ur -dim 2 -ib 2 -ob 2[2] | \ arctic -dir -dp -ur -dim 3 -ib 1 -ob 1[2] | \ arctic -dir -dp -ur -dim 4 -ib 1 -ob 1[2] | \ fail) ARCTICBZUR = \ (arctic -dir -bz -dp -ur -dim 1 -ib 4 -ob 3[1] | \ arctic -dir -bz -dp -ur -dim 2 -ib 2 -ob 2[2] | \ arctic -dir -bz -dp -ur -dim 3 -ib 1 -ob 1[2] | \ arctic -dir -bz -dp -ur -dim 4 -ib 1 -ob 1[2] | \ fail) URTRS = (dp;ur?; \ ( \ matrix -direct -dp -ur -dim 1 -ib 3 -ob 5 || \ matrix -direct -dp -ur -dim 1 -ib 3 -ob 8 -rat 2 -db 1 || \ matrix -direct -dp -ur -dim 1 -ib 4 -ob 10 -rat 4 -db 1 || \ matrix -direct -dp -ur -dim 2 -ib 2 -ob 3 || \ matrix -direct -dp -ur -dim 3 -ib 1 -ob 3 || \ matrix -direct -dp -ur -dim 3 -ib 2 -ob 3 || \ matrix -direct -dp -ur -dim 4 -ib 1 -ob 2 || \ ((kbo -ur -af)! | (lpo -ur -af)!) || \ ARCTICUR || \ ARCTICBZUR \ )[10]) URSRS = (dp;ur?;( \ matrix -direct -dim 1 -dp -ib 5 -ob 6[59] || \ matrix -direct -dim 1 -dp -ur -ib 4 -ob 10 -rat 2 -db 5[59] || \ ((kbo)! | (kbo -af -ur)! | (lpo -af -ur)!)[59] || \ matrix -direct -dp -dim 2 -ib 3 -ob 3[59] || \ (matrix -direct -dp -dim 3 -ib 1 -ob 2[30] | matrix -direct -dp -dim 3 -ib 2 -ob 3)[59] || \ matrix -direct -dp -dim 4 -ib 1 -ob 1[59] || \ matrix -direct -dp -dim 5 -ib 1 -ob 2[59] || \ arctic -dir -dp -ur -dim 1 -ib 4 -ob 5[59] || \ arctic -dir -dp -ur -dim 2 -ib 2 -ob 3[59] || \ arctic -dir -dp -ur -dim 3 -ib 1 -ob 2[59] || \ arctic -dir -dp -ur -dim 4 -ib 1 -ob 1[59] || \ arctic -dir -bz -dp -ur -dim 1 -ib 4 -ob 5[59] || \ arctic -dir -bz -dp -ur -dim 2 -ib 2 -ob 3[59] || \ arctic -dir -bz -dp -ur -dim 3 -ib 1 -ob 2[59] || \ arctic -dir -bz -dp -ur -dim 4 -ib 1 -ob 1[59] \ )[59]) URCOMP = (if standard \ then (var | (if srs then (URSRS[59]) else (URTRS[10]))) \ else fail) DIRECTTOTMRTRS = ((\ kbo || \ (lpo | ref;lpo) || \ bounds -qc || \ fail)*[7])! MAINTOTMRTRS = (dp;tdg?;(sccs | sc)*;edg[0.5]?;cdg -rfc[0.5]?;((sccs | \ (sc || sct || \ ( \ matrix -dp -dim 1 -ib 3 -ob 5 || \ matrix -dp -dim 1 -ib 3 -ob 8 -rat 2 -db 1 || \ matrix -dp -dim 1 -ib 4 -ob 10 -rat 4 -db 1 || \ matrix -dp -dim 2 -ib 2 -ob 3 || \ matrix -dp -dim 3 -ib 1 -ob 3 || \ matrix -dp -dim 3 -ib 2 -ob 3 || \ matrix -dp -dim 4 -ib 1 -ob 2 || \ (kbo -af | lpo -af) || \ ARCTICMREC || \ ARCTICBZMREC || \ fail) || \ fail \ ))[6] \ )*[10]) TOTALTOTMRTRS=(PRETRS;(MAINTOTMRTRS || DIRECTTOTMRTRS)) TOTMRTRS = ((\ if applicative then \ (lpo | uncurry?;uncurry -mirror?;TOTALTOTMRTRS) \ else \ TOTALTOTMRTRS \ )[10] || \ poly -nl -heuristic 1 -neg -ib 3 -ob 7 -direct[9] \ ) PRETOTMRSRS = ( \ matrix -dim 1 -ib 4 -ob 5[4] || \ matrix -dim 2 -ib 2 -ob 3[4] || \ matrix -dim 3 -ib 1 -ob 2[4] || \ matrix -dim 3 -ib 2 -ob 3[4] || \ matrix -dim 4 -ib 1 -ob 2[4] || \ REV;matrix -dim 1 -ib 4 -ob 5[4] || \ REV;matrix -dim 2 -ib 2 -ob 3[4] || \ REV;matrix -dim 3 -ib 1 -ob 2[4] || \ REV;matrix -dim 3 -ib 2 -ob 3[4] || \ REV;matrix -dim 4 -ib 1 -ob 2[4] || \ (bounds -qc[4])! || \ (REV;bounds -qc[4])! || \ kbo [4] || \ arctic -dim 1 -ib 4 -ob 5[4] || \ arctic -dim 2 -ib 2 -ob 3[4] || \ arctic -dim 3 -ib 1 -ob 2[4] || \ arctic -dim 3 -ib 2 -ob 2[4] || \ fail)* MAINTOTMRSRS = (dp;(tdg?;edg[0.5]?;cdg -rfc[0.5]?;sccs?;( \ matrix -dim 1 -dp -ib 5 -ob 6[59] || \ matrix -dim 1 -dp -ib 4 -ob 10 -rat 2 -db 5[59] || \ (kbo | kbo -af | lpo -af)[59] || \ matrix -dp -dim 2 -ib 3 -ob 3[59] || \ (matrix -dp -dim 3 -ib 1 -ob 2[30] | matrix -dp -dim 3 -ib 2 -ob 3)[59] || \ matrix -dp -dim 4 -ib 1 -ob 1[59] || \ matrix -dp -dim 5 -ib 1 -ob 2[59] || \ arctic -dp -dim 1 -ib 4 -ob 5[59] || \ arctic -dp -dim 2 -ib 2 -ob 3[59] || \ arctic -dp -dim 3 -ib 1 -ob 2[59] || \ arctic -dp -dim 4 -ib 1 -ob 1[59] || \ arctic -bz -dp -dim 1 -ib 4 -ob 5[59] || \ arctic -bz -dp -dim 2 -ib 2 -ob 3[59] || \ arctic -bz -dp -dim 3 -ib 1 -ob 2[59] || \ arctic -bz -dp -dim 4 -ib 1 -ob 1[59] || \ fail)[59])*) TOTMRSRS = (PRETOTMRSRS;(MAINTOTMRSRS[59] || REV;MAINTOTMRSRS[59])) TOTALMREC = (if standard \ then (var | (if srs then (TOTMRSRS[59]) else (TOTMRTRS[10]))) \ else fail)