/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 active : [o] --> o and : [o * o] --> o cons : [o * o] --> o isNat : [o] --> o isNatIList : [o] --> o isNatList : [o] --> o length : [o] --> o mark : [o] --> o nil : [] --> o ok : [o] --> o proper : [o] --> o s : [o] --> o top : [o] --> o tt : [] --> o zeros : [] --> o active(zeros) => mark(cons(0, zeros)) active(U11(tt, X)) => mark(s(length(X))) active(and(tt, X)) => mark(X) active(isNat(0)) => mark(tt) active(isNat(length(X))) => mark(isNatList(X)) active(isNat(s(X))) => mark(isNat(X)) active(isNatIList(X)) => mark(isNatList(X)) active(isNatIList(zeros)) => mark(tt) active(isNatIList(cons(X, Y))) => mark(and(isNat(X), isNatIList(Y))) active(isNatList(nil)) => mark(tt) active(isNatList(cons(X, Y))) => mark(and(isNat(X), isNatList(Y))) active(length(nil)) => mark(0) active(length(cons(X, Y))) => mark(U11(and(isNatList(Y), isNat(X)), Y)) active(cons(X, Y)) => cons(active(X), Y) active(U11(X, Y)) => U11(active(X), Y) active(s(X)) => s(active(X)) active(length(X)) => length(active(X)) active(and(X, Y)) => and(active(X), Y) cons(mark(X), Y) => mark(cons(X, Y)) U11(mark(X), Y) => mark(U11(X, Y)) s(mark(X)) => mark(s(X)) length(mark(X)) => mark(length(X)) and(mark(X), Y) => mark(and(X, Y)) proper(zeros) => ok(zeros) proper(cons(X, Y)) => cons(proper(X), proper(Y)) proper(0) => ok(0) proper(U11(X, Y)) => U11(proper(X), proper(Y)) proper(tt) => ok(tt) proper(s(X)) => s(proper(X)) proper(length(X)) => length(proper(X)) proper(and(X, Y)) => and(proper(X), proper(Y)) proper(isNat(X)) => isNat(proper(X)) proper(isNatList(X)) => isNatList(proper(X)) proper(isNatIList(X)) => isNatIList(proper(X)) proper(nil) => ok(nil) cons(ok(X), ok(Y)) => ok(cons(X, Y)) U11(ok(X), ok(Y)) => ok(U11(X, Y)) s(ok(X)) => ok(s(X)) length(ok(X)) => ok(length(X)) and(ok(X), ok(Y)) => ok(and(X, Y)) isNat(ok(X)) => ok(isNat(X)) isNatList(ok(X)) => ok(isNatList(X)) isNatIList(ok(X)) => ok(isNatIList(X)) top(mark(X)) => top(proper(X)) top(ok(X)) => top(active(X))