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 = 4] quote1(n__cons(_0,n__from(_1))) -> quote1(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 = quote1(n__cons(_1,n__from(s(_1)))) and theta2(theta1(l)) = theta1(r|p). Hence, the term theta1(l) = quote1(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 = [unquote1^#(cons1(_0,_1)) -> unquote1^#(_1)] TRS = {sel(s(_0),cons(_1,_2)) -> sel(_0,activate(_2)), sel(0,cons(_0,_1)) -> _0, first(0,_0) -> nil, first(s(_0),cons(_1,_2)) -> cons(_1,n__first(_0,activate(_2))), from(_0) -> cons(_0,n__from(s(_0))), sel1(s(_0),cons(_1,_2)) -> sel1(_0,activate(_2)), sel1(0,cons(_0,_1)) -> quote(_0), first1(0,_0) -> nil1, first1(s(_0),cons(_1,_2)) -> cons1(quote(_1),first1(_0,activate(_2))), quote(n__0) -> 01, quote1(n__cons(_0,_1)) -> cons1(quote(activate(_0)),quote1(activate(_1))), quote1(n__nil) -> nil1, quote(n__s(_0)) -> s1(quote(activate(_0))), quote(n__sel(_0,_1)) -> sel1(activate(_0),activate(_1)), quote1(n__first(_0,_1)) -> first1(activate(_0),activate(_1)), unquote(01) -> 0, unquote(s1(_0)) -> s(unquote(_0)), unquote1(nil1) -> nil, unquote1(cons1(_0,_1)) -> fcons(unquote(_0),unquote1(_1)), fcons(_0,_1) -> cons(_0,_1), first(_0,_1) -> n__first(_0,_1), from(_0) -> n__from(_0), 0 -> n__0, cons(_0,_1) -> n__cons(_0,_1), nil -> n__nil, s(_0) -> n__s(_0), sel(_0,_1) -> n__sel(_0,_1), activate(n__first(_0,_1)) -> first(_0,_1), activate(n__from(_0)) -> from(_0), activate(n__0) -> 0, activate(n__cons(_0,_1)) -> cons(_0,_1), activate(n__nil) -> nil, activate(n__s(_0)) -> s(_0), activate(n__sel(_0,_1)) -> sel(_0,_1), activate(_0) -> _0} ## Trying with homeomorphic embeddings... Success! This DP problem is finite. ## DP problem: Dependency pairs = [unquote^#(s1(_0)) -> unquote^#(_0)] TRS = {sel(s(_0),cons(_1,_2)) -> sel(_0,activate(_2)), sel(0,cons(_0,_1)) -> _0, first(0,_0) -> nil, first(s(_0),cons(_1,_2)) -> cons(_1,n__first(_0,activate(_2))), from(_0) -> cons(_0,n__from(s(_0))), sel1(s(_0),cons(_1,_2)) -> sel1(_0,activate(_2)), sel1(0,cons(_0,_1)) -> quote(_0), first1(0,_0) -> nil1, first1(s(_0),cons(_1,_2)) -> cons1(quote(_1),first1(_0,activate(_2))), quote(n__0) -> 01, quote1(n__cons(_0,_1)) -> cons1(quote(activate(_0)),quote1(activate(_1))), quote1(n__nil) -> nil1, quote(n__s(_0)) -> s1(quote(activate(_0))), quote(n__sel(_0,_1)) -> sel1(activate(_0),activate(_1)), quote1(n__first(_0,_1)) -> first1(activate(_0),activate(_1)), unquote(01) -> 0, unquote(s1(_0)) -> s(unquote(_0)), unquote1(nil1) -> nil, unquote1(cons1(_0,_1)) -> fcons(unquote(_0),unquote1(_1)), fcons(_0,_1) -> cons(_0,_1), first(_0,_1) -> n__first(_0,_1), from(_0) -> n__from(_0), 0 -> n__0, cons(_0,_1) -> n__cons(_0,_1), nil -> n__nil, s(_0) -> n__s(_0), sel(_0,_1) -> n__sel(_0,_1), activate(n__first(_0,_1)) -> first(_0,_1), activate(n__from(_0)) -> from(_0), activate(n__0) -> 0, activate(n__cons(_0,_1)) -> cons(_0,_1), activate(n__nil) -> nil, activate(n__s(_0)) -> s(_0), activate(n__sel(_0,_1)) -> sel(_0,_1), activate(_0) -> _0} ## Trying with homeomorphic embeddings... Success! This DP problem is finite. ## DP problem: Dependency pairs = [quote1^#(n__cons(_0,_1)) -> quote1^#(activate(_1))] TRS = {sel(s(_0),cons(_1,_2)) -> sel(_0,activate(_2)), sel(0,cons(_0,_1)) -> _0, first(0,_0) -> nil, first(s(_0),cons(_1,_2)) -> cons(_1,n__first(_0,activate(_2))), from(_0) -> cons(_0,n__from(s(_0))), sel1(s(_0),cons(_1,_2)) -> sel1(_0,activate(_2)), sel1(0,cons(_0,_1)) -> quote(_0), first1(0,_0) -> nil1, first1(s(_0),cons(_1,_2)) -> cons1(quote(_1),first1(_0,activate(_2))), quote(n__0) -> 01, quote1(n__cons(_0,_1)) -> cons1(quote(activate(_0)),quote1(activate(_1))), quote1(n__nil) -> nil1, quote(n__s(_0)) -> s1(quote(activate(_0))), quote(n__sel(_0,_1)) -> sel1(activate(_0),activate(_1)), quote1(n__first(_0,_1)) -> first1(activate(_0),activate(_1)), unquote(01) -> 0, unquote(s1(_0)) -> s(unquote(_0)), unquote1(nil1) -> nil, unquote1(cons1(_0,_1)) -> fcons(unquote(_0),unquote1(_1)), fcons(_0,_1) -> cons(_0,_1), first(_0,_1) -> n__first(_0,_1), from(_0) -> n__from(_0), 0 -> n__0, cons(_0,_1) -> n__cons(_0,_1), nil -> n__nil, s(_0) -> n__s(_0), sel(_0,_1) -> n__sel(_0,_1), activate(n__first(_0,_1)) -> first(_0,_1), activate(n__from(_0)) -> from(_0), activate(n__0) -> 0, activate(n__cons(_0,_1)) -> cons(_0,_1), activate(n__nil) -> nil, activate(n__s(_0)) -> s(_0), activate(n__sel(_0,_1)) -> sel(_0,_1), activate(_0) -> _0} ## Trying with homeomorphic embeddings... Failed! ## Trying with polynomial interpretations... Too many coefficients (67)! Aborting! ## Trying with lexicographic path orders... Too many argument filtering possibilities (60466176)! Aborting! ## 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, 1 unfolded rule generated. # Iteration 1: nontermination not detected, 1 unfolded rule generated. # Iteration 2: nontermination not detected, 4 unfolded rules generated. # Iteration 3: nontermination not detected, 0 unfolded rule generated. Nontermination not detected! # max_depth=3, unfold_variables=true: # Iteration 0: nontermination not detected, 1 unfolded rule generated. # Iteration 1: nontermination not detected, 1 unfolded rule generated. # Iteration 2: nontermination not detected, 4 unfolded rules generated. # Iteration 3: nontermination not detected, 0 unfolded rule generated. Nontermination not detected! # max_depth=4, unfold_variables=false: # Iteration 0: nontermination not detected, 1 unfolded rule generated. # Iteration 1: nontermination not detected, 1 unfolded rule generated. # Iteration 2: nontermination not detected, 4 unfolded rules generated. # Iteration 3: nontermination not detected, 3 unfolded rules generated. # Iteration 4: nontermination detected, 5 unfolded rules generated. Here is the successful unfolding. Let IR be the TRS under analysis. L0 = quote1^#(n__cons(_0,_1)) -> quote1^#(activate(_1)) [trans] is in U_IR^0. We build a unit triple from L0. ==> L1 = quote1^#(n__cons(_0,_1)) -> quote1^#(activate(_1)) [unit] is in U_IR^1. Let p1 = [0]. We unfold the rule of L1 forwards at position p1 with the rule activate(n__from(_0)) -> from(_0). ==> L2 = quote1^#(n__cons(_0,n__from(_1))) -> quote1^#(from(_1)) [unit] is in U_IR^2. Let p2 = [0]. We unfold the rule of L2 forwards at position p2 with the rule from(_0) -> cons(_0,n__from(s(_0))). ==> L3 = quote1^#(n__cons(_0,n__from(_1))) -> quote1^#(cons(_1,n__from(s(_1)))) [unit] is in U_IR^3. Let p3 = [0]. We unfold the rule of L3 forwards at position p3 with the rule cons(_0,_1) -> n__cons(_0,_1). ==> L4 = quote1^#(n__cons(_0,n__from(_1))) -> quote1^#(n__cons(_1,n__from(s(_1)))) [unit] is in U_IR^4. This DP problem is infinite. ** END proof description ** Proof stopped at iteration 4 Number of unfolded rules generated by this proof = 26 Number of unfolded rules generated by all the parallel proofs = 194