/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 : [] --> o append : [o * o] --> o appendAkk : [o * o] --> o cons : [o * o] --> o eq : [o * o] --> o f : [o * o] --> o false : [] --> o length : [o] --> o nil : [] --> o reverse : [o] --> o s : [o] --> o true : [] --> o f(true, X) => f(eq(s(length(X)), length(cons(a, X))), append(cons(a, nil), X)) length(nil) => 0 length(cons(X, Y)) => s(length(Y)) eq(0, 0) => true eq(s(X), 0) => false eq(0, s(X)) => false eq(s(X), s(Y)) => eq(X, Y) append(X, Y) => appendAkk(reverse(X), Y) appendAkk(nil, X) => X appendAkk(cons(X, Y), Z) => appendAkk(Y, cons(X, Z)) reverse(nil) => nil reverse(cons(X, Y)) => append(reverse(Y), cons(X, nil)) 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 : [] --> yb a : [] --> yb append : [sd * sd] --> sd appendAkk : [sd * sd] --> sd cons : [yb * sd] --> sd eq : [yb * yb] --> cc f : [cc * sd] --> ma false : [] --> cc length : [sd] --> yb nil : [] --> sd reverse : [sd] --> sd s : [yb] --> yb true : [] --> cc +++ 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.