/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 and : [o * o] --> o edge : [o * o * o] --> o empty : [] --> o eq : [o * o] --> o false : [] --> o if1 : [o * o * o * o * o * o] --> o if2 : [o * o * o * o * o * o] --> o le : [o * o] --> o or : [o * o] --> o reach : [o * o * o * o * o] --> o reachable : [o * o * o] --> o s : [o] --> o size : [o] --> o true : [] --> o eq(0, 0) => true eq(0, s(X)) => false eq(s(X), 0) => false eq(s(X), s(Y)) => eq(X, Y) or(true, X) => true or(false, X) => X and(true, X) => X and(false, X) => false size(empty) => 0 size(edge(X, Y, Z)) => s(size(Z)) le(0, X) => true le(s(X), 0) => false le(s(X), s(Y)) => le(X, Y) reachable(X, Y, Z) => reach(X, Y, 0, Z, Z) reach(X, Y, Z, U, V) => if1(eq(X, Y), X, Y, Z, U, V) if1(true, X, Y, Z, U, V) => true if1(false, X, Y, Z, U, V) => if2(le(Z, size(V)), X, Y, Z, U, V) if2(false, X, Y, Z, U, V) => false if2(true, X, Y, Z, empty, U) => false if2(true, X, Y, Z, edge(U, V, W), Q) => or(if2(true, X, Y, Z, W, Q), and(eq(X, U), reach(V, Y, s(Z), Q, Q))) 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 : [] --> nh and : [nh * nh] --> nh edge : [nh * nh * sg] --> sg empty : [] --> sg eq : [nh * nh] --> nh false : [] --> nh if1 : [nh * nh * nh * nh * sg * sg] --> nh if2 : [nh * nh * nh * nh * sg * sg] --> nh le : [nh * nh] --> nh or : [nh * nh] --> nh reach : [nh * nh * nh * sg * sg] --> nh reachable : [nh * nh * sg] --> nh s : [nh] --> nh size : [sg] --> nh true : [] --> nh +++ 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.