NO Prover = TRS(tech=GUIDED_UNF, nb_unfoldings=unlimited, unfold_variables=true, strategy=LEFTMOST_NE) ** BEGIN proof argument ** The following rule was generated while unfolding the analyzed TRS: [iteration = 6] length(cons(_0,n__zeros)) -> length(cons(0,n__zeros)) Let l be the left-hand side and r be the right-hand side of this rule. Let p = epsilon, theta1 = {} and theta2 = {_0->0}. We have r|p = length(cons(0,n__zeros)) and theta2(theta1(l)) = theta1(r|p). Hence, the term theta1(l) = length(cons(_0,n__zeros)) loops w.r.t. the analyzed TRS. ** END proof argument ** ** BEGIN proof description ** ## Searching for a generalized rewrite rule (a rule whose right-hand side contains a variable that does not occur in the left-hand side)... No generalized rewrite rule found! ## Searching for a loop by unfolding (unfolding of variable subterms: ON)... # Iteration 0: no loop detected, 1 unfolded rule generated. # Iteration 1: no loop detected, 1 unfolded rule generated. # Iteration 2: no loop detected, 1 unfolded rule generated. # Iteration 3: no loop detected, 6 unfolded rules generated. # Iteration 4: no loop detected, 36 unfolded rules generated. # Iteration 5: no loop detected, 172 unfolded rules generated. # Iteration 6: loop detected, 1 unfolded rule generated. Here is the successful unfolding. Let IR be the TRS under analysis. L0 = [length^#(cons(_0,_1)) -> U11^#(tt,activate(_1)), U11^#(tt,_2) -> U12^#(tt,activate(_2)), U12^#(tt,_3) -> length^#(activate(_3))] is in U_IR^0. We merge the first and the second rule of L0. ==> L1 = [length^#(cons(_0,_1)) -> U12^#(tt,activate(activate(_1))), U12^#(tt,_2) -> length^#(activate(_2))] is in U_IR^1. We merge the first and the second rule of L1. ==> L2 = length^#(cons(_0,_1)) -> length^#(activate(activate(activate(_1)))) is in U_IR^2. Let p2 = [0]. We unfold the rule of L2 forwards at position p2 with the rule activate(_0) -> _0. ==> L3 = length^#(cons(_0,_1)) -> length^#(activate(activate(_1))) is in U_IR^3. Let p3 = [0]. We unfold the rule of L3 forwards at position p3 with the rule activate(_0) -> _0. ==> L4 = length^#(cons(_0,_1)) -> length^#(activate(_1)) is in U_IR^4. Let p4 = [0]. We unfold the rule of L4 forwards at position p4 with the rule activate(n__zeros) -> zeros. ==> L5 = length^#(cons(_0,n__zeros)) -> length^#(zeros) is in U_IR^5. Let p5 = [0]. We unfold the rule of L5 forwards at position p5 with the rule zeros -> cons(0,n__zeros). ==> L6 = length^#(cons(_0,n__zeros)) -> length^#(cons(0,n__zeros)) is in U_IR^6. ** END proof description ** Proof stopped at iteration 6 Number of unfolded rules generated by this proof = 218 Number of unfolded rules generated by all the parallel proofs = 390