/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 empty : [o] --> o false : [] --> o head : [o] --> o if!6220int : [o * o * o * o] --> o if!6220intlist : [o * o] --> o if1 : [o * o * o] --> o if2 : [o * o * o] --> o int : [o * o] --> o intlist : [o] --> o nil : [] --> o p : [o] --> o s : [o] --> o tail : [o] --> o true : [] --> o zero : [o] --> o empty(nil) => true empty(cons(X, Y)) => false tail(nil) => nil tail(cons(X, Y)) => Y head(cons(X, Y)) => X zero(0) => true zero(s(X)) => false p(0) => 0 p(s(0)) => 0 p(s(s(X))) => s(p(s(X))) intlist(X) => if!6220intlist(empty(X), X) if!6220intlist(true, X) => nil if!6220intlist(false, X) => cons(s(head(X)), intlist(tail(X))) int(X, Y) => if!6220int(zero(X), zero(Y), X, Y) if!6220int(true, X, Y, Z) => if1(X, Y, Z) if!6220int(false, X, Y, Z) => if2(X, Y, Z) if1(true, X, Y) => cons(0, nil) if1(false, X, Y) => cons(0, int(s(0), Y)) if2(true, X, Y) => nil if2(false, X, Y) => intlist(int(p(X), p(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 : [] --> zf cons : [zf * zf] --> zf empty : [zf] --> wd false : [] --> wd head : [zf] --> zf if!6220int : [wd * wd * zf * zf] --> zf if!6220intlist : [wd * zf] --> zf if1 : [wd * zf * zf] --> zf if2 : [wd * zf * zf] --> zf int : [zf * zf] --> zf intlist : [zf] --> zf nil : [] --> zf p : [zf] --> zf s : [zf] --> zf tail : [zf] --> zf true : [] --> wd zero : [zf] --> wd +++ 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.