(0) Obligation:

Clauses:

transpose(A, B) :- transpose_aux(A, [], B).
transpose_aux(.(R, Rs), X1, .(C, Cs)) :- ','(row2col(R, .(C, Cs), Cols1, Accm), transpose_aux(Rs, Accm, Cols1)).
transpose_aux([], X, X).
row2col(.(X, Xs), .(.(X, Ys), Cols), .(Ys, Cols1), .([], As)) :- row2col(Xs, Cols, Cols1, As).
row2col([], [], [], []).

Query: transpose(g,a)

(1) LPReorderTransformerProof (EQUIVALENT transformation)

Reordered facts before rules in definite LP [PROLOG].

(2) Obligation:

Clauses:

transpose_aux([], X, X).
row2col([], [], [], []).
transpose(A, B) :- transpose_aux(A, [], B).
transpose_aux(.(R, Rs), X1, .(C, Cs)) :- ','(row2col(R, .(C, Cs), Cols1, Accm), transpose_aux(Rs, Accm, Cols1)).
row2col(.(X, Xs), .(.(X, Ys), Cols), .(Ys, Cols1), .([], As)) :- row2col(Xs, Cols, Cols1, As).

Query: transpose(g,a)

(3) PrologToCdtProblemTransformerProof (UPPER BOUND (ID) transformation)

Built complexity over-approximating cdt problems from derivation graph.

(4) Obligation:

Complexity Dependency Tuples Problem
Rules:

f1_in([]) → f1_out1
f1_in(.(z0, z1)) → U1(f23_in(z0, z1), .(z0, z1))
U1(f23_out1(z0), .(z1, z2)) → f1_out1
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
f26_in([], z0) → f26_out1
f26_in(.(z0, z1), z2) → U4(f23_in(z0, z1), .(z0, z1), z2)
U4(f23_out1(z0), .(z1, z2), z3) → f26_out1
f23_in(z0, z1) → U5(f25_in(z0), z0, z1)
U5(f25_out1(z0), z1, z2) → U6(f26_in(z2, z0), z1, z2, z0)
U6(f26_out1, z0, z1, z2) → f23_out1(z2)
Tuples:

F1_IN(.(z0, z1)) → c1(U1'(f23_in(z0, z1), .(z0, z1)), F23_IN(z0, z1))
F32_IN(.(z0, z1)) → c4(U2'(f32_in(z1), .(z0, z1)), F32_IN(z1))
F25_IN(.(z0, z1)) → c6(U3'(f32_in(z1), .(z0, z1)), F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(U4'(f23_in(z0, z1), .(z0, z1), z2), F23_IN(z0, z1))
F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
U5'(f25_out1(z0), z1, z2) → c12(U6'(f26_in(z2, z0), z1, z2, z0), F26_IN(z2, z0))
S tuples:

F1_IN(.(z0, z1)) → c1(U1'(f23_in(z0, z1), .(z0, z1)), F23_IN(z0, z1))
F32_IN(.(z0, z1)) → c4(U2'(f32_in(z1), .(z0, z1)), F32_IN(z1))
F25_IN(.(z0, z1)) → c6(U3'(f32_in(z1), .(z0, z1)), F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(U4'(f23_in(z0, z1), .(z0, z1), z2), F23_IN(z0, z1))
F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
U5'(f25_out1(z0), z1, z2) → c12(U6'(f26_in(z2, z0), z1, z2, z0), F26_IN(z2, z0))
K tuples:none
Defined Rule Symbols:

f1_in, U1, f32_in, U2, f25_in, U3, f26_in, U4, f23_in, U5, U6

Defined Pair Symbols:

F1_IN, F32_IN, F25_IN, F26_IN, F23_IN, U5'

Compound Symbols:

c1, c4, c6, c9, c11, c12

(5) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID) transformation)

Split RHS of tuples not part of any SCC

(6) Obligation:

Complexity Dependency Tuples Problem
Rules:

f1_in([]) → f1_out1
f1_in(.(z0, z1)) → U1(f23_in(z0, z1), .(z0, z1))
U1(f23_out1(z0), .(z1, z2)) → f1_out1
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
f26_in([], z0) → f26_out1
f26_in(.(z0, z1), z2) → U4(f23_in(z0, z1), .(z0, z1), z2)
U4(f23_out1(z0), .(z1, z2), z3) → f26_out1
f23_in(z0, z1) → U5(f25_in(z0), z0, z1)
U5(f25_out1(z0), z1, z2) → U6(f26_in(z2, z0), z1, z2, z0)
U6(f26_out1, z0, z1, z2) → f23_out1(z2)
Tuples:

