use Structures : all; use Numerical : all; use StdIO : all; /* Compiled by APEX Version: /home/apex/apex2003/wss/sac2007.dws2007-11-06 14:02:46.317 */ /* % This is the APEX stdlib.sis include file. % Standard equates and constants for APL compiler % Also standard coercion functions */ #define toB(x) tob((x)) #define toI(x) toi((x)) #define toD(x) tod((x)) #define toC(x) (x) #define toc(x) ((x)) inline int mpyIII(int x, int y) { return(toI(x)*toI(y)); } inline int plusBBI(bool x, bool y) { return(toI(x)+toI(y)); } inline int[+] plusIII(int x, int[+] y) { /* SxA scalar function */ xel = toI(x); z = with { ( . <= iv <= .) { yel = toI(y[iv]); } : plusIII(xel,yel); } : genarray(shape(y), 0); return(z); } inline int[.] rotrXII(int[.] y) { /* Vector reverse */ n = shape(y); cell = 0; z = with { ( . <= iv <= .) : y[(n-1)-iv]; } : genarray(n, cell); return(z); } inline int[+] rotrXII(int[+] y) {/* Last axis reverse on rank>1 */ cellshape = take([-1], shape(y)); frameshape = drop([-1],shape(y)); cell = genarray(cellshape, 0); z = with { ( . <= iv <= .) : rotrXII(y[iv]); } : genarray(frameshape, cell); return(z); } inline int[.] comaXII(int[+] y) { /* Ravel of anything with rank>1 */ z = reshape([prod(shape(y))],y); return(z); } inline char[*] rhoICC(int[.] x, char[+] y) { /* APEX vector x reshape, with item reuse */ ix = toi(x); ry = comaXCC(y); zxrho = prod(ix); /* THIS NEEDS XRHO FOR CODE SAFETY!! */ yxrho = shape(ry)[[0]]; if( zxrho <= yxrho) { /* No element resuse case */ z = take([zxrho],ry); } else { ncopies = zxrho/yxrho; /* # complete copies of y. */ /* FIXME: y empty case !*/ z = with { (. <= [i] <= .) : y; } : genarray( [ncopies], y); /* Now append the leftover bits */ z = comaXCC(z) ++ take([zxrho-(ncopies*yxrho)],ry); } return(reshape(ix,z)); } inline int[*] rhoIII(int[.] x, int[+] y) { /* APEX vector x reshape, with item reuse */ ix = toi(x); ry = comaXII(y); zxrho = prod(ix); /* THIS NEEDS XRHO FOR CODE SAFETY!! */ yxrho = shape(ry)[[0]]; if( zxrho <= yxrho) { /* No element resuse case */ z = take([zxrho],ry); } else { ncopies = zxrho/yxrho; /* # complete copies of y. */ /* FIXME: y empty case !*/ z = with { (. <= [i] <= .) : y; } : genarray( [ncopies], y); /* Now append the leftover bits */ z = comaXII(z) ++ take([zxrho-(ncopies*yxrho)],ry); } return(reshape(ix,z)); } inline int[*] rhoIII(int[.] x, int y) { /* Vector reshape scalar to matrix) */ zxrho = prod(toi(x)); /* Result element count */ z = genarray([zxrho], y); /* allocate result */ z = reshape(toi(x),z); return(z); } inline bool[*] rhoIBB(int[.] x, bool[+] y) { /* APEX vector x reshape, with item reuse */ ix = toi(x); ry = comaXBB(y); zxrho = prod(ix); /* THIS NEEDS XRHO FOR CODE SAFETY!! */ yxrho = shape(ry)[[0]]; if( zxrho <= yxrho) { /* No element resuse case */ z = take([zxrho],ry); } else { ncopies = zxrho/yxrho; /* # complete copies of y. */ /* FIXME: y empty case !*/ z = with { (. <= [i] <= .) : y; } : genarray( [ncopies], y); /* Now append the leftover bits */ z = comaXBB(z) ++ take([zxrho-(ncopies*yxrho)],ry); } return(reshape(ix,z)); } inline int[*] dropBII(bool[.] x, int[*] y) { /* Vector drop non-scalar */ /* FIXME: Assert dim(y) == shape(x)[0]; */ /* e.g, (,5)drop iota 5 */ return(drop(toi(x), y)); } inline int[*] dropIII(int[.] x, int[*] y) { /* Vector drop non-scalar */ /* FIXME: Assert dim(y) == shape(x)[0]; */ /* e.g, (,5)drop iota 5 */ return(drop(toi(x), y)); } inline int[*] dropIII(int x, int[*] y) { /* Scalar drop non-scalar */ return(drop([toi(x)], y)); } inline int[.] iotaXII(int y, int QUADio) { /* Index generator on scalar */ /* HELP! Needs domain check for negative shp */ z = QUADio+iota(toi(y)); return( z); } inline char[*] quadXCC(char[*] y, int QUADpp, int QUADpw) { /* {quad}{<-} anything */ show(y); return(y); } inline bool[*] quadXBB(bool[*] y, int QUADpp, int QUADpw) { /* {quad}{<-} anything */ show(y); return(y); } inline int[*] quadXII(int[*] y, int QUADpp, int QUADpw) { /* {quad}{<-} anything */ show(y); return(y); } inline int[2] comaIII(int x, int y) {/* SxS catenate first (or last) axis */ return([toI(x)]++[toI(y)]); } inline int[.] comaIII(int x, int[.] y) {/* SxV catenate first (or last) axis */ return([toI(x)]++toI(y)); } inline bool[2] comaBBB(bool x, bool y) {/* SxS catenate first (or last) axis */ return([toB(x)]++[toB(y)]); } inline char[.] comaCCC(char[.] x, char[.] y) { /* VxV catenate first or last axis */ return(toC(x)++toC(y)); } inline bool[.] comaBBB(bool[.] x, bool y) {/* VxS catenate first (or last) axis */ return(toB(x)++[toB(y)]); } inline double[+] combDID(double x, int[+] y) { /* SxA first-axis catenate */ cell = genarray([1]++drop([1],shape(y)),toD(x)); return(cell++toD(y)); } inline int[+] combIII(int x, int[+] y) { /* SxA first-axis catenate */ cell = genarray([1]++drop([1],shape(y)),toI(x)); return(cell++toI(y)); } inline int[+] comaIII(int[+] x, int y) { /* A,S last-axis catenate */ frame = drop([-1],shape(x)); cell = genarray([1+shape(x)[dim(x)-1]],0); z = with { (. <= iv <= .) : toI(x[iv])++[toI(y)]; }: genarray(frame, cell); return(z); } inline int[.] comaIII(int[.] x, int[.] y) { /* VxV catenate first or last axis */ return(toI(x)++toI(y)); } inline int[+] comaIII(int[+] x, int[+] y) {/* AxA last axis catenate. Ranks match */ cellshape = (take([-1],shape(x)))+take([-1],shape(y)); cell = genarray(cellshape, 0); z = with { (. <= iv <= .) : toI(x[iv])++toI(y[iv]); } : genarray(drop([-1], shape(x)), cell); return(z); } inline bool sameIIB(int[+] x, int[+] y) { /* Non-scalar match non-scalar */ return(match(toI(x),toI(y))); } inline bool sameDDB(double[+] x, double[+] y,double QUADct) { /* Non-scalar match non-scalar */ return(match(toD(x),toD(y))); } inline bool sameDIB(double[+] x, int[+] y,double QUADct) { /* Non-scalar match non-scalar */ return(match(toD(x),toD(y))); } inline char[*] indr(char[+] X, int I) { /* X[scalarI;;;] */ /* Used only in conjunction with other indexing, e.g., * X[scalarI;;j;] */ z = X[[I]]; return(z); } inline int[*] indr(int[+] X) { /* X[;;;] */ /* Used only in conjunction with other indexing, e.g., * X[;;j;] */ return(X); } inline int[+] inds0(int[+] X, int I0, int Yin) { /* X[;;nonscalarI;;;]<- scalarY */ z = toi(X); Y = Yin; z[[I0]]=toi(Y); return(z); } inline int[+] inds1(int[+] X, int [+] I0, int[+] Y) { /* X[;;nonscalarI;;;]<- nonscalarY */ /* In function name indsXXX, XXX are ranks of various Is, or x if axis elided */ z = toi(X); for(i0=0; i01 */ z = reshape([prod(shape(y))],y); return(z); } inline bool[.] comaXBB(bool[+] y) { /* Ravel of anything with rank>1 */ z = reshape([prod(shape(y))],y); return(z); } inline char[*] indrfr(int fr, char[+] X, int[+] I) { /* X[;;;I;;;], where I has fr (framerank) semicolons to its left */ /* This is actually "I from"fr X" */ frameshape = take([fr], shape(X)); cellshape = shape(I)++drop([fr+1], shape(X)); cell = genarray(cellshape, ' '); z = with { (. <= iv <= .) : indrfr0(X[iv], I); } : genarray(frameshape, cell); return(z); } inline char[*] indrfr0(char[+] X, int[+] I) { /* X[I;;;] or I from X */ cellshape = drop([1], shape(X)); cell = genarray(cellshape, ' '); z = with { (. <= iv <= .) : sel( I[iv], X); } : genarray(shape(I), cell); return(z); } inline char[*] indrfr(int fr, char[+] X, int I) { /* X[;;;I;;;], where I has fr (framerank) semicolons to its left */ /* This is actually "I from"fr X" */ frameshape = take([fr], shape(X)); cellshape = drop([1+fr],shape(X)); cell = genarray(cellshape,' '); z = with { (. <= iv <= .) : sel( I, X[iv]); } : genarray(frameshape, cell); return(z); } inline int[*] indrfr(int fr, int[+] X, int[+] I) { /* X[;;;I;;;], where I has fr (framerank) semicolons to its left */ /* This is actually "I from"fr X" */ frameshape = take([fr], shape(X)); cellshape = shape(I)++drop([fr+1], shape(X)); cell = genarray(cellshape, 0); z = with { (. <= iv <= .) : indrfr0(X[iv], I); } : genarray(frameshape, cell); return(z); } inline int[*] indrfr0(int[+] X, int[+] I) { /* X[I;;;] or I from X */ cellshape = drop([1], shape(X)); cell = genarray(cellshape, 0); z = with { (. <= iv <= .) : sel( I[iv], X); } : genarray(shape(I), cell); return(z); } inline int[*] indrfr(int fr, int[+] X, int I) { /* X[;;;I;;;], where I has fr (framerank) semicolons to its left */ /* This is actually "I from"fr X" */ frameshape = take([fr], shape(X)); cellshape = drop([1+fr],shape(X)); cell = genarray(cellshape,0); z = with { (. <= iv <= .) : sel( I, X[iv]); } : genarray(frameshape, cell); return(z); } inline int ABC(int I, int Xshape) { /* Array bounds checker for indexed ref X[scalarI] and indexed assign */ z = I; #ifdef BOUNDSCHECKING /* This needs more thought... */ if ( (I < 0) || (I >= Xshape)) { print(tochar("APEX index error!")); } #endif return(z); } inline int[+] ABC(int[+] I, int Xshape) { /* Array bounds checker for indexed ref X[nonscalarI] and indexed assign */ z = I; #ifdef BOUNDSCHECKING bad = with { ((0*shape(z)) <= iv < shape(z)) : (z[iv] < 0) || (z[iv] >= Xshape); }: fold(|, false); if (bad) print(tochar("APEX index error!")); #endif return(z); } inline char[.] okXBC(bool k ,int QUADio) { /* r{<-}ok k r{<-}(2 3{rho}'UGHOK ')[k;] */ A_22=rhoICC([2, 3],['U','G','H','O','K',' ']); A_21= ABC(toi(k)-QUADio,shape(A_22)[0]); A_24=A_22[[A_21]]; r_0=( A_24); return(r_0); } inline bool[.] testisXIB(int n ,double QUADct,int QUADio,int QUADpp,int QUADpw) { /* r{<-}testis n;i;v;M2;z;M234;k @ Indexed assign tests r{<-}(n,n,n){rho}{iota}n{times}n{times}n r{<-}r{match}r[;;] @ M[;;] v{<-}{iota}4 v[0]{<-}23 r{<-}r,k{<-}v{match}v[] @ V[] #{<-}'V[]: ',ok k r{<-}r,k{<-}v{match}23 1 2 3 @ V[S]{<-}S #{<-}'V[S]<-S: ',ok k v[1 2 2 3]{<-}9 8 7 6 r{<-}r,k{<-}v{match}23 9 7 6 @ V[Vdups]{<-}V #{<-}'V[Vdups]<-V: ',ok k v[1 2]{<-}10 r{<-}r,k{<-}v{match}23 10 10 6 @ V[V]{<-}S #{<-}'V[V]<-S: ',ok k v[]{<-}{reverse}{iota}4 r{<-}r,k{<-}v{match}3 2 1 0 @ V[]{<-}V #{<-}'V[]<-V: ',ok k v[]{<-}11 r{<-}r,k{<-}v{match}11 11 11 11 @ V[]{<-}S #{<-}'V[]<-S: ',ok k @ Rank-2 tests M2{<-}2 3{rho}{iota}6 M2[;]{<-}42 @ M[]{<-}S r{<-}r,k{<-}M2{match}2 3{rho}42 #{<-}'M[]<-S: ',ok k M2{<-}2 3{rho}{iota}6 M2[0;]{<-}55 @ M[S;]{<-}S r{<-}r,k{<-}M2{match}2 3{rho}55 55 55 3 4 5 #{<-}'M[S;]<-S: ',ok k M2{<-}2 3{rho}{iota}6 M2[;]{<-}{reverse}M2 @ M[;]{<-}M r{<-}r,k{<-}M2{match}2 3{rho}2 1 0 5 4 3 #{<-}'M[;]<-M: ',ok k M2{<-}2 3{rho}{iota}6 M2[0;]{<-}7 8 9 @ M[S;]{<-}V r{<-}r,k{<-}M2{match}2 3{rho}7 8 9 3 4 5 #{<-}'M[S;]<-V: ',ok k M2{<-}2 3{rho}{iota}6 M2[;0]{<-}10 20 @ M[;S]{<-}V r{<-}r,k{<-}M2{match}2 3{rho}10 1 2 20 4 5 #{<-}'M[;S]<-V: ',ok k M2{<-}2 3{rho}{iota}6 M2[1 0;]{<-}2 3{rho}10 20 30 40 50 60 @ M[V;]{<-}M r{<-}r,k{<-}M2{match}2 3{rho}40 50 60 10 20 30 #{<-}'M[V;]<-M: ',ok k M2{<-}2 3{rho}{iota}6 M2[0;1]{<-}666 @ M[S;S]{<-}S r{<-}r,k{<-}M2{match}2 3{rho}0 666 2 3 4 5 #{<-}'M[S;S]<-S: ',ok k M2[1 0;2 1]{<-}42 @ M[V;V]{<-}S r{<-}r,M2{match}2 3{rho}0 42 42 3 42 42 #{<-}'M[V;V]<-S: ',ok k M2[1 0;2 0]{<-}2 2{rho}9 8 7 6 @ M[V;V]{<-}M r{<-}r,k{<-}M2{match}2 3{rho}6 42 7 8 42 9 #{<-}'M[V;V]<-M: ',ok k @ Rank-3 tests M234{<-}2 3 4{rho}{iota}24 M234[0;;]{<-}3.5 @ M[S;;]{<-}S r{<-}r,k{<-}M234{match}3.5{commabar}1 0 0{drop}2 3 4{rho}{iota}24 #{<-}'M[S;;]<-S: ',ok k M234[0;;]{<-}3 4{rho}12 @ M[S;;]{<-}M r{<-}r,k{<-}M234{match}12{commabar}1 3 4{rho}12+{iota}12 #{<-}'M[S;;]<-M: ',ok k M234[1 0;;]{<-}42 @ M[V;;]{<-}S r{<-}r,k{<-}M234{match}2 3 4{rho}42 #{<-}'M[V;;]<-S: ',ok k M234{<-}2 3 4{rho}{iota}24 M234[2 1{rho}1 0;;]{<-}42 @ M[M;;]{<-}S r{<-}r,k{<-}M234{match}2 3 4{rho}42 #{<-}'M[M;;]<-S: ',ok k M234{<-}2 3 4{rho}{iota}24 v{<-}M234 v[0;2;]{<-}42 v[1;2;]{<-}42 M234[;2;]{<-}42 @ M[;S;]{<-}S r{<-}r,M234{match}v #{<-}'M[;S;]<-S: ',ok k M234{<-}2 3 4{rho}{iota}24 M234[;;3]{<-}42 @ M[;;S]{<-}S r{<-}r,k{<-}M234{match}(0 0 {neg}1{drop}2 3 4{rho}{iota}24),42 #{<-}'M[;;S]<-S: ',ok k M234{<-}2 3 4{rho}{iota}24 M234[0;0;2]{<-}42 @ M[S;S;S]{<-}S r{<-}r,k{<-}(,M234){match}0 1 42,3{drop},2 3 4{rho}{iota}24 #{<-}'M[S;S;S]<-S: ',ok k M2{<-}3 6{rho}{iota}99 M2[;3 4 5]{<-}3 3{rho}100+{iota}9 @ M[;V]{<-}M r{<-}r,k{<-}M2{match}(3 3{rho}0 1 2 6 7 8 12 13 14),3 3{rho}100+{iota}9 #{<-}'M[;V]<-M: ',ok k */ /* dsf Scalar & clique */ A_197=mpyIII(n,n); /* dsf Scalar & clique */ A_198=mpyIII(n,A_197); A_200=iotaXII( A_198,QUADio); A_201=comaIII(n,n); A_202=comaIII(n,A_201); A_203=rhoIII(A_202,A_200); r_0=( A_203); A_209=r_0; A_211=sameIIB(r_0,A_209); r_1=( A_211); A_214=iotaXII( 4,QUADio); v_0=( A_214); A_216= ABC(toi(false)-QUADio,shape(v_0)[0]); A_218=inds0(v_0,A_216,23); v_1=( A_218); A_222=v_1; A_224=sameIIB(v_1,A_222); k_0=( A_224); A_226=comaBBB(r_1,A_224); r_2=( A_226); A_229=okXBC( k_0,QUADio); A_230=comaCCC(['V','[',']',':',' '],A_229); A_233=quadXCC( A_230,QUADpp,QUADpw); A_235=sameIIB(v_1,[23, 1, 2, 3]); k_1=( A_235); A_237=comaBBB(r_2,A_235); r_3=( A_237); A_240=okXBC( k_1,QUADio); A_241=comaCCC(['V','[','S',']','<','-','S',':',' '],A_240); A_244=quadXCC( A_241,QUADpp,QUADpw); A_245= ABC(toi([1, 2, 2, 3])-QUADio,shape(v_1)[0]); A_247=inds1(v_1,A_245,[9, 8, 7, 6]); v_2=( A_247); A_250=sameIIB(v_2,[23, 9, 7, 6]); k_2=( A_250); A_252=comaBBB(r_3,A_250); r_4=( A_252); A_255=okXBC( k_2,QUADio); A_256=comaCCC(['V','[','V','d','u','p','s',']','<','-','V',':',' '],A_255); A_259=quadXCC( A_256,QUADpp,QUADpw); A_260= ABC(toi([1, 2])-QUADio,shape(v_2)[0]); A_262=inds1(v_2,A_260,10); v_3=( A_262); A_265=sameIIB(v_3,[23, 10, 10, 6]); k_3=( A_265); A_267=comaBBB(r_4,A_265); r_5=( A_267); A_270=okXBC( k_3,QUADio); A_271=comaCCC(['V','[','V',']','<','-','S',':',' '],A_270); A_274=quadXCC( A_271,QUADpp,QUADpw); A_276=iotaXII( 4,QUADio); A_277=rotrXII( A_276); A_280=indsx(v_3,A_277); v_4=( A_280); A_283=sameIIB(v_4,[3, 2, 1, 0]); k_4=( A_283); A_285=comaBBB(r_5,A_283); r_6=( A_285); A_288=okXBC( k_4,QUADio); A_289=comaCCC(['V','[',']','<','-','V',':',' '],A_288); A_292=quadXCC( A_289,QUADpp,QUADpw); A_295=indsx(v_4,11); v_5=( A_295); A_298=sameIIB(v_5,[11, 11, 11, 11]); k_5=( A_298); A_300=comaBBB(r_6,A_298); r_7=( A_300); A_303=okXBC( k_5,QUADio); A_304=comaCCC(['V','[',']','<','-','S',':',' '],A_303); A_307=quadXCC( A_304,QUADpp,QUADpw); A_309=iotaXII( 6,QUADio); A_310=rhoIII([2, 3],A_309); M2_0=( A_310); A_315=indsxx(M2_0,42); M2_1=( A_315); A_317=rhoIII([2, 3],42); A_319=sameIIB(M2_1,A_317); k_6=( A_319); A_321=comaBBB(r_7,A_319); r_8=( A_321); A_324=okXBC( k_6,QUADio); A_325=comaCCC(['M','[',']','<','-','S',':',' '],A_324); A_328=quadXCC( A_325,QUADpp,QUADpw); A_330=iotaXII( 6,QUADio); A_331=rhoIII([2, 3],A_330); M2_2=( A_331); A_334= ABC(toi(false)-QUADio,shape(M2_2)[0]); A_336=inds0x(M2_2,A_334,55); M2_3=( A_336); A_338=rhoIII([2, 3],[55, 55, 55, 3, 4, 5]); A_340=sameIIB(M2_3,A_338); k_7=( A_340); A_342=comaBBB(r_8,A_340); r_9=( A_342); A_345=okXBC( k_7,QUADio); A_346=comaCCC(['M','[','S',';',']','<','-','S',':',' '],A_345); A_349=quadXCC( A_346,QUADpp,QUADpw); A_351=iotaXII( 6,QUADio); A_352=rhoIII([2, 3],A_351); M2_4=( A_352); A_354=rotrXII( M2_4); A_358=indsxx(M2_4,A_354); M2_5=( A_358); A_360=rhoIII([2, 3],[2, 1, 0, 5, 4, 3]); A_362=sameIIB(M2_5,A_360); k_8=( A_362); A_364=comaBBB(r_9,A_362); r_10=( A_364); A_367=okXBC( k_8,QUADio); A_368=comaCCC(['M','[',';',']','<','-','M',':',' '],A_367); A_371=quadXCC( A_368,QUADpp,QUADpw); A_373=iotaXII( 6,QUADio); A_374=rhoIII([2, 3],A_373); M2_6=( A_374); A_377= ABC(toi(false)-QUADio,shape(M2_6)[0]); A_379=inds0x(M2_6,A_377,[7, 8, 9]); M2_7=( A_379); A_381=rhoIII([2, 3],[7, 8, 9, 3, 4, 5]); A_383=sameIIB(M2_7,A_381); k_9=( A_383); A_385=comaBBB(r_10,A_383); r_11=( A_385); A_388=okXBC( k_9,QUADio); A_389=comaCCC(['M','[','S',';',']','<','-','V',':',' '],A_388); A_392=quadXCC( A_389,QUADpp,QUADpw); A_394=iotaXII( 6,QUADio); A_395=rhoIII([2, 3],A_394); M2_8=( A_395); A_397= ABC(toi(false)-QUADio,shape(M2_8)[1]); A_400=indsx0(M2_8,A_397,[10, 20]); M2_9=( A_400); A_402=rhoIII([2, 3],[10, 1, 2, 20, 4, 5]); A_404=sameIIB(M2_9,A_402); k_10=( A_404); A_406=comaBBB(r_11,A_404); r_12=( A_406); A_409=okXBC( k_10,QUADio); A_410=comaCCC(['M','[',';','S',']','<','-','V',':',' '],A_409); A_413=quadXCC( A_410,QUADpp,QUADpw); A_415=iotaXII( 6,QUADio); A_416=rhoIII([2, 3],A_415); M2_10=( A_416); A_418=rhoIII([2, 3],[10, 20, 30, 40, 50, 60]); A_420= ABC(toi([true,false])-QUADio,shape(M2_10)[0]); A_422=inds1x(M2_10,A_420,A_418); M2_11=( A_422); A_424=rhoIII([2, 3],[40, 50, 60, 10, 20, 30]); A_426=sameIIB(M2_11,A_424); k_11=( A_426); A_428=comaBBB(r_12,A_426); r_13=( A_428); A_431=okXBC( k_11,QUADio); A_432=comaCCC(['M','[','V',';',']','<','-','M',':',' '],A_431); A_435=quadXCC( A_432,QUADpp,QUADpw); A_437=iotaXII( 6,QUADio); A_438=rhoIII([2, 3],A_437); M2_12=( A_438); A_441= ABC(toi(false)-QUADio,shape(M2_12)[0]); A_440= ABC(toi(true)-QUADio,shape(M2_12)[1]); A_443=inds00(M2_12,A_441,A_440,666); M2_13=( A_443); A_445=rhoIII([2, 3],[0, 666, 2, 3, 4, 5]); A_447=sameIIB(M2_13,A_445); k_12=( A_447); A_449=comaBBB(r_13,A_447); r_14=( A_449); A_452=okXBC( k_12,QUADio); A_453=comaCCC(['M','[','S',';','S',']','<','-','S',':',' '],A_452); A_456=quadXCC( A_453,QUADpp,QUADpw); A_458= ABC(toi([true,false])-QUADio,shape(M2_13)[0]); A_457= ABC(toi([2, 1])-QUADio,shape(M2_13)[1]); A_460=inds11(M2_13,A_458,A_457,42); M2_14=( A_460); A_462=rhoIII([2, 3],[0, 42, 42, 3, 42, 42]); A_464=sameIIB(M2_14,A_462); A_465=comaBBB(r_14,A_464); r_15=( A_465); A_468=okXBC( k_12,QUADio); A_469=comaCCC(['M','[','V',';','V',']','<','-','S',':',' '],A_468); A_472=quadXCC( A_469,QUADpp,QUADpw); A_473=rhoIII([2, 2],[9, 8, 7, 6]); A_475= ABC(toi([true,false])-QUADio,shape(M2_14)[0]); A_474= ABC(toi([2, 0])-QUADio,shape(M2_14)[1]); A_477=inds11(M2_14,A_475,A_474,A_473); M2_15=( A_477); A_479=rhoIII([2, 3],[6, 42, 7, 8, 42, 9]); A_481=sameIIB(M2_15,A_479); k_13=( A_481); A_483=comaBBB(r_15,A_481); r_16=( A_483); A_486=okXBC( k_13,QUADio); A_487=comaCCC(['M','[','V',';','V',']','<','-','M',':',' '],A_486); A_490=quadXCC( A_487,QUADpp,QUADpw); A_492=iotaXII( 24,QUADio); A_493=rhoIII([2, 3, 4],A_492); M234_0=( A_493); A_497= ABC(toi(false)-QUADio,shape(M234_0)[0]); A_499=inds0xx(M234_0,A_497,3.5); M234_1=( A_499); A_502=iotaXII( 24,QUADio); A_503=rhoIII([2, 3, 4],A_502); A_504=dropBII([true,false,false],A_503); A_505=combDID(3.5,A_504); A_507=sameDDB(M234_1,A_505,QUADct); k_14=( A_507); A_509=comaBBB(r_16,A_507); r_17=( A_509); A_512=okXBC( k_14,QUADio); A_513=comaCCC(['M','[','S',';',';',']','<','-','S',':',' '],A_512); A_516=quadXCC( A_513,QUADpp,QUADpw); A_517=rhoIII([3, 4],12); A_520= ABC(toi(false)-QUADio,shape(M234_1)[0]); A_522=inds0xx(M234_1,A_520,A_517); M234_2=( A_522); A_525=iotaXII( 12,QUADio); /* dsf scalar(s) */ A_526=plusIII(12,A_525); A_527=rhoIII([1, 3, 4],A_526); A_528=combIII(12,A_527); A_530=sameDIB(M234_2,A_528,QUADct); k_15=( A_530); A_532=comaBBB(r_17,A_530); r_18=( A_532); A_535=okXBC( k_15,QUADio); A_536=comaCCC(['M','[','S',';',';',']','<','-','M',':',' '],A_535); A_539=quadXCC( A_536,QUADpp,QUADpw); A_542= ABC(toi([true,false])-QUADio,shape(M234_2)[0]); A_544=inds1xx(M234_2,A_542,42); M234_3=( A_544); A_546=rhoIII([2, 3, 4],42); A_548=sameDIB(M234_3,A_546,QUADct); k_16=( A_548); A_550=comaBBB(r_18,A_548); r_19=( A_550); A_553=okXBC( k_16,QUADio); A_554=comaCCC(['M','[','V',';',';',']','<','-','S',':',' '],A_553); A_557=quadXCC( A_554,QUADpp,QUADpw); A_559=iotaXII( 24,QUADio); A_560=rhoIII([2, 3, 4],A_559); M234_4=( A_560); A_562=rhoIBB([2, 1],[true,false]); A_565= ABC(toi(A_562)-QUADio,shape(M234_4)[0]); A_567=inds2xx(M234_4,A_565,42); M234_5=( A_567); A_569=rhoIII([2, 3, 4],42); A_571=sameIIB(M234_5,A_569); k_17=( A_571); A_573=comaBBB(r_19,A_571); r_20=( A_573); A_576=okXBC( k_17,QUADio); A_577=comaCCC(['M','[','M',';',';',']','<','-','S',':',' '],A_576); A_580=quadXCC( A_577,QUADpp,QUADpw); A_582=iotaXII( 24,QUADio); A_583=rhoIII([2, 3, 4],A_582); M234_6=( A_583); v_6=( M234_6); A_588= ABC(toi(false)-QUADio,shape(v_6)[0]); A_587= ABC(toi(2)-QUADio,shape(v_6)[1]); A_590=inds00x(v_6,A_588,A_587,42); v_7=( A_590); A_594= ABC(toi(true)-QUADio,shape(v_7)[0]); A_593= ABC(toi(2)-QUADio,shape(v_7)[1]); A_596=inds00x(v_7,A_594,A_593,42); v_8=( A_596); A_599= ABC(toi(2)-QUADio,shape(M234_6)[1]); A_602=indsx0x(M234_6,A_599,42); M234_7=( A_602); A_605=sameIIB(M234_7,v_8); A_606=comaBBB(r_20,A_605); r_21=( A_606); A_609=okXBC( k_17,QUADio); A_610=comaCCC(['M','[',';','S',';',']','<','-','S',':',' '],A_609); A_613=quadXCC( A_610,QUADpp,QUADpw); A_615=iotaXII( 24,QUADio); A_616=rhoIII([2, 3, 4],A_615); M234_8=( A_616); A_618= ABC(toi(3)-QUADio,shape(M234_8)[2]); A_622=indsxx0(M234_8,A_618,42); M234_9=( A_622); A_625=iotaXII( 24,QUADio); A_626=rhoIII([2, 3, 4],A_625); A_627=dropIII([0, 0, -1],A_626); A_628=comaIII(A_627,42); A_630=sameIIB(M234_9,A_628); k_18=( A_630); A_632=comaBBB(r_21,A_630); r_22=( A_632); A_635=okXBC( k_18,QUADio); A_636=comaCCC(['M','[',';',';','S',']','<','-','S',':',' '],A_635); A_639=quadXCC( A_636,QUADpp,QUADpw); A_641=iotaXII( 24,QUADio); A_642=rhoIII([2, 3, 4],A_641); M234_10=( A_642); A_646= ABC(toi(false)-QUADio,shape(M234_10)[0]); A_645= ABC(toi(false)-QUADio,shape(M234_10)[1]); A_644= ABC(toi(2)-QUADio,shape(M234_10)[2]); A_648=inds000(M234_10,A_646,A_645,A_644,42); M234_11=( A_648); A_651=iotaXII( 24,QUADio); A_652=rhoIII([2, 3, 4],A_651); A_653=comaXII( A_652); A_654=dropIII(3,A_653); A_655=comaIII([0, 1, 42],A_654); A_656=comaXII( M234_11); A_658=sameIIB(A_656,A_655); k_19=( A_658); A_660=comaBBB(r_22,A_658); r_23=( A_660); A_663=okXBC( k_19,QUADio); A_664=comaCCC(['M','[','S',';','S',';','S',']','<','-','S',':',' '],A_663); A_667=quadXCC( A_664,QUADpp,QUADpw); A_669=iotaXII( 99,QUADio); A_670=rhoIII([3, 6],A_669); M2_16=( A_670); A_673=iotaXII( 9,QUADio); /* dsf scalar(s) */ A_674=plusIII(100,A_673); A_675=rhoIII([3, 3],A_674); A_676= ABC(toi([3, 4, 5])-QUADio,shape(M2_16)[1]); A_679=indsx1(M2_16,A_676,A_675); M2_17=( A_679); A_682=iotaXII( 9,QUADio); /* dsf scalar(s) */ A_683=plusIII(100,A_682); A_684=rhoIII([3, 3],A_683); A_685=rhoIII([3, 3],[0, 1, 2, 6, 7, 8, 12, 13, 14]); A_686=comaIII(A_685,A_684); A_688=sameIIB(M2_17,A_686); k_20=( A_688); A_690=comaBBB(r_23,A_688); r_24=( A_690); A_693=okXBC( k_20,QUADio); A_694=comaCCC(['M','[',';','V',']','<','-','M',':',' '],A_693); A_697=quadXCC( A_694,QUADpp,QUADpw); return(r_24); } int main() { /* r{<-}main;#IO;#RL;n;#PP;#PW;z #IO{<-}0 n{<-}5 #RL{<-}16807 #PP{<-}16 #PW{<-}80 r{<-}testis n #{<-}r r{<-}1+^/r #{<-}r */ QUADio_0=toi(( false)); QUADct_0=( 1.0e-13); QUADpp_0=( 10); QUADpw_0=( 80); QUADrl_0=( 16807); QUADio_1=toi(( false)); n_0=( 5); QUADrl_1=( 16807); QUADpp_1=( 16); QUADpw_1=( 80); A_60=testisXIB( n_0,QUADct_0,QUADio_1,QUADpp_1,QUADpw_1); r_0=( A_60); A_64=quadXBB( r_0,QUADpp_1,QUADpw_1); A_65=andslXBBQUICKSTOP( r_0); /* dsf scalar(s) */ A_69=plusBBI(true,A_65); r_1=( A_69); A_73=quadXII( r_1,QUADpp_1,QUADpw_1); return(r_1); }