(0) Obligation:

Runtime Complexity TRS:
The TRS R consists of the following rules:

sortSu(circ(sortSu(cons(te(a), sortSu(s))), sortSu(t))) → sortSu(cons(te(msubst(te(a), sortSu(t))), sortSu(circ(sortSu(s), sortSu(t)))))
sortSu(circ(sortSu(cons(sop(lift), sortSu(s))), sortSu(cons(te(a), sortSu(t))))) → sortSu(cons(te(a), sortSu(circ(sortSu(s), sortSu(t)))))
sortSu(circ(sortSu(cons(sop(lift), sortSu(s))), sortSu(cons(sop(lift), sortSu(t))))) → sortSu(cons(sop(lift), sortSu(circ(sortSu(s), sortSu(t)))))
sortSu(circ(sortSu(circ(sortSu(s), sortSu(t))), sortSu(u))) → sortSu(circ(sortSu(s), sortSu(circ(sortSu(t), sortSu(u)))))
sortSu(circ(sortSu(s), sortSu(id))) → sortSu(s)
sortSu(circ(sortSu(id), sortSu(s))) → sortSu(s)
sortSu(circ(sortSu(cons(sop(lift), sortSu(s))), sortSu(circ(sortSu(cons(sop(lift), sortSu(t))), sortSu(u))))) → sortSu(circ(sortSu(cons(sop(lift), sortSu(circ(sortSu(s), sortSu(t))))), sortSu(u)))
te(subst(te(a), sortSu(id))) → te(a)
te(msubst(te(a), sortSu(id))) → te(a)
te(msubst(te(msubst(te(a), sortSu(s))), sortSu(t))) → te(msubst(te(a), sortSu(circ(sortSu(s), sortSu(t)))))

Rewrite Strategy: INNERMOST

(1) CpxTrsToCdtProof (BOTH BOUNDS(ID, ID) transformation)

Converted CpxTRS to CDT

(2) Obligation:

Complexity Dependency Tuples Problem
Rules:

sortSu(circ(sortSu(cons(te(z0), sortSu(z1))), sortSu(z2))) → sortSu(cons(te(msubst(te(z0), sortSu(z2))), sortSu(circ(sortSu(z1), sortSu(z2)))))
sortSu(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(te(z1), sortSu(z2))))) → sortSu(cons(te(z1), sortSu(circ(sortSu(z0), sortSu(z2)))))
sortSu(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(sop(lift), sortSu(z1))))) → sortSu(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1)))))
sortSu(circ(sortSu(circ(sortSu(z0), sortSu(z1))), sortSu(z2))) → sortSu(circ(sortSu(z0), sortSu(circ(sortSu(z1), sortSu(z2)))))
sortSu(circ(sortSu(z0), sortSu(id))) → sortSu(z0)
sortSu(circ(sortSu(id), sortSu(z0))) → sortSu(z0)
sortSu(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(circ(sortSu(cons(sop(lift), sortSu(z1))), sortSu(z2))))) → sortSu(circ(sortSu(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), sortSu(z2)))
te(subst(te(z0), sortSu(id))) → te(z0)
te(msubst(te(z0), sortSu(id))) → te(z0)
te(msubst(te(msubst(te(z0), sortSu(z1))), sortSu(z2))) → te(msubst(te(z0), sortSu(circ(sortSu(z1), sortSu(z2)))))
Tuples:

SORTSU(circ(sortSu(cons(te(z0), sortSu(z1))), sortSu(z2))) → c(SORTSU(cons(te(msubst(te(z0), sortSu(z2))), sortSu(circ(sortSu(z1), sortSu(z2))))), TE(msubst(te(z0), sortSu(z2))), TE(z0), SORTSU(z2), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(te(z1), sortSu(z2))))) → c1(SORTSU(cons(te(z1), sortSu(circ(sortSu(z0), sortSu(z2))))), TE(z1), SORTSU(circ(sortSu(z0), sortSu(z2))), SORTSU(z0), SORTSU(z2))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(sop(lift), sortSu(z1))))) → c2(SORTSU(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), SORTSU(circ(sortSu(z0), sortSu(z1))), SORTSU(z0), SORTSU(z1))
SORTSU(circ(sortSu(circ(sortSu(z0), sortSu(z1))), sortSu(z2))) → c3(SORTSU(circ(sortSu(z0), sortSu(circ(sortSu(z1), sortSu(z2))))), SORTSU(z0), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))
SORTSU(circ(sortSu(z0), sortSu(id))) → c4(SORTSU(z0))
SORTSU(circ(sortSu(id), sortSu(z0))) → c5(SORTSU(z0))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(circ(sortSu(cons(sop(lift), sortSu(z1))), sortSu(z2))))) → c6(SORTSU(circ(sortSu(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), sortSu(z2))), SORTSU(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), SORTSU(circ(sortSu(z0), sortSu(z1))), SORTSU(z0), SORTSU(z1), SORTSU(z2))
TE(subst(te(z0), sortSu(id))) → c7(TE(z0))
TE(msubst(te(z0), sortSu(id))) → c8(TE(z0))
TE(msubst(te(msubst(te(z0), sortSu(z1))), sortSu(z2))) → c9(TE(msubst(te(z0), sortSu(circ(sortSu(z1), sortSu(z2))))), TE(z0), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))
S tuples:

