/export/starexec/sandbox2/solver/bin/starexec_run_default /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES ******** General Schema criterion ******** Found constructors: cons, leaf, nil, node Checking type order >>OK Checking positivity of constructors >>OK Checking function dependency >>Regared as equal: flatwithsub, flatwith Checking (1) append(nil,X) => X (meta X)[is acc in nil,X] [is positive in nil] [is acc in X] >>True Checking (2) append(cons(Y,U),V) => cons(Y,append(U,V)) (fun append>cons) (meta Y)[is acc in cons(Y,U),V] [is positive in cons(Y,U)] [is acc in Y] (fun append=append) subterm comparison of args w. LR LR (meta U)[is acc in cons(Y,U),V] [is positive in cons(Y,U)] [is acc in U] (meta V)[is acc in cons(Y,U),V] [is positive in cons(Y,U)] [is acc in V] >>True Checking (3) flatwith(I,leaf(P)) => cons(I[P],nil) (fun flatwith>cons) (meta I)[is acc in I,leaf(P)] [is acc in I] (meta P)[is acc in I,leaf(P)] [is positive in leaf(P)] [is acc in P] (fun flatwith>nil) >>True Checking (4) flatwith(F1,node(Y1)) => flatwithsub(F1,Y1) (fun flatwith=flatwithsub) subterm comparison of args w. LR LR (meta F1)[is acc in F1,node(Y1)] [is acc in F1] (meta Y1)[is acc in F1,node(Y1)] [is positive in node(Y1)] [is acc in Y1] >>True Checking (5) flatwithsub(G1,nil) => nil (fun flatwithsub>nil) >>True Checking (6) flatwithsub(H1,cons(W1,P1)) => append(flatwith(H1,W1),flatwithsub(H1,P1)) (fun flatwithsub>append) (fun flatwithsub=flatwith) subterm comparison of args w. LR LR (meta H1)[is acc in H1,cons(W1,P1)] [is acc in H1] (meta W1)[is acc in H1,cons(W1,P1)] [is positive in cons(W1,P1)] [is acc in W1] (fun flatwithsub=flatwithsub) subterm comparison of args w. LR LR (meta H1)[is acc in H1,cons(W1,P1)] [is acc in H1] (meta P1)[is acc in H1,cons(W1,P1)] [is positive in cons(W1,P1)] [is acc in P1] >>True #SN! ******** Signature ******** append : (c,c) -> c cons : (b,c) -> c flatwith : ((a -> b),b) -> c flatwithsub : ((a -> b),c) -> c leaf : a -> b nil : c node : c -> b ******** Computation Rules ******** (1) append(nil,X) => X (2) append(cons(Y,U),V) => cons(Y,append(U,V)) (3) flatwith(I,leaf(P)) => cons(I[P],nil) (4) flatwith(F1,node(Y1)) => flatwithsub(F1,Y1) (5) flatwithsub(G1,nil) => nil (6) flatwithsub(H1,cons(W1,P1)) => append(flatwith(H1,W1),flatwithsub(H1,P1)) YES