F32_IN(.(z0, z1)) → c4(U2'(f32_in(z1), .(z0, z1)), F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(U4'(f23_in(z0, z1), .(z0, z1), z2), F23_IN(z0, z1))
F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
U5'(f25_out1(z0), z1, z2) → c12(U6'(f26_in(z2, z0), z1, z2, z0), F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c(U1'(f23_in(z0, z1), .(z0, z1)))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(U3'(f32_in(z1), .(z0, z1)))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
S tuples:

F32_IN(.(z0, z1)) → c4(U2'(f32_in(z1), .(z0, z1)), F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(U4'(f23_in(z0, z1), .(z0, z1), z2), F23_IN(z0, z1))
F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
U5'(f25_out1(z0), z1, z2) → c12(U6'(f26_in(z2, z0), z1, z2, z0), F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c(U1'(f23_in(z0, z1), .(z0, z1)))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(U3'(f32_in(z1), .(z0, z1)))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
K tuples:none
Defined Rule Symbols:

f1_in, U1, f32_in, U2, f25_in, U3, f26_in, U4, f23_in, U5, U6

Defined Pair Symbols:

F32_IN, F26_IN, F23_IN, U5', F1_IN, F25_IN

Compound Symbols:

c4, c9, c11, c12, c

(7) CdtGraphRemoveTrailingTuplepartsProof (BOTH BOUNDS(ID, ID) transformation)

Removed 5 trailing tuple parts

(8) Obligation:

Complexity Dependency Tuples Problem
Rules:

f1_in([]) → f1_out1
f1_in(.(z0, z1)) → U1(f23_in(z0, z1), .(z0, z1))
U1(f23_out1(z0), .(z1, z2)) → f1_out1
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
f26_in([], z0) → f26_out1
f26_in(.(z0, z1), z2) → U4(f23_in(z0, z1), .(z0, z1), z2)
U4(f23_out1(z0), .(z1, z2), z3) → f26_out1
f23_in(z0, z1) → U5(f25_in(z0), z0, z1)
U5(f25_out1(z0), z1, z2) → U6(f26_in(z2, z0), z1, z2, z0)
U6(f26_out1, z0, z1, z2) → f23_out1(z2)
Tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c
S tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c
K tuples:none
Defined Rule Symbols:

f1_in, U1, f32_in, U2, f25_in, U3, f26_in, U4, f23_in, U5, U6

Defined Pair Symbols:

F23_IN, F1_IN, F25_IN, F32_IN, F26_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(9) CdtKnowledgeProof (EQUIVALENT transformation)

The following tuples could be moved from S to K by knowledge propagation:

F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F1_IN(.(z0, z1)) → c

(10) Obligation:

Complexity Dependency Tuples Problem
Rules:

f1_in([]) → f1_out1
f1_in(.(z0, z1)) → U1(f23_in(z0, z1), .(z0, z1))
U1(f23_out1(z0), .(z1, z2)) → f1_out1
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
f26_in([], z0) → f26_out1
f26_in(.(z0, z1), z2) → U4(f23_in(z0, z1), .(z0, z1), z2)
U4(f23_out1(z0), .(z1, z2), z3) → f26_out1
f23_in(z0, z1) → U5(f25_in(z0), z0, z1)
U5(f25_out1(z0), z1, z2) → U6(f26_in(z2, z0), z1, z2, z0)
U6(f26_out1, z0, z1, z2) → f23_out1(z2)
Tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c
S tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F25_IN(.(z0, z1)) → c
K tuples:

F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F1_IN(.(z0, z1)) → c
Defined Rule Symbols:

f1_in, U1, f32_in, U2, f25_in, U3, f26_in, U4, f23_in, U5, U6

Defined Pair Symbols:

F23_IN, F1_IN, F25_IN, F32_IN, F26_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(11) CdtPolyRedPairProof (UPPER BOUND (ADD(O(n^1))) transformation)

Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S.

F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
We considered the (Usable) Rules:

