/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 a!6220!6220filter : [o * o] --> o a!6220!6220from : [o] --> o a!6220!6220head : [o] --> o a!6220!6220if : [o * o * o] --> o a!6220!6220primes : [] --> o a!6220!6220sieve : [o] --> o a!6220!6220tail : [o] --> o cons : [o * o] --> o divides : [o * o] --> o false : [] --> o filter : [o * o] --> o from : [o] --> o head : [o] --> o if : [o * o * o] --> o mark : [o] --> o primes : [] --> o s : [o] --> o sieve : [o] --> o tail : [o] --> o true : [] --> o a!6220!6220primes => a!6220!6220sieve(a!6220!6220from(s(s(0)))) a!6220!6220from(X) => cons(mark(X), from(s(X))) a!6220!6220head(cons(X, Y)) => mark(X) a!6220!6220tail(cons(X, Y)) => mark(Y) a!6220!6220if(true, X, Y) => mark(X) a!6220!6220if(false, X, Y) => mark(Y) a!6220!6220filter(s(s(X)), cons(Y, Z)) => a!6220!6220if(divides(s(s(mark(X))), mark(Y)), filter(s(s(X)), Z), cons(Y, filter(X, sieve(Y)))) a!6220!6220sieve(cons(X, Y)) => cons(mark(X), filter(X, sieve(Y))) mark(primes) => a!6220!6220primes mark(sieve(X)) => a!6220!6220sieve(mark(X)) mark(from(X)) => a!6220!6220from(mark(X)) mark(head(X)) => a!6220!6220head(mark(X)) mark(tail(X)) => a!6220!6220tail(mark(X)) mark(if(X, Y, Z)) => a!6220!6220if(mark(X), Y, Z) mark(filter(X, Y)) => a!6220!6220filter(mark(X), mark(Y)) mark(s(X)) => s(mark(X)) mark(0) => 0 mark(cons(X, Y)) => cons(mark(X), Y) mark(true) => true mark(false) => false mark(divides(X, Y)) => divides(mark(X), mark(Y)) a!6220!6220primes => primes a!6220!6220sieve(X) => sieve(X) a!6220!6220from(X) => from(X) a!6220!6220head(X) => head(X) a!6220!6220tail(X) => tail(X) a!6220!6220if(X, Y, Z) => if(X, Y, Z) a!6220!6220filter(X, Y) => filter(X, Y)