/export/starexec/sandbox/solver/bin/starexec_run_FirstOrder /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- MAYBE We consider the system theBenchmark. We are asked to determine termination of the following first-order TRS. 0 : [] --> o 2ndsneg : [o * o] --> o 2ndspos : [o * o] --> o a!6220!62202ndsneg : [o * o] --> o a!6220!62202ndspos : [o * o] --> o a!6220!6220from : [o] --> o a!6220!6220pi : [o] --> o a!6220!6220plus : [o * o] --> o a!6220!6220square : [o] --> o a!6220!6220times : [o * o] --> o cons : [o * o] --> o from : [o] --> o mark : [o] --> o negrecip : [o] --> o nil : [] --> o pi : [o] --> o plus : [o * o] --> o posrecip : [o] --> o rcons : [o * o] --> o rnil : [] --> o s : [o] --> o square : [o] --> o times : [o * o] --> o a!6220!6220from(X) => cons(mark(X), from(s(X))) a!6220!62202ndspos(0, X) => rnil a!6220!62202ndspos(s(X), cons(Y, cons(Z, U))) => rcons(posrecip(mark(Z)), a!6220!62202ndsneg(mark(X), mark(U))) a!6220!62202ndsneg(0, X) => rnil a!6220!62202ndsneg(s(X), cons(Y, cons(Z, U))) => rcons(negrecip(mark(Z)), a!6220!62202ndspos(mark(X), mark(U))) a!6220!6220pi(X) => a!6220!62202ndspos(mark(X), a!6220!6220from(0)) a!6220!6220plus(0, X) => mark(X) a!6220!6220plus(s(X), Y) => s(a!6220!6220plus(mark(X), mark(Y))) a!6220!6220times(0, X) => 0 a!6220!6220times(s(X), Y) => a!6220!6220plus(mark(Y), a!6220!6220times(mark(X), mark(Y))) a!6220!6220square(X) => a!6220!6220times(mark(X), mark(X)) mark(from(X)) => a!6220!6220from(mark(X)) mark(2ndspos(X, Y)) => a!6220!62202ndspos(mark(X), mark(Y)) mark(2ndsneg(X, Y)) => a!6220!62202ndsneg(mark(X), mark(Y)) mark(pi(X)) => a!6220!6220pi(mark(X)) mark(plus(X, Y)) => a!6220!6220plus(mark(X), mark(Y)) mark(times(X, Y)) => a!6220!6220times(mark(X), mark(Y)) mark(square(X)) => a!6220!6220square(mark(X)) mark(0) => 0 mark(s(X)) => s(mark(X)) mark(posrecip(X)) => posrecip(mark(X)) mark(negrecip(X)) => negrecip(mark(X)) mark(nil) => nil mark(cons(X, Y)) => cons(mark(X), Y) mark(rnil) => rnil mark(rcons(X, Y)) => rcons(mark(X), mark(Y)) a!6220!6220from(X) => from(X) a!6220!62202ndspos(X, Y) => 2ndspos(X, Y) a!6220!62202ndsneg(X, Y) => 2ndsneg(X, Y) a!6220!6220pi(X) => pi(X) a!6220!6220plus(X, Y) => plus(X, Y) a!6220!6220times(X, Y) => times(X, Y) a!6220!6220square(X) => square(X)