- : unit = () h : heuristic = - : unit = () APPLY CRITERIA (Marked dependency pairs) TRS termination of: [1] from(X) -> cons(X,n__from(s(X))) [2] head(cons(X,XS)) -> X [3] 2nd(cons(X,XS)) -> head(activate(XS)) [4] take(0,XS) -> nil [5] take(s(N),cons(X,XS)) -> cons(X,n__take(N,activate(XS))) [6] sel(0,cons(X,XS)) -> X [7] sel(s(N),cons(X,XS)) -> sel(N,activate(XS)) [8] from(X) -> n__from(X) [9] take(X1,X2) -> n__take(X1,X2) [10] activate(n__from(X)) -> from(X) [11] activate(n__take(X1,X2)) -> take(X1,X2) [12] activate(X) -> X Sub problem: guided: DP termination of: END GUIDED APPLY CRITERIA (Graph splitting) Found 2 components: { --> } { --> --> } APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { from(X) >= cons(X,n__from(s(X))) ; from(X) >= n__from(X) ; head(cons(X,XS)) >= X ; activate(n__from(X)) >= from(X) ; activate(n__take(X1,X2)) >= take(X1,X2) ; activate(X) >= X ; 2nd(cons(X,XS)) >= head(activate(XS)) ; take(s(N),cons(X,XS)) >= cons(X,n__take(N,activate(XS))) ; take(0,XS) >= nil ; take(X1,X2) >= n__take(X1,X2) ; sel(s(N),cons(X,XS)) >= sel(N,activate(XS)) ; sel(0,cons(X,XS)) >= X ; Marked_sel(s(N),cons(X,XS)) >= Marked_sel(N,activate(XS)) ; } + Disjunctions:{ { Marked_sel(s(N),cons(X,XS)) > Marked_sel(N,activate(XS)) ; } } === TIMER virtual : 10.000000 === Entering poly_solver Starting Sat solver initialization Calling Sat solver... === STOPING TIMER virtual === === TIMER real : 10.000000 === === STOPING TIMER real === Sat solver returned === STOPING TIMER real === === STOPING TIMER virtual === No solution found for these parameters. Entering rpo_solver === TIMER virtual : 25.000000 === Search parameters: AFS type: 2 ; time limit: 25.. === STOPING TIMER virtual === === STOPING TIMER virtual === constraint: from(X) >= cons(X,n__from(s(X))) constraint: from(X) >= n__from(X) constraint: head(cons(X,XS)) >= X constraint: activate(n__from(X)) >= from(X) constraint: activate(n__take(X1,X2)) >= take(X1,X2) constraint: activate(X) >= X constraint: 2nd(cons(X,XS)) >= head(activate(XS)) constraint: take(s(N),cons(X,XS)) >= cons(X,n__take(N,activate(XS))) constraint: take(0,XS) >= nil constraint: take(X1,X2) >= n__take(X1,X2) constraint: sel(s(N),cons(X,XS)) >= sel(N,activate(XS)) constraint: sel(0,cons(X,XS)) >= X constraint: Marked_sel(s(N),cons(X,XS)) >= Marked_sel(N,activate(XS)) APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { from(X) >= cons(X,n__from(s(X))) ; from(X) >= n__from(X) ; head(cons(X,XS)) >= X ; activate(n__from(X)) >= from(X) ; activate(n__take(X1,X2)) >= take(X1,X2) ; activate(X) >= X ; 2nd(cons(X,XS)) >= head(activate(XS)) ; take(s(N),cons(X,XS)) >= cons(X,n__take(N,activate(XS))) ; take(0,XS) >= nil ; take(X1,X2) >= n__take(X1,X2) ; sel(s(N),cons(X,XS)) >= sel(N,activate(XS)) ; sel(0,cons(X,XS)) >= X ; Marked_activate(n__take(X1,X2)) >= Marked_take(X1,X2) ; Marked_take(s(N),cons(X,XS)) >= Marked_activate(XS) ; } + Disjunctions:{ { Marked_activate(n__take(X1,X2)) > Marked_take(X1,X2) ; } { Marked_take(s(N),cons(X,XS)) > Marked_activate(XS) ; } } === TIMER virtual : 10.000000 === Entering poly_solver Starting Sat solver initialization Calling Sat solver... === STOPING TIMER virtual === === TIMER real : 10.000000 === === STOPING TIMER real === Sat solver returned Sat solver result read === STOPING TIMER real === === STOPING TIMER virtual === constraint: from(X) >= cons(X,n__from(s(X))) constraint: from(X) >= n__from(X) constraint: head(cons(X,XS)) >= X constraint: activate(n__from(X)) >= from(X) constraint: activate(n__take(X1,X2)) >= take(X1,X2) constraint: activate(X) >= X constraint: 2nd(cons(X,XS)) >= head(activate(XS)) constraint: take(s(N),cons(X,XS)) >= cons(X,n__take(N,activate(XS))) constraint: take(0,XS) >= nil constraint: take(X1,X2) >= n__take(X1,X2) constraint: sel(s(N),cons(X,XS)) >= sel(N,activate(XS)) constraint: sel(0,cons(X,XS)) >= X constraint: Marked_activate(n__take(X1,X2)) >= Marked_take(X1,X2) constraint: Marked_take(s(N),cons(X,XS)) >= Marked_activate(XS) APPLY CRITERIA (Graph splitting) Found 0 components: APPLY CRITERIA (Graph splitting) Found 0 components: SOLVED { TRS termination of: [1] from(X) -> cons(X,n__from(s(X))) [2] head(cons(X,XS)) -> X [3] 2nd(cons(X,XS)) -> head(activate(XS)) [4] take(0,XS) -> nil [5] take(s(N),cons(X,XS)) -> cons(X,n__take(N,activate(XS))) [6] sel(0,cons(X,XS)) -> X [7] sel(s(N),cons(X,XS)) -> sel(N,activate(XS)) [8] from(X) -> n__from(X) [9] take(X1,X2) -> n__take(X1,X2) [10] activate(n__from(X)) -> from(X) [11] activate(n__take(X1,X2)) -> take(X1,X2) [12] activate(X) -> X , CRITERION: MDP [ { DP termination of: , CRITERION: SG [ { DP termination of: , CRITERION: ORD [ Solution found: RPO with AFS = AFS: and precedence: prec (All symbols are Lex.): { cons < from ; cons < activate ; cons < 2nd ; cons < take ; cons < n__take ; cons < sel ; cons < Marked_sel ; n__from < from ; n__from < activate ; n__from < 2nd ; n__from < take ; n__from < n__take ; n__from < sel ; n__from < Marked_sel ; s < from ; s < activate ; s < 2nd ; s < take ; s < n__take ; s < sel ; s < Marked_sel ; from > cons ; from > n__from ; from > s ; from < activate ; from < 2nd ; from < take ; from < n__take ; from < sel ; from < Marked_sel ; head < 2nd ; activate > cons ; activate > n__from ; activate > s ; activate > from ; activate < 2nd ; activate < take ; activate < n__take ; activate < sel ; activate < Marked_sel ; 2nd > cons ; 2nd > n__from ; 2nd > s ; 2nd > from ; 2nd > head ; 2nd > activate ; nil < take ; nil < n__take ; take > cons ; take > n__from ; take > s ; take > from ; take > activate ; take > nil ; take = n__take ; n__take > cons ; n__take > n__from ; n__take > s ; n__take > from ; n__take > activate ; n__take > nil ; n__take = take ; sel > cons ; sel > n__from ; sel > s ; sel > from ; sel > activate ; Marked_sel > cons ; Marked_sel > n__from ; Marked_sel > s ; Marked_sel > from ; Marked_sel > activate ; } ]} { DP termination of: , CRITERION: CG using polynomial interpretation = [ cons ] (X0,X1) = 2*X1 + 1*X0; [ take ] (X0,X1) = 2*X1 + 2; [ head ] (X0) = 1*X0; [ Marked_activate ] (X0) = 1*X0 + 3; [ s ] (X0) = 0; [ n__take ] (X0,X1) = 1*X1 + 1; [ 2nd ] (X0) = 1*X0; [ n__from ] (X0) = 1*X0; [ 0 ] () = 3; [ activate ] (X0) = 2*X0; [ Marked_take ] (X0,X1) = 1*X1 + 3; [ from ] (X0) = 2*X0; [ sel ] (X0,X1) = 2*X1 + 3; [ nil ] () = 2; removing [ { DP termination of: , CRITERION: SG [ ]} ]} ]} ]} Cime worked for 0.111944 seconds (real time) Cime Exit Status: 0