f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
And the Tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c
The order we found is given by the following interpretation:
Polynomial interpretation :

POL(.(x1, x2)) = [1] + x2   
POL(F1_IN(x1)) = [2]x1   
POL(F23_IN(x1, x2)) = [2]x2   
POL(F25_IN(x1)) = 0   
POL(F26_IN(x1, x2)) = [2]x1   
POL(F32_IN(x1)) = 0   
POL(U2(x1, x2)) = 0   
POL(U3(x1, x2)) = 0   
POL(U5'(x1, x2, x3)) = [2]x3   
POL([]) = 0   
POL(c) = 0   
POL(c(x1)) = x1   
POL(c11(x1, x2)) = x1 + x2   
POL(c12(x1)) = x1   
POL(c4(x1)) = x1   
POL(c9(x1)) = x1   
POL(f25_in(x1)) = [1]   
POL(f25_out1(x1)) = 0   
POL(f32_in(x1)) = 0   
POL(f32_out1(x1)) = 0   

(12) Obligation:

Complexity Dependency Tuples Problem
Rules:

f1_in([]) → f1_out1
f1_in(.(z0, z1)) → U1(f23_in(z0, z1), .(z0, z1))
U1(f23_out1(z0), .(z1, z2)) → f1_out1
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
f26_in([], z0) → f26_out1
f26_in(.(z0, z1), z2) → U4(f23_in(z0, z1), .(z0, z1), z2)
U4(f23_out1(z0), .(z1, z2), z3) → f26_out1
f23_in(z0, z1) → U5(f25_in(z0), z0, z1)
U5(f25_out1(z0), z1, z2) → U6(f26_in(z2, z0), z1, z2, z0)
U6(f26_out1, z0, z1, z2) → f23_out1(z2)
Tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c
S tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F25_IN(.(z0, z1)) → c
K tuples:

F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F1_IN(.(z0, z1)) → c
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
Defined Rule Symbols:

f1_in, U1, f32_in, U2, f25_in, U3, f26_in, U4, f23_in, U5, U6

Defined Pair Symbols:

F23_IN, F1_IN, F25_IN, F32_IN, F26_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(13) CdtKnowledgeProof (EQUIVALENT transformation)

The following tuples could be moved from S to K by knowledge propagation:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F25_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c(F32_IN(z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F25_IN(.(z0, z1)) → c
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))

(14) Obligation:

Complexity Dependency Tuples Problem
Rules:

f1_in([]) → f1_out1
f1_in(.(z0, z1)) → U1(f23_in(z0, z1), .(z0, z1))
U1(f23_out1(z0), .(z1, z2)) → f1_out1
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
f26_in([], z0) → f26_out1
f26_in(.(z0, z1), z2) → U4(f23_in(z0, z1), .(z0, z1), z2)
U4(f23_out1(z0), .(z1, z2), z3) → f26_out1
f23_in(z0, z1) → U5(f25_in(z0), z0, z1)
U5(f25_out1(z0), z1, z2) → U6(f26_in(z2, z0), z1, z2, z0)
U6(f26_out1, z0, z1, z2) → f23_out1(z2)
Tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c
S tuples:

F32_IN(.(z0, z1)) → c4(F32_IN(z1))
K tuples:

F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F1_IN(.(z0, z1)) → c
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F25_IN(.(z0, z1)) → c
Defined Rule Symbols:

f1_in, U1, f32_in, U2, f25_in, U3, f26_in, U4, f23_in, U5, U6

Defined Pair Symbols:

F23_IN, F1_IN, F25_IN, F32_IN, F26_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(15) CdtPolyRedPairProof (UPPER BOUND (ADD(O(n^1))) transformation)

Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S.

F32_IN(.(z0, z1)) → c4(F32_IN(z1))
We considered the (Usable) Rules:

f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
And the Tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c
The order we found is given by the following interpretation:
Polynomial interpretation :

POL(.(x1, x2)) = [1] + x1 + x2   
POL(F1_IN(x1)) = [3] + x1   
POL(F23_IN(x1, x2)) = [1] + x1 + x2   
POL(F25_IN(x1)) = [1] + x1   
POL(F26_IN(x1, x2)) = x1   
POL(F32_IN(x1)) = [2] + x1   
POL(U2(x1, x2)) = 0   
POL(U3(x1, x2)) = 0   
POL(U5'(x1, x2, x3)) = x3   
POL([]) = 0   
POL(c) = 0   
POL(c(x1)) = x1   
POL(c11(x1, x2)) = x1 + x2   
POL(c12(x1)) = x1   
POL(c4(x1)) = x1   
POL(c9(x1)) = x1   
POL(f25_in(x1)) = 0   
POL(f25_out1(x1)) = 0   
POL(f32_in(x1)) = 0   
POL(f32_out1(x1)) = 0   

(16) Obligation:

Complexity Dependency Tuples Problem
Rules:

f1_in([]) → f1_out1
f1_in(.(z0, z1)) → U1(f23_in(z0, z1), .(z0, z1))
U1(f23_out1(z0), .(z1, z2)) → f1_out1
f32_in([]) → f32_out1([])
f32_in(.(z0, z1)) → U2(f32_in(z1), .(z0, z1))
U2(f32_out1(z0), .(z1, z2)) → f32_out1(.([], z0))
f25_in(.(z0, z1)) → U3(f32_in(z1), .(z0, z1))
U3(f32_out1(z0), .(z1, z2)) → f25_out1(.([], z0))
f26_in([], z0) → f26_out1
f26_in(.(z0, z1), z2) → U4(f23_in(z0, z1), .(z0, z1), z2)
U4(f23_out1(z0), .(z1, z2), z3) → f26_out1
f23_in(z0, z1) → U5(f25_in(z0), z0, z1)
U5(f25_out1(z0), z1, z2) → U6(f26_in(z2, z0), z1, z2, z0)
U6(f26_out1, z0, z1, z2) → f23_out1(z2)
Tuples:

F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F1_IN(.(z0, z1)) → c
F25_IN(.(z0, z1)) → c
S tuples:none
K tuples:

F1_IN(.(z0, z1)) → c(F23_IN(z0, z1))
F1_IN(.(z0, z1)) → c
F26_IN(.(z0, z1), z2) → c9(F23_IN(z0, z1))
F23_IN(z0, z1) → c11(U5'(f25_in(z0), z0, z1), F25_IN(z0))
F25_IN(.(z0, z1)) → c(F32_IN(z1))
U5'(f25_out1(z0), z1, z2) → c12(F26_IN(z2, z0))
F25_IN(.(z0, z1)) → c
F32_IN(.(z0, z1)) → c4(F32_IN(z1))
Defined Rule Symbols:

f1_in, U1, f32_in, U2, f25_in, U3, f26_in, U4, f23_in, U5, U6

Defined Pair Symbols:

F23_IN, F1_IN, F25_IN, F32_IN, F26_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(17) SIsEmptyProof (EQUIVALENT transformation)

The set S is empty

(18) BOUNDS(O(1), O(1))

(19) PrologToCdtProblemTransformerProof (UPPER BOUND (ID) transformation)

Built complexity over-approximating cdt problems from derivation graph.

(20) Obligation:

Complexity Dependency Tuples Problem
Rules:

f2_in([]) → f2_out1
f2_in(.(z0, z1)) → U1(f12_in(z0, z1), .(z0, z1))
U1(f12_out1(z0), .(z1, z2)) → f2_out1
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
f17_in([], z0) → f17_out1
f17_in(.(z0, z1), z2) → U4(f12_in(z0, z1), .(z0, z1), z2)
U4(f12_out1(z0), .(z1, z2), z3) → f17_out1
f12_in(z0, z1) → U5(f15_in(z0), z0, z1)
U5(f15_out1(z0), z1, z2) → U6(f17_in(z2, z0), z1, z2, z0)
U6(f17_out1, z0, z1, z2) → f12_out1(z2)
Tuples:

F2_IN(.(z0, z1)) → c1(U1'(f12_in(z0, z1), .(z0, z1)), F12_IN(z0, z1))
F29_IN(.(z0, z1)) → c4(U2'(f29_in(z1), .(z0, z1)), F29_IN(z1))
F15_IN(.(z0, z1)) → c6(U3'(f29_in(z1), .(z0, z1)), F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(U4'(f12_in(z0, z1), .(z0, z1), z2), F12_IN(z0, z1))
F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
U5'(f15_out1(z0), z1, z2) → c12(U6'(f17_in(z2, z0), z1, z2, z0), F17_IN(z2, z0))
S tuples:

F2_IN(.(z0, z1)) → c1(U1'(f12_in(z0, z1), .(z0, z1)), F12_IN(z0, z1))
F29_IN(.(z0, z1)) → c4(U2'(f29_in(z1), .(z0, z1)), F29_IN(z1))
F15_IN(.(z0, z1)) → c6(U3'(f29_in(z1), .(z0, z1)), F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(U4'(f12_in(z0, z1), .(z0, z1), z2), F12_IN(z0, z1))
F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
U5'(f15_out1(z0), z1, z2) → c12(U6'(f17_in(z2, z0), z1, z2, z0), F17_IN(z2, z0))
K tuples:none
Defined Rule Symbols:

f2_in, U1, f29_in, U2, f15_in, U3, f17_in, U4, f12_in, U5, U6

Defined Pair Symbols:

F2_IN, F29_IN, F15_IN, F17_IN, F12_IN, U5'

Compound Symbols:

c1, c4, c6, c9, c11, c12

(21) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID) transformation)

Split RHS of tuples not part of any SCC

(22) Obligation:

Complexity Dependency Tuples Problem
Rules:

f2_in([]) → f2_out1
f2_in(.(z0, z1)) → U1(f12_in(z0, z1), .(z0, z1))
U1(f12_out1(z0), .(z1, z2)) → f2_out1
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
f17_in([], z0) → f17_out1
f17_in(.(z0, z1), z2) → U4(f12_in(z0, z1), .(z0, z1), z2)
U4(f12_out1(z0), .(z1, z2), z3) → f17_out1
f12_in(z0, z1) → U5(f15_in(z0), z0, z1)
U5(f15_out1(z0), z1, z2) → U6(f17_in(z2, z0), z1, z2, z0)
U6(f17_out1, z0, z1, z2) → f12_out1(z2)
Tuples:

F29_IN(.(z0, z1)) → c4(U2'(f29_in(z1), .(z0, z1)), F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(U4'(f12_in(z0, z1), .(z0, z1), z2), F12_IN(z0, z1))
F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
U5'(f15_out1(z0), z1, z2) → c12(U6'(f17_in(z2, z0), z1, z2, z0), F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c(U1'(f12_in(z0, z1), .(z0, z1)))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(U3'(f29_in(z1), .(z0, z1)))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
S tuples:

F29_IN(.(z0, z1)) → c4(U2'(f29_in(z1), .(z0, z1)), F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(U4'(f12_in(z0, z1), .(z0, z1), z2), F12_IN(z0, z1))
F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
U5'(f15_out1(z0), z1, z2) → c12(U6'(f17_in(z2, z0), z1, z2, z0), F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c(U1'(f12_in(z0, z1), .(z0, z1)))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(U3'(f29_in(z1), .(z0, z1)))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
K tuples:none
Defined Rule Symbols:

f2_in, U1, f29_in, U2, f15_in, U3, f17_in, U4, f12_in, U5, U6

Defined Pair Symbols:

F29_IN, F17_IN, F12_IN, U5', F2_IN, F15_IN

Compound Symbols:

c4, c9, c11, c12, c

(23) CdtGraphRemoveTrailingTuplepartsProof (BOTH BOUNDS(ID, ID) transformation)

Removed 5 trailing tuple parts

(24) Obligation:

Complexity Dependency Tuples Problem
Rules:

f2_in([]) → f2_out1
f2_in(.(z0, z1)) → U1(f12_in(z0, z1), .(z0, z1))
U1(f12_out1(z0), .(z1, z2)) → f2_out1
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
f17_in([], z0) → f17_out1
f17_in(.(z0, z1), z2) → U4(f12_in(z0, z1), .(z0, z1), z2)
U4(f12_out1(z0), .(z1, z2), z3) → f17_out1
f12_in(z0, z1) → U5(f15_in(z0), z0, z1)
U5(f15_out1(z0), z1, z2) → U6(f17_in(z2, z0), z1, z2, z0)
U6(f17_out1, z0, z1, z2) → f12_out1(z2)
Tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c
S tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c
K tuples:none
Defined Rule Symbols:

f2_in, U1, f29_in, U2, f15_in, U3, f17_in, U4, f12_in, U5, U6

Defined Pair Symbols:

F12_IN, F2_IN, F15_IN, F29_IN, F17_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(25) CdtKnowledgeProof (EQUIVALENT transformation)

The following tuples could be moved from S to K by knowledge propagation:

F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F2_IN(.(z0, z1)) → c

(26) Obligation:

Complexity Dependency Tuples Problem
Rules:

f2_in([]) → f2_out1
f2_in(.(z0, z1)) → U1(f12_in(z0, z1), .(z0, z1))
U1(f12_out1(z0), .(z1, z2)) → f2_out1
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
f17_in([], z0) → f17_out1
f17_in(.(z0, z1), z2) → U4(f12_in(z0, z1), .(z0, z1), z2)
U4(f12_out1(z0), .(z1, z2), z3) → f17_out1
f12_in(z0, z1) → U5(f15_in(z0), z0, z1)
U5(f15_out1(z0), z1, z2) → U6(f17_in(z2, z0), z1, z2, z0)
U6(f17_out1, z0, z1, z2) → f12_out1(z2)
Tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c
S tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F15_IN(.(z0, z1)) → c
K tuples:

F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F2_IN(.(z0, z1)) → c
Defined Rule Symbols:

f2_in, U1, f29_in, U2, f15_in, U3, f17_in, U4, f12_in, U5, U6

Defined Pair Symbols:

F12_IN, F2_IN, F15_IN, F29_IN, F17_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(27) CdtPolyRedPairProof (UPPER BOUND (ADD(O(n^1))) transformation)

Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S.

F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
We considered the (Usable) Rules:

f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
And the Tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c
The order we found is given by the following interpretation:
Polynomial interpretation :

POL(.(x1, x2)) = [1] + x2   
POL(F12_IN(x1, x2)) = [2]x2   
POL(F15_IN(x1)) = 0   
POL(F17_IN(x1, x2)) = [2]x1   
POL(F29_IN(x1)) = 0   
POL(F2_IN(x1)) = [2]x1   
POL(U2(x1, x2)) = 0   
POL(U3(x1, x2)) = 0   
POL(U5'(x1, x2, x3)) = [2]x3   
POL([]) = 0   
POL(c) = 0   
POL(c(x1)) = x1   
POL(c11(x1, x2)) = x1 + x2   
POL(c12(x1)) = x1   
POL(c4(x1)) = x1   
POL(c9(x1)) = x1   
POL(f15_in(x1)) = [1]   
POL(f15_out1(x1)) = 0   
POL(f29_in(x1)) = 0   
POL(f29_out1(x1)) = 0   

(28) Obligation:

Complexity Dependency Tuples Problem
Rules:

f2_in([]) → f2_out1
f2_in(.(z0, z1)) → U1(f12_in(z0, z1), .(z0, z1))
U1(f12_out1(z0), .(z1, z2)) → f2_out1
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
f17_in([], z0) → f17_out1
f17_in(.(z0, z1), z2) → U4(f12_in(z0, z1), .(z0, z1), z2)
U4(f12_out1(z0), .(z1, z2), z3) → f17_out1
f12_in(z0, z1) → U5(f15_in(z0), z0, z1)
U5(f15_out1(z0), z1, z2) → U6(f17_in(z2, z0), z1, z2, z0)
U6(f17_out1, z0, z1, z2) → f12_out1(z2)
Tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c
S tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F15_IN(.(z0, z1)) → c
K tuples:

F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F2_IN(.(z0, z1)) → c
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
Defined Rule Symbols:

f2_in, U1, f29_in, U2, f15_in, U3, f17_in, U4, f12_in, U5, U6

Defined Pair Symbols:

F12_IN, F2_IN, F15_IN, F29_IN, F17_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(29) CdtKnowledgeProof (EQUIVALENT transformation)

The following tuples could be moved from S to K by knowledge propagation:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F15_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c(F29_IN(z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F15_IN(.(z0, z1)) → c
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))

(30) Obligation:

Complexity Dependency Tuples Problem
Rules:

f2_in([]) → f2_out1
f2_in(.(z0, z1)) → U1(f12_in(z0, z1), .(z0, z1))
U1(f12_out1(z0), .(z1, z2)) → f2_out1
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
f17_in([], z0) → f17_out1
f17_in(.(z0, z1), z2) → U4(f12_in(z0, z1), .(z0, z1), z2)
U4(f12_out1(z0), .(z1, z2), z3) → f17_out1
f12_in(z0, z1) → U5(f15_in(z0), z0, z1)
U5(f15_out1(z0), z1, z2) → U6(f17_in(z2, z0), z1, z2, z0)
U6(f17_out1, z0, z1, z2) → f12_out1(z2)
Tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c
S tuples:

F29_IN(.(z0, z1)) → c4(F29_IN(z1))
K tuples:

F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F2_IN(.(z0, z1)) → c
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F15_IN(.(z0, z1)) → c
Defined Rule Symbols:

f2_in, U1, f29_in, U2, f15_in, U3, f17_in, U4, f12_in, U5, U6

Defined Pair Symbols:

F12_IN, F2_IN, F15_IN, F29_IN, F17_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c

(31) CdtPolyRedPairProof (UPPER BOUND (ADD(O(n^1))) transformation)

Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S.

F29_IN(.(z0, z1)) → c4(F29_IN(z1))
We considered the (Usable) Rules:

f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
And the Tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c
The order we found is given by the following interpretation:
Polynomial interpretation :

POL(.(x1, x2)) = [1] + x1 + x2   
POL(F12_IN(x1, x2)) = [1] + x1 + x2   
POL(F15_IN(x1)) = [1] + x1   
POL(F17_IN(x1, x2)) = x1   
POL(F29_IN(x1)) = [2] + x1   
POL(F2_IN(x1)) = [3] + x1   
POL(U2(x1, x2)) = 0   
POL(U3(x1, x2)) = 0   
POL(U5'(x1, x2, x3)) = x3   
POL([]) = 0   
POL(c) = 0   
POL(c(x1)) = x1   
POL(c11(x1, x2)) = x1 + x2   
POL(c12(x1)) = x1   
POL(c4(x1)) = x1   
POL(c9(x1)) = x1   
POL(f15_in(x1)) = 0   
POL(f15_out1(x1)) = 0   
POL(f29_in(x1)) = 0   
POL(f29_out1(x1)) = 0   

(32) Obligation:

Complexity Dependency Tuples Problem
Rules:

f2_in([]) → f2_out1
f2_in(.(z0, z1)) → U1(f12_in(z0, z1), .(z0, z1))
U1(f12_out1(z0), .(z1, z2)) → f2_out1
f29_in([]) → f29_out1([])
f29_in(.(z0, z1)) → U2(f29_in(z1), .(z0, z1))
U2(f29_out1(z0), .(z1, z2)) → f29_out1(.([], z0))
f15_in(.(z0, z1)) → U3(f29_in(z1), .(z0, z1))
U3(f29_out1(z0), .(z1, z2)) → f15_out1(.([], z0))
f17_in([], z0) → f17_out1
f17_in(.(z0, z1), z2) → U4(f12_in(z0, z1), .(z0, z1), z2)
U4(f12_out1(z0), .(z1, z2), z3) → f17_out1
f12_in(z0, z1) → U5(f15_in(z0), z0, z1)
U5(f15_out1(z0), z1, z2) → U6(f17_in(z2, z0), z1, z2, z0)
U6(f17_out1, z0, z1, z2) → f12_out1(z2)
Tuples:

F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F2_IN(.(z0, z1)) → c
F15_IN(.(z0, z1)) → c
S tuples:none
K tuples:

F2_IN(.(z0, z1)) → c(F12_IN(z0, z1))
F2_IN(.(z0, z1)) → c
F17_IN(.(z0, z1), z2) → c9(F12_IN(z0, z1))
F12_IN(z0, z1) → c11(U5'(f15_in(z0), z0, z1), F15_IN(z0))
F15_IN(.(z0, z1)) → c(F29_IN(z1))
U5'(f15_out1(z0), z1, z2) → c12(F17_IN(z2, z0))
F15_IN(.(z0, z1)) → c
F29_IN(.(z0, z1)) → c4(F29_IN(z1))
Defined Rule Symbols:

f2_in, U1, f29_in, U2, f15_in, U3, f17_in, U4, f12_in, U5, U6

Defined Pair Symbols:

F12_IN, F2_IN, F15_IN, F29_IN, F17_IN, U5'

Compound Symbols:

c11, c, c4, c9, c12, c