/export/starexec/sandbox/solver/bin/starexec_run_default /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES ******** General Schema criterion ******** Found constructors: nIL, in, out, tau Checking type order >>OK Checking positivity of constructors >>OK Checking function dependency >>OK Checking (1) sum(nIL,X) => X (meta X)[is acc in nIL,X] [is positive in nIL] [is acc in X] >>True Checking (2) new(%X.Y) => Y (meta Y)[is acc in %X.Y] [is acc in Y] >>True Checking (3) new(%Y.sum(G[%Y],H[%Y])) => sum(new(%U.G[%U]),new(%Z.H[%Z])) (fun new>sum) (fun new=new) subterm comparison of args w. LR LR (meta G)[is acc in %Y.sum(G[%Y],H[%Y])] [is positive in sum(G[%Y],H[%Y])] [is acc in G[%Y]] (fun new=new) subterm comparison of args w. LR LR (meta H)[is acc in %Y.sum(G[%Y],H[%Y])] [is positive in sum(G[%Y],H[%Y])] [is acc in H[%Y]] >>True Checking (4) new(%V.out(%V,W,J[%V])) => nIL (fun new>nIL) >>True Checking (5) new(%W.out(X1,Y1,G1[%W])) => out(X1,Y1,new(%F.G1[%F])) (fun new>out) (meta X1)[is acc in %W.out(X1,Y1,G1[%W])] [is positive in out(X1,Y1,G1[%W])] [is acc in X1] (meta Y1)[is acc in %W.out(X1,Y1,G1[%W])] [is positive in out(X1,Y1,G1[%W])] [is acc in Y1] (fun new=new) subterm comparison of args w. LR LR (meta G1)[is acc in %W.out(X1,Y1,G1[%W])] [is positive in out(X1,Y1,G1[%W])] [is acc in G1[%W]] >>True Checking (6) new(%H.in(V1,%G.I1[%H,%G])) => in(V1,%I.new(%J.I1[%J,%I])) (fun new>in) (meta V1)[is acc in %H.in(V1,%G.I1[%H,%G])] [is positive in in(V1,%G.I1[%H,%G])] [is acc in V1] (fun new=new) subterm comparison of args w. LR LR (meta I1)[is acc in %H.in(V1,%G.I1[%H,%G])] [is positive in in(V1,%G.I1[%H,%G])] [is acc in I1[%H,%G]] >>True Checking (7) new(%P.tau(J1[%P])) => tau(new(%Q.J1[%Q])) (fun new>tau) (fun new=new) subterm comparison of args w. LR LR (meta J1)[is acc in %P.tau(J1[%P])] [is positive in tau(J1[%P])] [is acc in J1[%P]] >>True Checking (8) new(%S.in(%S,%R.F2[%S,%R])) => nIL (fun new>nIL) >>True #SN! ******** Signature ******** nIL : A in : (N,(N -> A)) -> A new : (N -> A) -> A out : (N,N,A) -> A sum : (A,A) -> A tau : A -> A ******** Computation Rules ******** (1) sum(nIL,X) => X (2) new(%X.Y) => Y (3) new(%Y.sum(G[%Y],H[%Y])) => sum(new(%U.G[%U]),new(%Z.H[%Z])) (4) new(%V.out(%V,W,J[%V])) => nIL (5) new(%W.out(X1,Y1,G1[%W])) => out(X1,Y1,new(%F.G1[%F])) (6) new(%H.in(V1,%G.I1[%H,%G])) => in(V1,%I.new(%J.I1[%J,%I])) (7) new(%P.tau(J1[%P])) => tau(new(%Q.J1[%Q])) (8) new(%S.in(%S,%R.F2[%S,%R])) => nIL YES