NO Prover = TRS(tech=GUIDED_UNF_TRIPLES, nb_unfoldings=unlimited, unfold_variables=false, max_nb_coefficients=12, max_nb_unfolded_rules=-1, strategy=LEFTMOST_NE) ** BEGIN proof argument ** The following rule was generated while unfolding the analyzed TRS: [iteration = 6] length(n__cons(_0,n__from(_1))) -> length(n__cons(_1,n__from(s(_1)))) Let l be the left-hand side and r be the right-hand side of this rule. Let p = epsilon, theta1 = {_2->_1} and theta2 = {_2->s(_2), _0->_2}. We have r|p = length(n__cons(_1,n__from(s(_1)))) and theta2(theta1(l)) = theta1(r|p). Hence, the term theta1(l) = length(n__cons(_0,n__from(_1))) 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! ## Applying the DP framework... ## Round 1: ## DP problem: Dependency pairs = [length^#(n__cons(_0,_1)) -> length1^#(activate(_1)), length1^#(_0) -> length^#(activate(_0))] TRS = {from(_0) -> cons(_0,n__from(s(_0))), length(n__nil) -> 0, length(n__cons(_0,_1)) -> s(length1(activate(_1))), length1(_0) -> length(activate(_0)), from(_0) -> n__from(_0), nil -> n__nil, cons(_0,_1) -> n__cons(_0,_1), activate(n__from(_0)) -> from(_0), activate(n__nil) -> nil, activate(n__cons(_0,_1)) -> cons(_0,_1), activate(_0) -> _0} ## Trying with homeomorphic embeddings... Failed! ## Trying with polynomial interpretations... Too many coefficients (24)! Aborting! ## Trying with lexicographic path orders... Failed! ## Trying to prove nontermination by unfolding the dependency pairs with the rules of the TRS # max_depth=3, unfold_variables=false: # Iteration 0: nontermination not detected, 2 unfolded rules generated. # Iteration 1: nontermination not detected, 3 unfolded rules generated. # Iteration 2: nontermination not detected, 10 unfolded rules generated. # Iteration 3: nontermination not detected, 5 unfolded rules generated. # Iteration 4: nontermination not detected, 9 unfolded rules generated. # Iteration 5: nontermination not detected, 2 unfolded rules generated. # Iteration 6: nontermination not detected, 0 unfolded rule generated. Nontermination not detected! # max_depth=3, unfold_variables=true: # Iteration 0: nontermination not detected, 2 unfolded rules generated. # Iteration 1: nontermination not detected, 3 unfolded rules generated. # Iteration 2: nontermination not detected, 10 unfolded rules generated. # Iteration 3: nontermination not detected, 5 unfolded rules generated. # Iteration 4: nontermination not detected, 9 unfolded rules generated. # Iteration 5: nontermination not detected, 2 unfolded rules generated. # Iteration 6: nontermination not detected, 0 unfolded rule generated. Nontermination not detected! # max_depth=4, unfold_variables=false: # Iteration 0: nontermination not detected, 2 unfolded rules generated. # Iteration 1: nontermination not detected, 3 unfolded rules generated. # Iteration 2: nontermination not detected, 10 unfolded rules generated. # Iteration 3: nontermination not detected, 5 unfolded rules generated. # Iteration 4: nontermination not detected, 9 unfolded rules generated. # Iteration 5: nontermination not detected, 5 unfolded rules generated. # Iteration 6: nontermination detected, 1 unfolded rule generated. Here is the successful unfolding. Let IR be the TRS under analysis. L0 = length^#(n__cons(_0,_1)) -> length1^#(activate(_1)) [trans] is in U_IR^0. D = length1^#(_0) -> length^#(activate(_0)) is a dependency pair of IR. We build a composed triple from L0 and D. ==> L1 = length^#(n__cons(_0,_1)) -> length^#(activate(activate(_1))) [trans] is in U_IR^1. We build a unit triple from L1. ==> L2 = length^#(n__cons(_0,_1)) -> length^#(activate(activate(_1))) [unit] 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^#(n__cons(_0,_1)) -> length^#(activate(_1)) [unit] is in U_IR^3. Let p3 = [0]. We unfold the rule of L3 forwards at position p3 with the rule activate(n__from(_0)) -> from(_0). ==> L4 = length^#(n__cons(_0,n__from(_1))) -> length^#(from(_1)) [unit] is in U_IR^4. Let p4 = [0]. We unfold the rule of L4 forwards at position p4 with the rule from(_0) -> cons(_0,n__from(s(_0))). ==> L5 = length^#(n__cons(_0,n__from(_1))) -> length^#(cons(_1,n__from(s(_1)))) [unit] is in U_IR^5. Let p5 = [0]. We unfold the rule of L5 forwards at position p5 with the rule cons(_0,_1) -> n__cons(_0,_1). ==> L6 = length^#(n__cons(_0,n__from(_1))) -> length^#(n__cons(_1,n__from(s(_1)))) [unit] is in U_IR^6. This DP problem is infinite. ** END proof description ** Proof stopped at iteration 6 Number of unfolded rules generated by this proof = 97 Number of unfolded rules generated by all the parallel proofs = 229