/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 and : [o * o] --> o false : [] --> o greaterZero : [o] --> o minus : [o * o] --> o minusT : [o * o] --> o neg : [o] --> o negate : [o] --> o notZero : [o] --> o plusNat : [o * o] --> o pos : [o] --> o s : [o] --> o true : [] --> o while : [o * o * o] --> o notZero(pos(s(X))) => true notZero(neg(s(X))) => true notZero(neg(0)) => false notZero(pos(0)) => false greaterZero(pos(s(X))) => true greaterZero(pos(0)) => false greaterZero(neg(X)) => false and(false, false) => false and(false, true) => false and(true, false) => false and(true, true) => true minusT(0, X) => neg(X) minusT(X, 0) => pos(X) minusT(s(X), s(Y)) => minusT(X, Y) plusNat(0, X) => X plusNat(s(X), Y) => plusNat(X, s(Y)) negate(pos(X)) => neg(X) negate(neg(X)) => pos(X) minus(pos(X), pos(Y)) => minusT(X, Y) minus(neg(X), neg(Y)) => negate(minusT(X, Y)) minus(pos(X), neg(Y)) => pos(plusNat(X, Y)) minus(neg(X), pos(Y)) => neg(plusNat(X, Y)) while(true, X, Y) => while(and(notZero(Y), greaterZero(X)), minus(X, Y), Y)