/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 U11 : [o * o] --> o U12 : [o * o] --> o U13 : [o] --> o U21 : [o * o] --> o U22 : [o * o] --> o U23 : [o] --> o U31 : [o * o] --> o U32 : [o * o] --> o U33 : [o] --> o U41 : [o * o * o] --> o U42 : [o * o * o] --> o U43 : [o * o * o] --> o U44 : [o * o * o] --> o U45 : [o * o] --> o U46 : [o] --> o U51 : [o * o] --> o U52 : [o] --> o U61 : [o] --> o U71 : [o] --> o U81 : [o * o * o] --> o U82 : [o * o * o] --> o U83 : [o * o * o] --> o U84 : [o * o * o] --> o U85 : [o * o] --> o U86 : [o] --> o U91 : [o * o * o] --> o U92 : [o * o * o] --> o U93 : [o * o * o] --> o U94 : [o * o] --> o active : [o] --> o cons : [o * o] --> o isNat : [o] --> o isNatIList : [o] --> o isNatIListKind : [o] --> o isNatKind : [o] --> o isNatList : [o] --> o length : [o] --> o mark : [o] --> o nil : [] --> o ok : [o] --> o proper : [o] --> o s : [o] --> o top : [o] --> o tt : [] --> o zeros : [] --> o active(zeros) => mark(cons(0, zeros)) active(U11(tt, X)) => mark(U12(isNatIListKind(X), X)) active(U12(tt, X)) => mark(U13(isNatList(X))) active(U13(tt)) => mark(tt) active(U21(tt, X)) => mark(U22(isNatKind(X), X)) active(U22(tt, X)) => mark(U23(isNat(X))) active(U23(tt)) => mark(tt) active(U31(tt, X)) => mark(U32(isNatIListKind(X), X)) active(U32(tt, X)) => mark(U33(isNatList(X))) active(U33(tt)) => mark(tt) active(U41(tt, X, Y)) => mark(U42(isNatKind(X), X, Y)) active(U42(tt, X, Y)) => mark(U43(isNatIListKind(Y), X, Y)) active(U43(tt, X, Y)) => mark(U44(isNatIListKind(Y), X, Y)) active(U44(tt, X, Y)) => mark(U45(isNat(X), Y)) active(U45(tt, X)) => mark(U46(isNatIList(X))) active(U46(tt)) => mark(tt) active(U51(tt, X)) => mark(U52(isNatIListKind(X))) active(U52(tt)) => mark(tt) active(U61(tt)) => mark(tt) active(U71(tt)) => mark(tt) active(U81(tt, X, Y)) => mark(U82(isNatKind(X), X, Y)) active(U82(tt, X, Y)) => mark(U83(isNatIListKind(Y), X, Y)) active(U83(tt, X, Y)) => mark(U84(isNatIListKind(Y), X, Y)) active(U84(tt, X, Y)) => mark(U85(isNat(X), Y)) active(U85(tt, X)) => mark(U86(isNatList(X))) active(U86(tt)) => mark(tt) active(U91(tt, X, Y)) => mark(U92(isNatIListKind(X), X, Y)) active(U92(tt, X, Y)) => mark(U93(isNat(Y), X, Y)) active(U93(tt, X, Y)) => mark(U94(isNatKind(Y), X)) active(U94(tt, X)) => mark(s(length(X))) active(isNat(0)) => mark(tt) active(isNat(length(X))) => mark(U11(isNatIListKind(X), X)) active(isNat(s(X))) => mark(U21(isNatKind(X), X)) active(isNatIList(X)) => mark(U31(isNatIListKind(X), X)) active(isNatIList(zeros)) => mark(tt) active(isNatIList(cons(X, Y))) => mark(U41(isNatKind(X), X, Y)) active(isNatIListKind(nil)) => mark(tt) active(isNatIListKind(zeros)) => mark(tt) active(isNatIListKind(cons(X, Y))) => mark(U51(isNatKind(X), Y)) active(isNatKind(0)) => mark(tt) active(isNatKind(length(X))) => mark(U61(isNatIListKind(X))) active(isNatKind(s(X))) => mark(U71(isNatKind(X))) active(isNatList(nil)) => mark(tt) active(isNatList(cons(X, Y))) => mark(U81(isNatKind(X), X, Y)) active(length(nil)) => mark(0) active(length(cons(X, Y))) => mark(U91(isNatList(Y), Y, X)) active(cons(X, Y)) => cons(active(X), Y) active(U11(X, Y)) => U11(active(X), Y) active(U12(X, Y)) => U12(active(X), Y) active(U13(X)) => U13(active(X)) active(U21(X, Y)) => U21(active(X), Y) active(U22(X, Y)) => U22(active(X), Y) active(U23(X)) => U23(active(X)) active(U31(X, Y)) => U31(active(X), Y) active(U32(X, Y)) => U32(active(X), Y) active(U33(X)) => U33(active(X)) active(U41(X, Y, Z)) => U41(active(X), Y, Z) active(U42(X, Y, Z)) => U42(active(X), Y, Z) active(U43(X, Y, Z)) => U43(active(X), Y, Z) active(U44(X, Y, Z)) => U44(active(X), Y, Z) active(U45(X, Y)) => U45(active(X), Y) active(U46(X)) => U46(active(X)) active(U51(X, Y)) => U51(active(X), Y) active(U52(X)) => U52(active(X)) active(U61(X)) => U61(active(X)) active(U71(X)) => U71(active(X)) active(U81(X, Y, Z)) => U81(active(X), Y, Z) active(U82(X, Y, Z)) => U82(active(X), Y, Z) active(U83(X, Y, Z)) => U83(active(X), Y, Z) active(U84(X, Y, Z)) => U84(active(X), Y, Z) active(U85(X, Y)) => U85(active(X), Y) active(U86(X)) => U86(active(X)) active(U91(X, Y, Z)) => U91(active(X), Y, Z) active(U92(X, Y, Z)) => U92(active(X), Y, Z) active(U93(X, Y, Z)) => U93(active(X), Y, Z) active(U94(X, Y)) => U94(active(X), Y) active(s(X)) => s(active(X)) active(length(X)) => length(active(X)) cons(mark(X), Y) => mark(cons(X, Y)) U11(mark(X), Y) => mark(U11(X, Y)) U12(mark(X), Y) => mark(U12(X, Y)) U13(mark(X)) => mark(U13(X)) U21(mark(X), Y) => mark(U21(X, Y)) U22(mark(X), Y) => mark(U22(X, Y)) U23(mark(X)) => mark(U23(X)) U31(mark(X), Y) => mark(U31(X, Y)) U32(mark(X), Y) => mark(U32(X, Y)) U33(mark(X)) => mark(U33(X)) U41(mark(X), Y, Z) => mark(U41(X, Y, Z)) U42(mark(X), Y, Z) => mark(U42(X, Y, Z)) U43(mark(X), Y, Z) => mark(U43(X, Y, Z)) U44(mark(X), Y, Z) => mark(U44(X, Y, Z)) U45(mark(X), Y) => mark(U45(X, Y)) U46(mark(X)) => mark(U46(X)) U51(mark(X), Y) => mark(U51(X, Y)) U52(mark(X)) => mark(U52(X)) U61(mark(X)) => mark(U61(X)) U71(mark(X)) => mark(U71(X)) U81(mark(X), Y, Z) => mark(U81(X, Y, Z)) U82(mark(X), Y, Z) => mark(U82(X, Y, Z)) U83(mark(X), Y, Z) => mark(U83(X, Y, Z)) U84(mark(X), Y, Z) => mark(U84(X, Y, Z)) U85(mark(X), Y) => mark(U85(X, Y)) U86(mark(X)) => mark(U86(X)) U91(mark(X), Y, Z) => mark(U91(X, Y, Z)) U92(mark(X), Y, Z) => mark(U92(X, Y, Z)) U93(mark(X), Y, Z) => mark(U93(X, Y, Z)) U94(mark(X), Y) => mark(U94(X, Y)) s(mark(X)) => mark(s(X)) length(mark(X)) => mark(length(X)) proper(zeros) => ok(zeros) proper(cons(X, Y)) => cons(proper(X), proper(Y)) proper(0) => ok(0) proper(U11(X, Y)) => U11(proper(X), proper(Y)) proper(tt) => ok(tt) proper(U12(X, Y)) => U12(proper(X), proper(Y)) proper(isNatIListKind(X)) => isNatIListKind(proper(X)) proper(U13(X)) => U13(proper(X)) proper(isNatList(X)) => isNatList(proper(X)) proper(U21(X, Y)) => U21(proper(X), proper(Y)) proper(U22(X, Y)) => U22(proper(X), proper(Y)) proper(isNatKind(X)) => isNatKind(proper(X)) proper(U23(X)) => U23(proper(X)) proper(isNat(X)) => isNat(proper(X)) proper(U31(X, Y)) => U31(proper(X), proper(Y)) proper(U32(X, Y)) => U32(proper(X), proper(Y)) proper(U33(X)) => U33(proper(X)) proper(U41(X, Y, Z)) => U41(proper(X), proper(Y), proper(Z)) proper(U42(X, Y, Z)) => U42(proper(X), proper(Y), proper(Z)) proper(U43(X, Y, Z)) => U43(proper(X), proper(Y), proper(Z)) proper(U44(X, Y, Z)) => U44(proper(X), proper(Y), proper(Z)) proper(U45(X, Y)) => U45(proper(X), proper(Y)) proper(U46(X)) => U46(proper(X)) proper(isNatIList(X)) => isNatIList(proper(X)) proper(U51(X, Y)) => U51(proper(X), proper(Y)) proper(U52(X)) => U52(proper(X)) proper(U61(X)) => U61(proper(X)) proper(U71(X)) => U71(proper(X)) proper(U81(X, Y, Z)) => U81(proper(X), proper(Y), proper(Z)) proper(U82(X, Y, Z)) => U82(proper(X), proper(Y), proper(Z)) proper(U83(X, Y, Z)) => U83(proper(X), proper(Y), proper(Z)) proper(U84(X, Y, Z)) => U84(proper(X), proper(Y), proper(Z)) proper(U85(X, Y)) => U85(proper(X), proper(Y)) proper(U86(X)) => U86(proper(X)) proper(U91(X, Y, Z)) => U91(proper(X), proper(Y), proper(Z)) proper(U92(X, Y, Z)) => U92(proper(X), proper(Y), proper(Z)) proper(U93(X, Y, Z)) => U93(proper(X), proper(Y), proper(Z)) proper(U94(X, Y)) => U94(proper(X), proper(Y)) proper(s(X)) => s(proper(X)) proper(length(X)) => length(proper(X)) proper(nil) => ok(nil) cons(ok(X), ok(Y)) => ok(cons(X, Y)) U11(ok(X), ok(Y)) => ok(U11(X, Y)) U12(ok(X), ok(Y)) => ok(U12(X, Y)) isNatIListKind(ok(X)) => ok(isNatIListKind(X)) U13(ok(X)) => ok(U13(X)) isNatList(ok(X)) => ok(isNatList(X)) U21(ok(X), ok(Y)) => ok(U21(X, Y)) U22(ok(X), ok(Y)) => ok(U22(X, Y)) isNatKind(ok(X)) => ok(isNatKind(X)) U23(ok(X)) => ok(U23(X)) isNat(ok(X)) => ok(isNat(X)) U31(ok(X), ok(Y)) => ok(U31(X, Y)) U32(ok(X), ok(Y)) => ok(U32(X, Y)) U33(ok(X)) => ok(U33(X)) U41(ok(X), ok(Y), ok(Z)) => ok(U41(X, Y, Z)) U42(ok(X), ok(Y), ok(Z)) => ok(U42(X, Y, Z)) U43(ok(X), ok(Y), ok(Z)) => ok(U43(X, Y, Z)) U44(ok(X), ok(Y), ok(Z)) => ok(U44(X, Y, Z)) U45(ok(X), ok(Y)) => ok(U45(X, Y)) U46(ok(X)) => ok(U46(X)) isNatIList(ok(X)) => ok(isNatIList(X)) U51(ok(X), ok(Y)) => ok(U51(X, Y)) U52(ok(X)) => ok(U52(X)) U61(ok(X)) => ok(U61(X)) U71(ok(X)) => ok(U71(X)) U81(ok(X), ok(Y), ok(Z)) => ok(U81(X, Y, Z)) U82(ok(X), ok(Y), ok(Z)) => ok(U82(X, Y, Z)) U83(ok(X), ok(Y), ok(Z)) => ok(U83(X, Y, Z)) U84(ok(X), ok(Y), ok(Z)) => ok(U84(X, Y, Z)) U85(ok(X), ok(Y)) => ok(U85(X, Y)) U86(ok(X)) => ok(U86(X)) U91(ok(X), ok(Y), ok(Z)) => ok(U91(X, Y, Z)) U92(ok(X), ok(Y), ok(Z)) => ok(U92(X, Y, Z)) U93(ok(X), ok(Y), ok(Z)) => ok(U93(X, Y, Z)) U94(ok(X), ok(Y)) => ok(U94(X, Y)) s(ok(X)) => ok(s(X)) length(ok(X)) => ok(length(X)) top(mark(X)) => top(proper(X)) top(ok(X)) => top(active(X))