/export/starexec/sandbox2/solver/bin/starexec_run_FirstOrder /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- MAYBE We consider the system theBenchmark. We are asked to determine termination of the following first-order TRS. 0 : [] --> o U11 : [o * o] --> o U12 : [o * o] --> o U21 : [o * o * o * o] --> o U22 : [o * o * o * o] --> o U23 : [o * o * o * o] --> o active : [o] --> o cons : [o * o] --> o length : [o] --> o mark : [o] --> o nil : [] --> o s : [o] --> o take : [o * o] --> o tt : [] --> o zeros : [] --> o active(zeros) => mark(cons(0, zeros)) active(U11(tt, X)) => mark(U12(tt, X)) active(U12(tt, X)) => mark(s(length(X))) active(U21(tt, X, Y, Z)) => mark(U22(tt, X, Y, Z)) active(U22(tt, X, Y, Z)) => mark(U23(tt, X, Y, Z)) active(U23(tt, X, Y, Z)) => mark(cons(Z, take(Y, X))) active(length(nil)) => mark(0) active(length(cons(X, Y))) => mark(U11(tt, Y)) active(take(0, X)) => mark(nil) active(take(s(X), cons(Y, Z))) => mark(U21(tt, Z, X, Y)) mark(zeros) => active(zeros) mark(cons(X, Y)) => active(cons(mark(X), Y)) mark(0) => active(0) mark(U11(X, Y)) => active(U11(mark(X), Y)) mark(tt) => active(tt) mark(U12(X, Y)) => active(U12(mark(X), Y)) mark(s(X)) => active(s(mark(X))) mark(length(X)) => active(length(mark(X))) mark(U21(X, Y, Z, U)) => active(U21(mark(X), Y, Z, U)) mark(U22(X, Y, Z, U)) => active(U22(mark(X), Y, Z, U)) mark(U23(X, Y, Z, U)) => active(U23(mark(X), Y, Z, U)) mark(take(X, Y)) => active(take(mark(X), mark(Y))) mark(nil) => active(nil) cons(mark(X), Y) => cons(X, Y) cons(X, mark(Y)) => cons(X, Y) cons(active(X), Y) => cons(X, Y) cons(X, active(Y)) => cons(X, Y) U11(mark(X), Y) => U11(X, Y) U11(X, mark(Y)) => U11(X, Y) U11(active(X), Y) => U11(X, Y) U11(X, active(Y)) => U11(X, Y) U12(mark(X), Y) => U12(X, Y) U12(X, mark(Y)) => U12(X, Y) U12(active(X), Y) => U12(X, Y) U12(X, active(Y)) => U12(X, Y) s(mark(X)) => s(X) s(active(X)) => s(X) length(mark(X)) => length(X) length(active(X)) => length(X) U21(mark(X), Y, Z, U) => U21(X, Y, Z, U) U21(X, mark(Y), Z, U) => U21(X, Y, Z, U) U21(X, Y, mark(Z), U) => U21(X, Y, Z, U) U21(X, Y, Z, mark(U)) => U21(X, Y, Z, U) U21(active(X), Y, Z, U) => U21(X, Y, Z, U) U21(X, active(Y), Z, U) => U21(X, Y, Z, U) U21(X, Y, active(Z), U) => U21(X, Y, Z, U) U21(X, Y, Z, active(U)) => U21(X, Y, Z, U) U22(mark(X), Y, Z, U) => U22(X, Y, Z, U) U22(X, mark(Y), Z, U) => U22(X, Y, Z, U) U22(X, Y, mark(Z), U) => U22(X, Y, Z, U) U22(X, Y, Z, mark(U)) => U22(X, Y, Z, U) U22(active(X), Y, Z, U) => U22(X, Y, Z, U) U22(X, active(Y), Z, U) => U22(X, Y, Z, U) U22(X, Y, active(Z), U) => U22(X, Y, Z, U) U22(X, Y, Z, active(U)) => U22(X, Y, Z, U) U23(mark(X), Y, Z, U) => U23(X, Y, Z, U) U23(X, mark(Y), Z, U) => U23(X, Y, Z, U) U23(X, Y, mark(Z), U) => U23(X, Y, Z, U) U23(X, Y, Z, mark(U)) => U23(X, Y, Z, U) U23(active(X), Y, Z, U) => U23(X, Y, Z, U) U23(X, active(Y), Z, U) => U23(X, Y, Z, U) U23(X, Y, active(Z), U) => U23(X, Y, Z, U) U23(X, Y, Z, active(U)) => U23(X, Y, Z, U) take(mark(X), Y) => take(X, Y) take(X, mark(Y)) => take(X, Y) take(active(X), Y) => take(X, Y) take(X, active(Y)) => take(X, Y)