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 = 5] mark(length(zeros)) -> mark(length(zeros)) Let l be the left-hand side and r be the right-hand side of this rule. Let p = epsilon, theta1 = {} and theta2 = {}. We have r|p = mark(length(zeros)) and theta2(theta1(l)) = theta1(r|p). Hence, the term theta1(l) = mark(length(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! ## Applying the DP framework... ## Round 1: ## DP problem: Dependency pairs = [active^#(zeros) -> mark^#(cons(0,zeros)), mark^#(zeros) -> active^#(zeros), active^#(and(tt,_0)) -> mark^#(_0), mark^#(cons(_0,_1)) -> active^#(cons(mark(_0),_1)), active^#(length(cons(_0,_1))) -> mark^#(s(length(_1))), mark^#(and(_0,_1)) -> active^#(and(mark(_0),_1)), active^#(take(s(_0),cons(_1,_2))) -> mark^#(cons(_1,take(_0,_2))), mark^#(take(_0,_1)) -> active^#(take(mark(_0),mark(_1))), mark^#(s(_0)) -> active^#(s(mark(_0))), mark^#(length(_0)) -> active^#(length(mark(_0))), mark^#(cons(_0,_1)) -> mark^#(_0), mark^#(and(_0,_1)) -> mark^#(_0), mark^#(length(_0)) -> mark^#(_0), mark^#(s(_0)) -> mark^#(_0), mark^#(take(_0,_1)) -> mark^#(_0), mark^#(take(_0,_1)) -> mark^#(_1)] TRS = {active(zeros) -> mark(cons(0,zeros)), active(and(tt,_0)) -> mark(_0), active(length(nil)) -> mark(0), active(length(cons(_0,_1))) -> mark(s(length(_1))), active(take(0,_0)) -> mark(nil), active(take(s(_0),cons(_1,_2))) -> mark(cons(_1,take(_0,_2))), mark(zeros) -> active(zeros), mark(cons(_0,_1)) -> active(cons(mark(_0),_1)), mark(0) -> active(0), mark(and(_0,_1)) -> active(and(mark(_0),_1)), mark(tt) -> active(tt), mark(length(_0)) -> active(length(mark(_0))), mark(nil) -> active(nil), mark(s(_0)) -> active(s(mark(_0))), mark(take(_0,_1)) -> active(take(mark(_0),mark(_1))), cons(mark(_0),_1) -> cons(_0,_1), cons(_0,mark(_1)) -> cons(_0,_1), cons(active(_0),_1) -> cons(_0,_1), cons(_0,active(_1)) -> cons(_0,_1), and(mark(_0),_1) -> and(_0,_1), and(_0,mark(_1)) -> and(_0,_1), and(active(_0),_1) -> and(_0,_1), and(_0,active(_1)) -> and(_0,_1), length(mark(_0)) -> length(_0), length(active(_0)) -> length(_0), s(mark(_0)) -> s(_0), s(active(_0)) -> s(_0), take(mark(_0),_1) -> take(_0,_1), take(_0,mark(_1)) -> take(_0,_1), take(active(_0),_1) -> take(_0,_1), take(_0,active(_1)) -> take(_0,_1)} ## Trying with homeomorphic embeddings... Failed! ## Trying with polynomial interpretations... Too many coefficients (25)! Aborting! ## Trying with lexicographic path orders... Failed! ## Trying to prove nontermination by unfolding the dependency pairs with the rules of the TRS # max_depth=20, unfold_variables=false: # Iteration 0: nontermination not detected, 16 unfolded rules generated. # Iteration 1: nontermination not detected, 173 unfolded rules generated. # Iteration 2: nontermination not detected, 1445 unfolded rules generated. # Iteration 3: nontermination not detected, 14808 unfolded rules generated. # Iteration 4: nontermination not detected, 160306 unfolded rules generated. # Iteration 5: nontermination detected, 486277 unfolded rules generated. Here is the successful unfolding. Let IR be the TRS under analysis. L0 = mark^#(length(_0)) -> active^#(length(mark(_0))) [trans] is in U_IR^0. D = active^#(length(cons(_0,_1))) -> mark^#(s(length(_1))) is a dependency pair of IR. We build a composed triple from L0 and D. ==> L1 = [mark^#(length(_0)) -> active^#(length(mark(_0))), active^#(length(cons(_1,_2))) -> mark^#(s(length(_2)))] [comp] is in U_IR^1. Let p1 = [0]. We unfold the second rule of L1 backwards at position p1 with the rule length(mark(_0)) -> length(_0). ==> L2 = [mark^#(length(_0)) -> active^#(length(mark(_0))), active^#(length(mark(cons(_1,_2)))) -> mark^#(s(length(_2)))] [comp] is in U_IR^2. Let p2 = [0, 0]. We unfold the first rule of L2 forwards at position p2 with the rule mark(zeros) -> active(zeros). ==> L3 = [mark^#(length(zeros)) -> active^#(length(active(zeros))), active^#(length(mark(cons(_0,_1)))) -> mark^#(s(length(_1)))] [comp] is in U_IR^3. Let p3 = [0, 0]. We unfold the first rule of L3 forwards at position p3 with the rule active(zeros) -> mark(cons(0,zeros)). ==> L4 = mark^#(length(zeros)) -> mark^#(s(length(zeros))) [trans] is in U_IR^4. D = mark^#(s(_0)) -> mark^#(_0) is a dependency pair of IR. We build a composed triple from L4 and D. ==> L5 = mark^#(length(zeros)) -> mark^#(length(zeros)) [trans] is in U_IR^5. This DP problem is infinite. ** END proof description ** Proof stopped at iteration 5 Number of unfolded rules generated by this proof = 663025 Number of unfolded rules generated by all the parallel proofs = 1758363