KILLED proof of /export/starexec/sandbox/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__ZEROS -> c A__ZEROS -> c1 A__U11(tt, z0) -> c2(A__U12(a__isNatList(z0)), A__ISNATLIST(z0)) A__U11(z0, z1) -> c3 A__U12(tt) -> c4 A__U12(z0) -> c5 A__U21(tt, z0) -> c6(A__U22(a__isNat(z0)), A__ISNAT(z0)) A__U21(z0, z1) -> c7 A__U22(tt) -> c8 A__U22(z0) -> c9 A__U31(tt, z0) -> c10(A__U32(a__isNatList(z0)), A__ISNATLIST(z0)) A__U31(z0, z1) -> c11 A__U32(tt) -> c12 A__U32(z0) -> c13 A__U41(tt, z0, z1) -> c14(A__U42(a__isNat(z0), z1), A__ISNAT(z0)) A__U41(z0, z1, z2) -> c15 A__U42(tt, z0) -> c16(A__U43(a__isNatIList(z0)), A__ISNATILIST(z0)) A__U42(z0, z1) -> c17 A__U43(tt) -> c18 A__U43(z0) -> c19 A__U51(tt, z0, z1) -> c20(A__U52(a__isNat(z0), z1), A__ISNAT(z0)) A__U51(z0, z1, z2) -> c21 A__U52(tt, z0) -> c22(A__U53(a__isNatList(z0)), A__ISNATLIST(z0)) A__U52(z0, z1) -> c23 A__U53(tt) -> c24 A__U53(z0) -> c25 A__U61(tt, z0, z1) -> c26(A__U62(a__isNat(z0), z1), A__ISNAT(z0)) A__U61(z0, z1, z2) -> c27 A__U62(tt, z0) -> c28(A__U63(a__isNatIList(z0)), A__ISNATILIST(z0)) A__U62(z0, z1) -> c29 A__U63(tt) -> c30 A__U63(z0) -> c31 A__U71(tt, z0) -> c32(A__LENGTH(mark(z0)), MARK(z0)) A__U71(z0, z1) -> c33 A__U81(tt) -> c34 A__U81(z0) -> c35 A__U91(tt, z0, z1, z2) -> c36(MARK(z2)) A__U91(z0, z1, z2, z3) -> c37 A__AND(tt, z0) -> c38(MARK(z0)) A__AND(z0, z1) -> c39 A__ISNAT(0) -> c40 A__ISNAT(length(z0)) -> c41(A__U11(a__isNatIListKind(z0), z0), A__ISNATILISTKIND(z0)) A__ISNAT(s(z0)) -> c42(A__U21(a__isNatKind(z0), z0), A__ISNATKIND(z0)) A__ISNAT(z0) -> c43 A__ISNATILIST(z0) -> c44(A__U31(a__isNatIListKind(z0), z0), A__ISNATILISTKIND(z0)) A__ISNATILIST(zeros) -> c45 A__ISNATILIST(cons(z0, z1)) -> c46(A__U41(a__and(a__isNatKind(z0), isNatIListKind(z1)), z0, z1), A__AND(a__isNatKind(z0), isNatIListKind(z1)), A__ISNATKIND(z0)) A__ISNATILIST(z0) -> c47 A__ISNATILISTKIND(nil) -> c48 A__ISNATILISTKIND(zeros) -> c49 A__ISNATILISTKIND(cons(z0, z1)) -> c50(A__AND(a__isNatKind(z0), isNatIListKind(z1)), A__ISNATKIND(z0)) A__ISNATILISTKIND(take(z0, z1)) -> c51(A__AND(a__isNatKind(z0), isNatIListKind(z1)), A__ISNATKIND(z0)) A__ISNATILISTKIND(z0) -> c52 A__ISNATKIND(0) -> c53 A__ISNATKIND(length(z0)) -> c54(A__ISNATILISTKIND(z0)) A__ISNATKIND(s(z0)) -> c55(A__ISNATKIND(z0)) A__ISNATKIND(z0) -> c56 A__ISNATLIST(nil) -> c57 A__ISNATLIST(cons(z0, z1)) -> c58(A__U51(a__and(a__isNatKind(z0), isNatIListKind(z1)), z0, z1), A__AND(a__isNatKind(z0), isNatIListKind(z1)), A__ISNATKIND(z0)) A__ISNATLIST(take(z0, z1)) -> c59(A__U61(a__and(a__isNatKind(z0), isNatIListKind(z1)), z0, z1), A__AND(a__isNatKind(z0), isNatIListKind(z1)), A__ISNATKIND(z0)) A__ISNATLIST(z0) -> c60 A__LENGTH(nil) -> c61 A__LENGTH(cons(z0, z1)) -> c62(A__U71(a__and(a__and(a__isNatList(z1), isNatIListKind(z1)), and(isNat(z0), isNatKind(z0))), z1), A__AND(a__and(a__isNatList(z1), isNatIListKind(z1)), and(isNat(z0), isNatKind(z0))), A__AND(a__isNatList(z1), isNatIListKind(z1)), A__ISNATLIST(z1)) A__LENGTH(z0) -> c63 A__TAKE(0, z0) -> c64(A__U81(a__and(a__isNatIList(z0), isNatIListKind(z0))), A__AND(a__isNatIList(z0), isNatIListKind(z0)), A__ISNATILIST(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c65(A__U91(a__and(a__and(a__isNatIList(z2), isNatIListKind(z2)), and(and(isNat(z0), isNatKind(z0)), and(isNat(z1), isNatKind(z1)))), z2, z0, z1), A__AND(a__and(a__isNatIList(z2), isNatIListKind(z2)), and(and(isNat(z0), isNatKind(z0)), and(isNat(z1), isNatKind(z1)))), A__AND(a__isNatIList(z2), isNatIListKind(z2)), A__ISNATILIST(z2)) A__TAKE(z0, z1) -> c66 MARK(zeros) -> c67(A__ZEROS) MARK(U11(z0, z1)) -> c68(A__U11(mark(z0), z1), MARK(z0)) MARK(U12(z0)) -> c69(A__U12(mark(z0)), MARK(z0)) MARK(isNatList(z0)) -> c70(A__ISNATLIST(z0)) MARK(U21(z0, z1)) -> c71(A__U21(mark(z0), z1), MARK(z0)) MARK(U22(z0)) -> c72(A__U22(mark(z0)), MARK(z0)) MARK(isNat(z0)) -> c73(A__ISNAT(z0)) MARK(U31(z0, z1)) -> c74(A__U31(mark(z0), z1), MARK(z0)) MARK(U32(z0)) -> c75(A__U32(mark(z0)), MARK(z0)) MARK(U41(z0, z1, z2)) -> c76(A__U41(mark(z0), z1, z2), MARK(z0)) MARK(U42(z0, z1)) -> c77(A__U42(mark(z0), z1), MARK(z0)) MARK(U43(z0)) -> c78(A__U43(mark(z0)), MARK(z0)) MARK(isNatIList(z0)) -> c79(A__ISNATILIST(z0)) MARK(U51(z0, z1, z2)) -> c80(A__U51(mark(z0), z1, z2), MARK(z0)) MARK(U52(z0, z1)) -> c81(A__U52(mark(z0), z1), MARK(z0)) MARK(U53(z0)) -> c82(A__U53(mark(z0)), MARK(z0)) MARK(U61(z0, z1, z2)) -> c83(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c84(A__U62(mark(z0), z1), MARK(z0)) MARK(U63(z0)) -> c85(A__U63(mark(z0)), MARK(z0)) MARK(U71(z0, z1)) -> c86(A__U71(mark(z0), z1), MARK(z0)) MARK(length(z0)) -> c87(A__LENGTH(mark(z0)), MARK(z0)) MARK(U81(z0)) -> c88(A__U81(mark(z0)), MARK(z0)) MARK(U91(z0, z1, z2, z3)) -> c89(A__U91(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c90(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c91(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(and(z0, z1)) -> c92(A__AND(mark(z0), z1), MARK(z0)) MARK(isNatIListKind(z0)) -> c93(A__ISNATILISTKIND(z0)) MARK(isNatKind(z0)) -> c94(A__ISNATKIND(z0)) MARK(cons(z0, z1)) -> c95(MARK(z0)) MARK(0) -> c96 MARK(tt) -> c97 MARK(s(z0)) -> c98(MARK(z0)) MARK(nil) -> c99 The (relative) TRS S consists of the following rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt, z0) -> a__U12(a__isNatList(z0)) a__U11(z0, z1) -> U11(z0, z1) a__U12(tt) -> tt a__U12(z0) -> U12(z0) a__U21(tt, z0) -> a__U22(a__isNat(z0)) a__U21(z0, z1) -> U21(z0, z1) a__U22(tt) -> tt a__U22(z0) -> U22(z0) a__U31(tt, z0) -> a__U32(a__isNatList(z0)) a__U31(z0, z1) -> U31(z0, z1) a__U32(tt) -> tt a__U32(z0) -> U32(z0) a__U41(tt, z0, z1) -> a__U42(a__isNat(z0), z1) a__U41(z0, z1, z2) -> U41(z0, z1, z2) a__U42(tt, z0) -> a__U43(a__isNatIList(z0)) a__U42(z0, z1) -> U42(z0, z1) a__U43(tt) -> tt a__U43(z0) -> U43(z0) a__U51(tt, z0, z1) -> a__U52(a__isNat(z0), z1) a__U51(z0, z1, z2) -> U51(z0, z1, z2) a__U52(tt, z0) -> a__U53(a__isNatList(z0)) a__U52(z0, z1) -> U52(z0, z1) a__U53(tt) -> tt a__U53(z0) -> U53(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z0), z1) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> a__U63(a__isNatIList(z0)) a__U62(z0, z1) -> U62(z0, z1) a__U63(tt) -> tt a__U63(z0) -> U63(z0) a__U71(tt, z0) -> s(a__length(mark(z0))) a__U71(z0, z1) -> U71(z0, z1) a__U81(tt) -> nil a__U81(z0) -> U81(z0) a__U91(tt, z0, z1, z2) -> cons(mark(z2), take(z1, z0)) a__U91(z0, z1, z2, z3) -> U91(z0, z1, z2, z3) a__and(tt, z0) -> mark(z0) a__and(z0, z1) -> and(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatIListKind(z0), z0) a__isNat(s(z0)) -> a__U21(a__isNatKind(z0), z0) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatIListKind(z0), z0) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__and(a__isNatKind(z0), isNatIListKind(z1)), z0, z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatIListKind(nil) -> tt a__isNatIListKind(zeros) -> tt a__isNatIListKind(cons(z0, z1)) -> a__and(a__isNatKind(z0), isNatIListKind(z1)) a__isNatIListKind(take(z0, z1)) -> a__and(a__isNatKind(z0), isNatIListKind(z1)) a__isNatIListKind(z0) -> isNatIListKind(z0) a__isNatKind(0) -> tt a__isNatKind(length(z0)) -> a__isNatIListKind(z0) a__isNatKind(s(z0)) -> a__isNatKind(z0) a__isNatKind(z0) -> isNatKind(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__and(a__isNatKind(z0), isNatIListKind(z1)), z0, z1) a__isNatList(take(z0, z1)) -> a__U61(a__and(a__isNatKind(z0), isNatIListKind(z1)), z0, z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U71(a__and(a__and(a__isNatList(z1), isNatIListKind(z1)), and(isNat(z0), isNatKind(z0))), z1) a__length(z0) -> length(z0) a__take(0, z0) -> a__U81(a__and(a__isNatIList(z0), isNatIListKind(z0))) a__take(s(z0), cons(z1, z2)) -> a__U91(a__and(a__and(a__isNatIList(z2), isNatIListKind(z2)), and(and(isNat(z0), isNatKind(z0)), and(isNat(z1), isNatKind(z1)))), z2, z0, z1) a__take(z0, z1) -> take(z0, z1) mark(zeros) -> a__zeros mark(U11(z0, z1)) -> a__U11(mark(z0), z1) mark(U12(z0)) -> a__U12(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U21(z0, z1)) -> a__U21(mark(z0), z1) mark(U22(z0)) -> a__U22(mark(z0)) mark(isNat(z0)) -> a__isNat(z0) mark(U31(z0, z1)) -> a__U31(mark(z0), z1) mark(U32(z0)) -> a__U32(mark(z0)) mark(U41(z0, z1, z2)) -> a__U41(mark(z0), z1, z2) mark(U42(z0, z1)) -> a__U42(mark(z0), z1) mark(U43(z0)) -> a__U43(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1, z2)) -> a__U51(mark(z0), z1, z2) mark(U52(z0, z1)) -> a__U52(mark(z0), z1) mark(U53(z0)) -> a__U53(mark(z0)) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(U63(z0)) -> a__U63(mark(z0)) mark(U71(z0, z1)) -> a__U71(mark(z0), z1) mark(length(z0)) -> a__length(mark(z0)) mark(U81(z0)) -> a__U81(mark(z0)) mark(U91(z0, z1, z2, z3)) -> a__U91(mark(z0), z1, z2, z3) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(and(z0, z1)) -> a__and(mark(z0), z1) mark(isNatIListKind(z0)) -> a__isNatIListKind(z0) mark(isNatKind(z0)) -> a__isNatKind(z0) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Rewrite Strategy: INNERMOST