KILLED proof of /export/starexec/sandbox2/benchmark/theBenchmark.trs # AProVE Commit ID: c69e44bd14796315568835c1ffa2502984884775 mhark 20210624 unpublished The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). (0) CpxRelTRS ---------------------------------------- (0) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: A__NATSFROM(z0) -> c(MARK(z0)) A__NATSFROM(z0) -> c1 A__FST(pair(z0, z1)) -> c2(MARK(z0)) A__FST(z0) -> c3 A__SND(pair(z0, z1)) -> c4(MARK(z1)) A__SND(z0) -> c5 A__SPLITAT(0, z0) -> c6(MARK(z0)) A__SPLITAT(s(z0), cons(z1, z2)) -> c7(A__U(a__splitAt(mark(z0), mark(z2)), z0, z1, z2), A__SPLITAT(mark(z0), mark(z2)), MARK(z0)) A__SPLITAT(s(z0), cons(z1, z2)) -> c8(A__U(a__splitAt(mark(z0), mark(z2)), z0, z1, z2), A__SPLITAT(mark(z0), mark(z2)), MARK(z2)) A__SPLITAT(z0, z1) -> c9 A__U(pair(z0, z1), z2, z3, z4) -> c10(MARK(z3)) A__U(pair(z0, z1), z2, z3, z4) -> c11(MARK(z1)) A__U(z0, z1, z2, z3) -> c12 A__HEAD(cons(z0, z1)) -> c13(MARK(z0)) A__HEAD(z0) -> c14 A__TAIL(cons(z0, z1)) -> c15(MARK(z1)) A__TAIL(z0) -> c16 A__SEL(z0, z1) -> c17(A__HEAD(a__afterNth(mark(z0), mark(z1))), A__AFTERNTH(mark(z0), mark(z1)), MARK(z0)) A__SEL(z0, z1) -> c18(A__HEAD(a__afterNth(mark(z0), mark(z1))), A__AFTERNTH(mark(z0), mark(z1)), MARK(z1)) A__SEL(z0, z1) -> c19 A__TAKE(z0, z1) -> c20(A__FST(a__splitAt(mark(z0), mark(z1))), A__SPLITAT(mark(z0), mark(z1)), MARK(z0)) A__TAKE(z0, z1) -> c21(A__FST(a__splitAt(mark(z0), mark(z1))), A__SPLITAT(mark(z0), mark(z1)), MARK(z1)) A__TAKE(z0, z1) -> c22 A__AFTERNTH(z0, z1) -> c23(A__SND(a__splitAt(mark(z0), mark(z1))), A__SPLITAT(mark(z0), mark(z1)), MARK(z0)) A__AFTERNTH(z0, z1) -> c24(A__SND(a__splitAt(mark(z0), mark(z1))), A__SPLITAT(mark(z0), mark(z1)), MARK(z1)) A__AFTERNTH(z0, z1) -> c25 MARK(natsFrom(z0)) -> c26(A__NATSFROM(mark(z0)), MARK(z0)) MARK(fst(z0)) -> c27(A__FST(mark(z0)), MARK(z0)) MARK(snd(z0)) -> c28(A__SND(mark(z0)), MARK(z0)) MARK(splitAt(z0, z1)) -> c29(A__SPLITAT(mark(z0), mark(z1)), MARK(z0)) MARK(splitAt(z0, z1)) -> c30(A__SPLITAT(mark(z0), mark(z1)), MARK(z1)) MARK(u(z0, z1, z2, z3)) -> c31(A__U(mark(z0), z1, z2, z3), MARK(z0)) MARK(head(z0)) -> c32(A__HEAD(mark(z0)), MARK(z0)) MARK(tail(z0)) -> c33(A__TAIL(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c34(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c35(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(afterNth(z0, z1)) -> c36(A__AFTERNTH(mark(z0), mark(z1)), MARK(z0)) MARK(afterNth(z0, z1)) -> c37(A__AFTERNTH(mark(z0), mark(z1)), MARK(z1)) MARK(take(z0, z1)) -> c38(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c39(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c40(MARK(z0)) MARK(s(z0)) -> c41(MARK(z0)) MARK(pair(z0, z1)) -> c42(MARK(z0)) MARK(pair(z0, z1)) -> c43(MARK(z1)) MARK(0) -> c44 MARK(nil) -> c45 The (relative) TRS S consists of the following rules: a__natsFrom(z0) -> cons(mark(z0), natsFrom(s(z0))) a__natsFrom(z0) -> natsFrom(z0) a__fst(pair(z0, z1)) -> mark(z0) a__fst(z0) -> fst(z0) a__snd(pair(z0, z1)) -> mark(z1) a__snd(z0) -> snd(z0) a__splitAt(0, z0) -> pair(nil, mark(z0)) a__splitAt(s(z0), cons(z1, z2)) -> a__u(a__splitAt(mark(z0), mark(z2)), z0, z1, z2) a__splitAt(z0, z1) -> splitAt(z0, z1) a__u(pair(z0, z1), z2, z3, z4) -> pair(cons(mark(z3), z0), mark(z1)) a__u(z0, z1, z2, z3) -> u(z0, z1, z2, z3) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__tail(cons(z0, z1)) -> mark(z1) a__tail(z0) -> tail(z0) a__sel(z0, z1) -> a__head(a__afterNth(mark(z0), mark(z1))) a__sel(z0, z1) -> sel(z0, z1) a__take(z0, z1) -> a__fst(a__splitAt(mark(z0), mark(z1))) a__take(z0, z1) -> take(z0, z1) a__afterNth(z0, z1) -> a__snd(a__splitAt(mark(z0), mark(z1))) a__afterNth(z0, z1) -> afterNth(z0, z1) mark(natsFrom(z0)) -> a__natsFrom(mark(z0)) mark(fst(z0)) -> a__fst(mark(z0)) mark(snd(z0)) -> a__snd(mark(z0)) mark(splitAt(z0, z1)) -> a__splitAt(mark(z0), mark(z1)) mark(u(z0, z1, z2, z3)) -> a__u(mark(z0), z1, z2, z3) mark(head(z0)) -> a__head(mark(z0)) mark(tail(z0)) -> a__tail(mark(z0)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(afterNth(z0, z1)) -> a__afterNth(mark(z0), mark(z1)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(pair(z0, z1)) -> pair(mark(z0), mark(z1)) mark(0) -> 0 mark(nil) -> nil Rewrite Strategy: INNERMOST