SORTSU(circ(sortSu(cons(te(z0), sortSu(z1))), sortSu(z2))) → c(SORTSU(cons(te(msubst(te(z0), sortSu(z2))), sortSu(circ(sortSu(z1), sortSu(z2))))), TE(msubst(te(z0), sortSu(z2))), TE(z0), SORTSU(z2), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(te(z1), sortSu(z2))))) → c1(SORTSU(cons(te(z1), sortSu(circ(sortSu(z0), sortSu(z2))))), TE(z1), SORTSU(circ(sortSu(z0), sortSu(z2))), SORTSU(z0), SORTSU(z2))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(sop(lift), sortSu(z1))))) → c2(SORTSU(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), SORTSU(circ(sortSu(z0), sortSu(z1))), SORTSU(z0), SORTSU(z1))
SORTSU(circ(sortSu(circ(sortSu(z0), sortSu(z1))), sortSu(z2))) → c3(SORTSU(circ(sortSu(z0), sortSu(circ(sortSu(z1), sortSu(z2))))), SORTSU(z0), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))
SORTSU(circ(sortSu(z0), sortSu(id))) → c4(SORTSU(z0))
SORTSU(circ(sortSu(id), sortSu(z0))) → c5(SORTSU(z0))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(circ(sortSu(cons(sop(lift), sortSu(z1))), sortSu(z2))))) → c6(SORTSU(circ(sortSu(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), sortSu(z2))), SORTSU(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), SORTSU(circ(sortSu(z0), sortSu(z1))), SORTSU(z0), SORTSU(z1), SORTSU(z2))
TE(subst(te(z0), sortSu(id))) → c7(TE(z0))
TE(msubst(te(z0), sortSu(id))) → c8(TE(z0))
TE(msubst(te(msubst(te(z0), sortSu(z1))), sortSu(z2))) → c9(TE(msubst(te(z0), sortSu(circ(sortSu(z1), sortSu(z2))))), TE(z0), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))
K tuples:none
Defined Rule Symbols:

sortSu, te

Defined Pair Symbols:

SORTSU, TE

Compound Symbols:

c, c1, c2, c3, c4, c5, c6, c7, c8, c9

(3) CdtUnreachableProof (EQUIVALENT transformation)

The following tuples could be removed as they are not reachable from basic start terms:

SORTSU(circ(sortSu(cons(te(z0), sortSu(z1))), sortSu(z2))) → c(SORTSU(cons(te(msubst(te(z0), sortSu(z2))), sortSu(circ(sortSu(z1), sortSu(z2))))), TE(msubst(te(z0), sortSu(z2))), TE(z0), SORTSU(z2), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(te(z1), sortSu(z2))))) → c1(SORTSU(cons(te(z1), sortSu(circ(sortSu(z0), sortSu(z2))))), TE(z1), SORTSU(circ(sortSu(z0), sortSu(z2))), SORTSU(z0), SORTSU(z2))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(sop(lift), sortSu(z1))))) → c2(SORTSU(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), SORTSU(circ(sortSu(z0), sortSu(z1))), SORTSU(z0), SORTSU(z1))
SORTSU(circ(sortSu(circ(sortSu(z0), sortSu(z1))), sortSu(z2))) → c3(SORTSU(circ(sortSu(z0), sortSu(circ(sortSu(z1), sortSu(z2))))), SORTSU(z0), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))
SORTSU(circ(sortSu(z0), sortSu(id))) → c4(SORTSU(z0))
SORTSU(circ(sortSu(id), sortSu(z0))) → c5(SORTSU(z0))
SORTSU(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(circ(sortSu(cons(sop(lift), sortSu(z1))), sortSu(z2))))) → c6(SORTSU(circ(sortSu(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), sortSu(z2))), SORTSU(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), SORTSU(circ(sortSu(z0), sortSu(z1))), SORTSU(z0), SORTSU(z1), SORTSU(z2))
TE(subst(te(z0), sortSu(id))) → c7(TE(z0))
TE(msubst(te(z0), sortSu(id))) → c8(TE(z0))
TE(msubst(te(msubst(te(z0), sortSu(z1))), sortSu(z2))) → c9(TE(msubst(te(z0), sortSu(circ(sortSu(z1), sortSu(z2))))), TE(z0), SORTSU(circ(sortSu(z1), sortSu(z2))), SORTSU(z1), SORTSU(z2))

(4) Obligation:

Complexity Dependency Tuples Problem
Rules:

sortSu(circ(sortSu(cons(te(z0), sortSu(z1))), sortSu(z2))) → sortSu(cons(te(msubst(te(z0), sortSu(z2))), sortSu(circ(sortSu(z1), sortSu(z2)))))
sortSu(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(te(z1), sortSu(z2))))) → sortSu(cons(te(z1), sortSu(circ(sortSu(z0), sortSu(z2)))))
sortSu(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(cons(sop(lift), sortSu(z1))))) → sortSu(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1)))))
sortSu(circ(sortSu(circ(sortSu(z0), sortSu(z1))), sortSu(z2))) → sortSu(circ(sortSu(z0), sortSu(circ(sortSu(z1), sortSu(z2)))))
sortSu(circ(sortSu(z0), sortSu(id))) → sortSu(z0)
sortSu(circ(sortSu(id), sortSu(z0))) → sortSu(z0)
sortSu(circ(sortSu(cons(sop(lift), sortSu(z0))), sortSu(circ(sortSu(cons(sop(lift), sortSu(z1))), sortSu(z2))))) → sortSu(circ(sortSu(cons(sop(lift), sortSu(circ(sortSu(z0), sortSu(z1))))), sortSu(z2)))
te(subst(te(z0), sortSu(id))) → te(z0)
te(msubst(te(z0), sortSu(id))) → te(z0)
te(msubst(te(msubst(te(z0), sortSu(z1))), sortSu(z2))) → te(msubst(te(z0), sortSu(circ(sortSu(z1), sortSu(z2)))))
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:

sortSu, te

Defined Pair Symbols:none

Compound Symbols:none

(5) SIsEmptyProof (EQUIVALENT transformation)

The set S is empty

(6) BOUNDS(O(1), O(1))