- : unit = () h : heuristic = - : unit = () APPLY CRITERIA (Marked dependency pairs) TRS termination of: [1] eq(0,0) -> true [2] eq(0,s(Y)) -> false [3] eq(s(X),0) -> false [4] eq(s(X),s(Y)) -> eq(X,Y) [5] le(0,Y) -> true [6] le(s(X),0) -> false [7] le(s(X),s(Y)) -> le(X,Y) [8] min(cons(0,nil)) -> 0 [9] min(cons(s(N),nil)) -> s(N) [10] min(cons(N,cons(M,L))) -> ifmin(le(N,M),cons(N,cons(M,L))) [11] ifmin(true,cons(N,cons(M,L))) -> min(cons(N,L)) [12] ifmin(false,cons(N,cons(M,L))) -> min(cons(M,L)) [13] replace(N,M,nil) -> nil [14] replace(N,M,cons(K,L)) -> ifrepl(eq(N,K),N,M,cons(K,L)) [15] ifrepl(true,N,M,cons(K,L)) -> cons(M,L) [16] ifrepl(false,N,M,cons(K,L)) -> cons(K,replace(N,M,L)) [17] selsort(nil) -> nil [18] selsort(cons(N,L)) -> ifselsort(eq(N,min(cons(N,L))),cons(N,L)) [19] ifselsort(true,cons(N,L)) -> cons(N,selsort(L)) [20] ifselsort(false,cons(N,L)) -> cons(min(cons(N,L)),selsort(replace(min(cons(N,L)),N,L))) Sub problem: guided: DP termination of: END GUIDED APPLY CRITERIA (Graph splitting) Found 5 components: { --> --> --> --> } { --> --> } { --> } { --> --> --> --> } { --> } APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { eq(0,0) >= true ; eq(0,s(Y)) >= false ; eq(s(X),0) >= false ; eq(s(X),s(Y)) >= eq(X,Y) ; le(0,Y) >= true ; le(s(X),0) >= false ; le(s(X),s(Y)) >= le(X,Y) ; min(cons(0,nil)) >= 0 ; min(cons(s(N),nil)) >= s(N) ; min(cons(N,cons(M,L))) >= ifmin(le(N,M),cons(N,cons(M,L))) ; ifmin(true,cons(N,cons(M,L))) >= min(cons(N,L)) ; ifmin(false,cons(N,cons(M,L))) >= min(cons(M,L)) ; replace(N,M,cons(K,L)) >= ifrepl(eq(N,K),N,M,cons(K,L)) ; replace(N,M,nil) >= nil ; ifrepl(true,N,M,cons(K,L)) >= cons(M,L) ; ifrepl(false,N,M,cons(K,L)) >= cons(K,replace(N,M,L)) ; selsort(cons(N,L)) >= ifselsort(eq(N,min(cons(N,L))),cons(N,L)) ; selsort(nil) >= nil ; ifselsort(true,cons(N,L)) >= cons(N,selsort(L)) ; ifselsort(false,cons(N,L)) >= cons(min(cons(N,L)), selsort(replace(min(cons(N,L)),N,L))) ; Marked_ifselsort(true,cons(N,L)) >= Marked_selsort(L) ; Marked_ifselsort(false,cons(N,L)) >= Marked_selsort(replace(min(cons(N,L)), N,L)) ; Marked_selsort(cons(N,L)) >= Marked_ifselsort(eq(N,min(cons(N,L))),cons(N,L)) ; } + Disjunctions:{ { Marked_ifselsort(true,cons(N,L)) > Marked_selsort(L) ; } { Marked_ifselsort(false,cons(N,L)) > Marked_selsort(replace(min(cons(N,L)), N,L)) ; } { Marked_selsort(cons(N,L)) > Marked_ifselsort(eq(N,min(cons(N,L))),cons(N,L)) ; } } === 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: eq(0,0) >= true constraint: eq(0,s(Y)) >= false constraint: eq(s(X),0) >= false constraint: eq(s(X),s(Y)) >= eq(X,Y) constraint: le(0,Y) >= true constraint: le(s(X),0) >= false constraint: le(s(X),s(Y)) >= le(X,Y) constraint: min(cons(0,nil)) >= 0 constraint: min(cons(s(N),nil)) >= s(N) constraint: min(cons(N,cons(M,L))) >= ifmin(le(N,M),cons(N,cons(M,L))) constraint: ifmin(true,cons(N,cons(M,L))) >= min(cons(N,L)) constraint: ifmin(false,cons(N,cons(M,L))) >= min(cons(M,L)) constraint: replace(N,M,cons(K,L)) >= ifrepl(eq(N,K),N,M,cons(K,L)) constraint: replace(N,M,nil) >= nil constraint: ifrepl(true,N,M,cons(K,L)) >= cons(M,L) constraint: ifrepl(false,N,M,cons(K,L)) >= cons(K,replace(N,M,L)) constraint: selsort(cons(N,L)) >= ifselsort(eq(N,min(cons(N,L))),cons(N,L)) constraint: selsort(nil) >= nil constraint: ifselsort(true,cons(N,L)) >= cons(N,selsort(L)) constraint: ifselsort(false,cons(N,L)) >= cons(min(cons(N,L)), selsort(replace(min(cons(N,L)),N,L))) constraint: Marked_ifselsort(true,cons(N,L)) >= Marked_selsort(L) constraint: Marked_ifselsort(false,cons(N,L)) >= Marked_selsort(replace( min( cons(N,L)), N,L)) constraint: Marked_selsort(cons(N,L)) >= Marked_ifselsort(eq(N,min(cons(N,L))), cons(N,L)) APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { eq(0,0) >= true ; eq(0,s(Y)) >= false ; eq(s(X),0) >= false ; eq(s(X),s(Y)) >= eq(X,Y) ; le(0,Y) >= true ; le(s(X),0) >= false ; le(s(X),s(Y)) >= le(X,Y) ; min(cons(0,nil)) >= 0 ; min(cons(s(N),nil)) >= s(N) ; min(cons(N,cons(M,L))) >= ifmin(le(N,M),cons(N,cons(M,L))) ; ifmin(true,cons(N,cons(M,L))) >= min(cons(N,L)) ; ifmin(false,cons(N,cons(M,L))) >= min(cons(M,L)) ; replace(N,M,cons(K,L)) >= ifrepl(eq(N,K),N,M,cons(K,L)) ; replace(N,M,nil) >= nil ; ifrepl(true,N,M,cons(K,L)) >= cons(M,L) ; ifrepl(false,N,M,cons(K,L)) >= cons(K,replace(N,M,L)) ; selsort(cons(N,L)) >= ifselsort(eq(N,min(cons(N,L))),cons(N,L)) ; selsort(nil) >= nil ; ifselsort(true,cons(N,L)) >= cons(N,selsort(L)) ; ifselsort(false,cons(N,L)) >= cons(min(cons(N,L)), selsort(replace(min(cons(N,L)),N,L))) ; Marked_replace(N,M,cons(K,L)) >= Marked_ifrepl(eq(N,K),N,M,cons(K,L)) ; Marked_ifrepl(false,N,M,cons(K,L)) >= Marked_replace(N,M,L) ; } + Disjunctions:{ { Marked_replace(N,M,cons(K,L)) > Marked_ifrepl(eq(N,K),N,M,cons(K,L)) ; } { Marked_ifrepl(false,N,M,cons(K,L)) > Marked_replace(N,M,L) ; } } === 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: eq(0,0) >= true constraint: eq(0,s(Y)) >= false constraint: eq(s(X),0) >= false constraint: eq(s(X),s(Y)) >= eq(X,Y) constraint: le(0,Y) >= true constraint: le(s(X),0) >= false constraint: le(s(X),s(Y)) >= le(X,Y) constraint: min(cons(0,nil)) >= 0 constraint: min(cons(s(N),nil)) >= s(N) constraint: min(cons(N,cons(M,L))) >= ifmin(le(N,M),cons(N,cons(M,L))) constraint: ifmin(true,cons(N,cons(M,L))) >= min(cons(N,L)) constraint: ifmin(false,cons(N,cons(M,L))) >= min(cons(M,L)) constraint: replace(N,M,cons(K,L)) >= ifrepl(eq(N,K),N,M,cons(K,L)) constraint: replace(N,M,nil) >= nil constraint: ifrepl(true,N,M,cons(K,L)) >= cons(M,L) constraint: ifrepl(false,N,M,cons(K,L)) >= cons(K,replace(N,M,L)) constraint: selsort(cons(N,L)) >= ifselsort(eq(N,min(cons(N,L))),cons(N,L)) constraint: selsort(nil) >= nil constraint: ifselsort(true,cons(N,L)) >= cons(N,selsort(L)) constraint: ifselsort(false,cons(N,L)) >= cons(min(cons(N,L)), selsort(replace(min(cons(N,L)),N,L))) constraint: Marked_replace(N,M,cons(K,L)) >= Marked_ifrepl(eq(N,K),N, M,cons(K,L)) constraint: Marked_ifrepl(false,N,M,cons(K,L)) >= Marked_replace(N,M,L) APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { eq(0,0) >= true ; eq(0,s(Y)) >= false ; eq(s(X),0) >= false ; eq(s(X),s(Y)) >= eq(X,Y) ; le(0,Y) >= true ; le(s(X),0) >= false ; le(s(X),s(Y)) >= le(X,Y) ; min(cons(0,nil)) >= 0 ; min(cons(s(N),nil)) >= s(N) ; min(cons(N,cons(M,L))) >= ifmin(le(N,M),cons(N,cons(M,L))) ; ifmin(true,cons(N,cons(M,L))) >= min(cons(N,L)) ; ifmin(false,cons(N,cons(M,L))) >= min(cons(M,L)) ; replace(N,M,cons(K,L)) >= ifrepl(eq(N,K),N,M,cons(K,L)) ; replace(N,M,nil) >= nil ; ifrepl(true,N,M,cons(K,L)) >= cons(M,L) ; ifrepl(false,N,M,cons(K,L)) >= cons(K,replace(N,M,L)) ; selsort(cons(N,L)) >= ifselsort(eq(N,min(cons(N,L))),cons(N,L)) ; selsort(nil) >= nil ; ifselsort(true,cons(N,L)) >= cons(N,selsort(L)) ; ifselsort(false,cons(N,L)) >= cons(min(cons(N,L)), selsort(replace(min(cons(N,L)),N,L))) ; Marked_eq(s(X),s(Y)) >= Marked_eq(X,Y) ; } + Disjunctions:{ { Marked_eq(s(X),s(Y)) > Marked_eq(X,Y) ; } } === 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 === === TIMER virtual : 15.000000 === Entering poly_solver Starting Sat solver initialization Calling Sat solver... === STOPING TIMER virtual === === TIMER real : 15.000000 === === STOPING TIMER real === Sat solver returned === STOPING TIMER real === === STOPING TIMER virtual === No solution found for these parameters. === TIMER virtual : 50.000000 === trying sub matrices of size: 1 Matrix interpretation constraints generated. Search parameters: LINEAR MATRIX 3x3 (strict=1x1) ; time limit: 50.. Termination constraints generated. Starting Sat solver initialization Calling Sat solver... === STOPING TIMER virtual === === TIMER real : 50.000000 === === STOPING TIMER real === Sat timeout reached === STOPING TIMER virtual === No solution found for these parameters. No solution found for these constraints. APPLY CRITERIA (ID_CRIT) NOT SOLVED No proof found Cime worked for 59.518279 seconds (real time) Cime Exit Status: 0