/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 U101 : [o * o] --> o U102 : [o] --> o U11 : [o * o * o] --> o U111 : [o] --> o U12 : [o * o * o] --> o U121 : [o] --> o U131 : [o * o] --> o U132 : [o] --> o U141 : [o * o] --> o U142 : [o] --> o U151 : [o * o] --> o U152 : [o] --> o U161 : [o * o] --> o U171 : [o * o * o] --> o U172 : [o * o * o] --> o U181 : [o * o] --> o U182 : [o * o] --> o U191 : [o * o] --> o U201 : [o * o * o * o] --> o U202 : [o * o * o * o] --> o U203 : [o * o * o * o] --> o U204 : [o * o] --> o U21 : [o * o * o] --> o U211 : [o * o] --> o U212 : [o * o] --> o U22 : [o * o] --> o U221 : [o * o * o] --> o U222 : [o * o * o] --> o U31 : [o * o * o] --> o U32 : [o * o] --> o U41 : [o * o] --> o U42 : [o] --> o U51 : [o * o] --> o U52 : [o] --> o U61 : [o] --> o U71 : [o] --> o U81 : [o] --> o U91 : [o] --> o a!6220!6220U101 : [o * o] --> o a!6220!6220U102 : [o] --> o a!6220!6220U11 : [o * o * o] --> o a!6220!6220U111 : [o] --> o a!6220!6220U12 : [o * o * o] --> o a!6220!6220U121 : [o] --> o a!6220!6220U131 : [o * o] --> o a!6220!6220U132 : [o] --> o a!6220!6220U141 : [o * o] --> o a!6220!6220U142 : [o] --> o a!6220!6220U151 : [o * o] --> o a!6220!6220U152 : [o] --> o a!6220!6220U161 : [o * o] --> o a!6220!6220U171 : [o * o * o] --> o a!6220!6220U172 : [o * o * o] --> o a!6220!6220U181 : [o * o] --> o a!6220!6220U182 : [o * o] --> o a!6220!6220U191 : [o * o] --> o a!6220!6220U201 : [o * o * o * o] --> o a!6220!6220U202 : [o * o * o * o] --> o a!6220!6220U203 : [o * o * o * o] --> o a!6220!6220U204 : [o * o] --> o a!6220!6220U21 : [o * o * o] --> o a!6220!6220U211 : [o * o] --> o a!6220!6220U212 : [o * o] --> o a!6220!6220U22 : [o * o] --> o a!6220!6220U221 : [o * o * o] --> o a!6220!6220U222 : [o * o * o] --> o a!6220!6220U31 : [o * o * o] --> o a!6220!6220U32 : [o * o] --> o a!6220!6220U41 : [o * o] --> o a!6220!6220U42 : [o] --> o a!6220!6220U51 : [o * o] --> o a!6220!6220U52 : [o] --> o a!6220!6220U61 : [o] --> o a!6220!6220U71 : [o] --> o a!6220!6220U81 : [o] --> o a!6220!6220U91 : [o] --> o a!6220!6220afterNth : [o * o] --> o a!6220!6220fst : [o] --> o a!6220!6220head : [o] --> o a!6220!6220isLNat : [o] --> o a!6220!6220isNatural : [o] --> o a!6220!6220isPLNat : [o] --> o a!6220!6220natsFrom : [o] --> o a!6220!6220sel : [o * o] --> o a!6220!6220snd : [o] --> o a!6220!6220splitAt : [o * o] --> o a!6220!6220tail : [o] --> o a!6220!6220take : [o * o] --> o afterNth : [o * o] --> o cons : [o * o] --> o fst : [o] --> o head : [o] --> o isLNat : [o] --> o isNatural : [o] --> o isPLNat : [o] --> o mark : [o] --> o natsFrom : [o] --> o nil : [] --> o pair : [o * o] --> o s : [o] --> o sel : [o * o] --> o snd : [o] --> o splitAt : [o * o] --> o tail : [o] --> o take : [o * o] --> o tt : [] --> o a!6220!6220U101(tt, X) => a!6220!6220U102(a!6220!6220isLNat(X)) a!6220!6220U102(tt) => tt a!6220!6220U11(tt, X, Y) => a!6220!6220U12(a!6220!6220isLNat(Y), X, Y) a!6220!6220U111(tt) => tt a!6220!6220U12(tt, X, Y) => a!6220!6220snd(a!6220!6220splitAt(mark(X), mark(Y))) a!6220!6220U121(tt) => tt a!6220!6220U131(tt, X) => a!6220!6220U132(a!6220!6220isLNat(X)) a!6220!6220U132(tt) => tt a!6220!6220U141(tt, X) => a!6220!6220U142(a!6220!6220isLNat(X)) a!6220!6220U142(tt) => tt a!6220!6220U151(tt, X) => a!6220!6220U152(a!6220!6220isLNat(X)) a!6220!6220U152(tt) => tt a!6220!6220U161(tt, X) => cons(mark(X), natsFrom(s(X))) a!6220!6220U171(tt, X, Y) => a!6220!6220U172(a!6220!6220isLNat(Y), X, Y) a!6220!6220U172(tt, X, Y) => a!6220!6220head(a!6220!6220afterNth(mark(X), mark(Y))) a!6220!6220U181(tt, X) => a!6220!6220U182(a!6220!6220isLNat(X), X) a!6220!6220U182(tt, X) => mark(X) a!6220!6220U191(tt, X) => pair(nil, mark(X)) a!6220!6220U201(tt, X, Y, Z) => a!6220!6220U202(a!6220!6220isNatural(Y), X, Y, Z) a!6220!6220U202(tt, X, Y, Z) => a!6220!6220U203(a!6220!6220isLNat(Z), X, Y, Z) a!6220!6220U203(tt, X, Y, Z) => a!6220!6220U204(a!6220!6220splitAt(mark(X), mark(Z)), Y) a!6220!6220U204(pair(X, Y), Z) => pair(cons(mark(Z), X), mark(Y)) a!6220!6220U21(tt, X, Y) => a!6220!6220U22(a!6220!6220isLNat(Y), X) a!6220!6220U211(tt, X) => a!6220!6220U212(a!6220!6220isLNat(X), X) a!6220!6220U212(tt, X) => mark(X) a!6220!6220U22(tt, X) => mark(X) a!6220!6220U221(tt, X, Y) => a!6220!6220U222(a!6220!6220isLNat(Y), X, Y) a!6220!6220U222(tt, X, Y) => a!6220!6220fst(a!6220!6220splitAt(mark(X), mark(Y))) a!6220!6220U31(tt, X, Y) => a!6220!6220U32(a!6220!6220isLNat(Y), X) a!6220!6220U32(tt, X) => mark(X) a!6220!6220U41(tt, X) => a!6220!6220U42(a!6220!6220isLNat(X)) a!6220!6220U42(tt) => tt a!6220!6220U51(tt, X) => a!6220!6220U52(a!6220!6220isLNat(X)) a!6220!6220U52(tt) => tt a!6220!6220U61(tt) => tt a!6220!6220U71(tt) => tt a!6220!6220U81(tt) => tt a!6220!6220U91(tt) => tt a!6220!6220afterNth(X, Y) => a!6220!6220U11(a!6220!6220isNatural(X), X, Y) a!6220!6220fst(pair(X, Y)) => a!6220!6220U21(a!6220!6220isLNat(X), X, Y) a!6220!6220head(cons(X, Y)) => a!6220!6220U31(a!6220!6220isNatural(X), X, Y) a!6220!6220isLNat(nil) => tt a!6220!6220isLNat(afterNth(X, Y)) => a!6220!6220U41(a!6220!6220isNatural(X), Y) a!6220!6220isLNat(cons(X, Y)) => a!6220!6220U51(a!6220!6220isNatural(X), Y) a!6220!6220isLNat(fst(X)) => a!6220!6220U61(a!6220!6220isPLNat(X)) a!6220!6220isLNat(natsFrom(X)) => a!6220!6220U71(a!6220!6220isNatural(X)) a!6220!6220isLNat(snd(X)) => a!6220!6220U81(a!6220!6220isPLNat(X)) a!6220!6220isLNat(tail(X)) => a!6220!6220U91(a!6220!6220isLNat(X)) a!6220!6220isLNat(take(X, Y)) => a!6220!6220U101(a!6220!6220isNatural(X), Y) a!6220!6220isNatural(0) => tt a!6220!6220isNatural(head(X)) => a!6220!6220U111(a!6220!6220isLNat(X)) a!6220!6220isNatural(s(X)) => a!6220!6220U121(a!6220!6220isNatural(X)) a!6220!6220isNatural(sel(X, Y)) => a!6220!6220U131(a!6220!6220isNatural(X), Y) a!6220!6220isPLNat(pair(X, Y)) => a!6220!6220U141(a!6220!6220isLNat(X), Y) a!6220!6220isPLNat(splitAt(X, Y)) => a!6220!6220U151(a!6220!6220isNatural(X), Y) a!6220!6220natsFrom(X) => a!6220!6220U161(a!6220!6220isNatural(X), X) a!6220!6220sel(X, Y) => a!6220!6220U171(a!6220!6220isNatural(X), X, Y) a!6220!6220snd(pair(X, Y)) => a!6220!6220U181(a!6220!6220isLNat(X), Y) a!6220!6220splitAt(0, X) => a!6220!6220U191(a!6220!6220isLNat(X), X) a!6220!6220splitAt(s(X), cons(Y, Z)) => a!6220!6220U201(a!6220!6220isNatural(X), X, Y, Z) a!6220!6220tail(cons(X, Y)) => a!6220!6220U211(a!6220!6220isNatural(X), Y) a!6220!6220take(X, Y) => a!6220!6220U221(a!6220!6220isNatural(X), X, Y) mark(U101(X, Y)) => a!6220!6220U101(mark(X), Y) mark(U102(X)) => a!6220!6220U102(mark(X)) mark(isLNat(X)) => a!6220!6220isLNat(X) mark(U11(X, Y, Z)) => a!6220!6220U11(mark(X), Y, Z) mark(U12(X, Y, Z)) => a!6220!6220U12(mark(X), Y, Z) mark(U111(X)) => a!6220!6220U111(mark(X)) mark(snd(X)) => a!6220!6220snd(mark(X)) mark(splitAt(X, Y)) => a!6220!6220splitAt(mark(X), mark(Y)) mark(U121(X)) => a!6220!6220U121(mark(X)) mark(U131(X, Y)) => a!6220!6220U131(mark(X), Y) mark(U132(X)) => a!6220!6220U132(mark(X)) mark(U141(X, Y)) => a!6220!6220U141(mark(X), Y) mark(U142(X)) => a!6220!6220U142(mark(X)) mark(U151(X, Y)) => a!6220!6220U151(mark(X), Y) mark(U152(X)) => a!6220!6220U152(mark(X)) mark(U161(X, Y)) => a!6220!6220U161(mark(X), Y) mark(natsFrom(X)) => a!6220!6220natsFrom(mark(X)) mark(U171(X, Y, Z)) => a!6220!6220U171(mark(X), Y, Z) mark(U172(X, Y, Z)) => a!6220!6220U172(mark(X), Y, Z) mark(head(X)) => a!6220!6220head(mark(X)) mark(afterNth(X, Y)) => a!6220!6220afterNth(mark(X), mark(Y)) mark(U181(X, Y)) => a!6220!6220U181(mark(X), Y) mark(U182(X, Y)) => a!6220!6220U182(mark(X), Y) mark(U191(X, Y)) => a!6220!6220U191(mark(X), Y) mark(U201(X, Y, Z, U)) => a!6220!6220U201(mark(X), Y, Z, U) mark(U202(X, Y, Z, U)) => a!6220!6220U202(mark(X), Y, Z, U) mark(isNatural(X)) => a!6220!6220isNatural(X) mark(U203(X, Y, Z, U)) => a!6220!6220U203(mark(X), Y, Z, U) mark(U204(X, Y)) => a!6220!6220U204(mark(X), Y) mark(U21(X, Y, Z)) => a!6220!6220U21(mark(X), Y, Z) mark(U22(X, Y)) => a!6220!6220U22(mark(X), Y) mark(U211(X, Y)) => a!6220!6220U211(mark(X), Y) mark(U212(X, Y)) => a!6220!6220U212(mark(X), Y) mark(U221(X, Y, Z)) => a!6220!6220U221(mark(X), Y, Z) mark(U222(X, Y, Z)) => a!6220!6220U222(mark(X), Y, Z) mark(fst(X)) => a!6220!6220fst(mark(X)) mark(U31(X, Y, Z)) => a!6220!6220U31(mark(X), Y, Z) mark(U32(X, Y)) => a!6220!6220U32(mark(X), Y) mark(U41(X, Y)) => a!6220!6220U41(mark(X), Y) mark(U42(X)) => a!6220!6220U42(mark(X)) mark(U51(X, Y)) => a!6220!6220U51(mark(X), Y) mark(U52(X)) => a!6220!6220U52(mark(X)) mark(U61(X)) => a!6220!6220U61(mark(X)) mark(U71(X)) => a!6220!6220U71(mark(X)) mark(U81(X)) => a!6220!6220U81(mark(X)) mark(U91(X)) => a!6220!6220U91(mark(X)) mark(isPLNat(X)) => a!6220!6220isPLNat(X) mark(tail(X)) => a!6220!6220tail(mark(X)) mark(take(X, Y)) => a!6220!6220take(mark(X), mark(Y)) mark(sel(X, Y)) => a!6220!6220sel(mark(X), mark(Y)) mark(tt) => tt mark(cons(X, Y)) => cons(mark(X), Y) mark(s(X)) => s(mark(X)) mark(pair(X, Y)) => pair(mark(X), mark(Y)) mark(nil) => nil mark(0) => 0 a!6220!6220U101(X, Y) => U101(X, Y) a!6220!6220U102(X) => U102(X) a!6220!6220isLNat(X) => isLNat(X) a!6220!6220U11(X, Y, Z) => U11(X, Y, Z) a!6220!6220U12(X, Y, Z) => U12(X, Y, Z) a!6220!6220U111(X) => U111(X) a!6220!6220snd(X) => snd(X) a!6220!6220splitAt(X, Y) => splitAt(X, Y) a!6220!6220U121(X) => U121(X) a!6220!6220U131(X, Y) => U131(X, Y) a!6220!6220U132(X) => U132(X) a!6220!6220U141(X, Y) => U141(X, Y) a!6220!6220U142(X) => U142(X) a!6220!6220U151(X, Y) => U151(X, Y) a!6220!6220U152(X) => U152(X) a!6220!6220U161(X, Y) => U161(X, Y) a!6220!6220natsFrom(X) => natsFrom(X) a!6220!6220U171(X, Y, Z) => U171(X, Y, Z) a!6220!6220U172(X, Y, Z) => U172(X, Y, Z) a!6220!6220head(X) => head(X) a!6220!6220afterNth(X, Y) => afterNth(X, Y) a!6220!6220U181(X, Y) => U181(X, Y) a!6220!6220U182(X, Y) => U182(X, Y) a!6220!6220U191(X, Y) => U191(X, Y) a!6220!6220U201(X, Y, Z, U) => U201(X, Y, Z, U) a!6220!6220U202(X, Y, Z, U) => U202(X, Y, Z, U) a!6220!6220isNatural(X) => isNatural(X) a!6220!6220U203(X, Y, Z, U) => U203(X, Y, Z, U) a!6220!6220U204(X, Y) => U204(X, Y) a!6220!6220U21(X, Y, Z) => U21(X, Y, Z) a!6220!6220U22(X, Y) => U22(X, Y) a!6220!6220U211(X, Y) => U211(X, Y) a!6220!6220U212(X, Y) => U212(X, Y) a!6220!6220U221(X, Y, Z) => U221(X, Y, Z) a!6220!6220U222(X, Y, Z) => U222(X, Y, Z) a!6220!6220fst(X) => fst(X) a!6220!6220U31(X, Y, Z) => U31(X, Y, Z) a!6220!6220U32(X, Y) => U32(X, Y) a!6220!6220U41(X, Y) => U41(X, Y) a!6220!6220U42(X) => U42(X) a!6220!6220U51(X, Y) => U51(X, Y) a!6220!6220U52(X) => U52(X) a!6220!6220U61(X) => U61(X) a!6220!6220U71(X) => U71(X) a!6220!6220U81(X) => U81(X) a!6220!6220U91(X) => U91(X) a!6220!6220isPLNat(X) => isPLNat(X) a!6220!6220tail(X) => tail(X) a!6220!6220take(X, Y) => take(X, Y) a!6220!6220sel(X, Y) => sel(X, Y)