/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 cons : [o * o] --> o conv : [o] --> o conviter : [o * o] --> o false : [] --> o half : [o] --> o if : [o * o * o] --> o lastbit : [o] --> o nil : [] --> o s : [o] --> o true : [] --> o zero : [o] --> o half(0) => 0 half(s(0)) => 0 half(s(s(X))) => s(half(X)) lastbit(0) => 0 lastbit(s(0)) => s(0) lastbit(s(s(X))) => lastbit(X) zero(0) => true zero(s(X)) => false conv(X) => conviter(X, cons(0, nil)) conviter(X, Y) => if(zero(X), X, Y) if(true, X, Y) => Y if(false, X, Y) => conviter(half(X), cons(lastbit(X), 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 : [] --> vc cons : [vc * yc] --> yc conv : [vc] --> yc conviter : [vc * yc] --> yc false : [] --> dc half : [vc] --> vc if : [dc * vc * yc] --> yc lastbit : [vc] --> vc nil : [] --> yc s : [vc] --> vc true : [] --> dc zero : [vc] --> dc +++ 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.