/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 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 primes : [] --> o s : [o] --> o sieve : [o] --> o tail : [o] --> o true : [] --> o primes => sieve(from(s(s(0)))) from(X) => cons(X, from(s(X))) head(cons(X, Y)) => X tail(cons(X, Y)) => Y if(true, X, Y) => X if(false, X, Y) => Y filter(s(s(X)), cons(Y, Z)) => if(divides(s(s(X)), Y), filter(s(s(X)), Z), cons(Y, filter(X, sieve(Y)))) sieve(cons(X, Y)) => cons(X, filter(X, sieve(Y))) As the system is orthogonal, it is terminating if it is innermost terminating by [Gra95]. Then, by [FuhGieParSchSwi11], it suffices to prove (innermost) termination of the typed system, with sort annotations chosen to respect the rules, as follows: 0 : [] --> tc cons : [tc * tc] --> tc divides : [tc * tc] --> wb false : [] --> wb filter : [tc * tc] --> tc from : [tc] --> tc head : [tc] --> tc if : [wb * tc * tc] --> tc primes : [] --> tc s : [tc] --> tc sieve : [tc] --> tc tail : [tc] --> tc true : [] --> wb +++ Citations +++ [FuhGieParSchSwi11] C. Fuhs, J. Giesl, M. Parting, P. Schneider-Kamp, and S. Swiderski. Proving Termination by Dependency Pairs and Inductive Theorem Proving. In volume 47(2) of Journal of Automated Reasoning. 133--160, 2011. [Gra95] B. Gramlich. Abstract Relations Between Restricted Termination and Confluence Properties of Rewrite Systems. In volume 24(1-2) of Fundamentae Informaticae. 3--23, 1995.