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