- : unit = () - : unit = () h : heuristic = - : unit = () APPLY CRITERIA (Marked dependency pairs) TRS termination of: [1] -(x,0) -> x [2] -(s(x),s(y)) -> -(x,y) [3] *(x,0) -> 0 [4] *(x,s(y)) -> +( *(x,y),x) [5] if(true,x,y) -> x [6] if(false,x,y) -> y [7] odd(0) -> false [8] odd(s(0)) -> true [9] odd(s(s(x))) -> odd(x) [10] half(0) -> 0 [11] half(s(0)) -> 0 [12] half(s(s(x))) -> s(half(x)) [13] if(true,x,y) -> true [14] if(false,x,y) -> false [15] pow(x,y) -> f(x,y,s(0)) [16] f(x,0,z) -> z [17] f(x,s(y),z) -> if(odd(s(y)),f(x,y, *(x,z)),f( *(x,x),half(s(y)),z)) Sub problem: guided: DP termination of: END GUIDED APPLY CRITERIA (Graph splitting) Found 5 components: { --> } { --> --> --> --> } { --> } { --> } { --> } APPLY CRITERIA (Subterm criterion) ST: Marked_- -> 1 APPLY CRITERIA (Subterm criterion) APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { -(s(x),s(y)) >= -(x,y) ; -(x,0) >= x ; *(x,0) >= 0 ; *(x,s(y)) >= +( *(x,y),x) ; if(true,x,y) >= true ; if(true,x,y) >= x ; if(false,x,y) >= false ; if(false,x,y) >= y ; odd(0) >= false ; odd(s(0)) >= true ; odd(s(s(x))) >= odd(x) ; half(0) >= 0 ; half(s(0)) >= 0 ; half(s(s(x))) >= s(half(x)) ; f(x,0,z) >= z ; f(x,s(y),z) >= if(odd(s(y)),f(x,y, *(x,z)),f( *(x,x),half(s(y)),z)) ; pow(x,y) >= f(x,y,s(0)) ; Marked_f(x,s(y),z) >= Marked_f( *(x,x),half(s(y)),z) ; Marked_f(x,s(y),z) >= Marked_f(x,y, *(x,z)) ; } + Disjunctions:{ { Marked_f(x,s(y),z) > Marked_f( *(x,x),half(s(y)),z) ; } { Marked_f(x,s(y),z) > Marked_f(x,y, *(x,z)) ; } } === 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: -(s(x),s(y)) >= -(x,y) constraint: -(x,0) >= x constraint: *(x,0) >= 0 constraint: *(x,s(y)) >= +( *(x,y),x) constraint: if(true,x,y) >= true constraint: if(true,x,y) >= x constraint: if(false,x,y) >= false constraint: if(false,x,y) >= y constraint: odd(0) >= false constraint: odd(s(0)) >= true constraint: odd(s(s(x))) >= odd(x) constraint: half(0) >= 0 constraint: half(s(0)) >= 0 constraint: half(s(s(x))) >= s(half(x)) constraint: f(x,0,z) >= z constraint: f(x,s(y),z) >= if(odd(s(y)),f(x,y, *(x,z)),f( *(x,x),half(s(y)),z)) constraint: pow(x,y) >= f(x,y,s(0)) constraint: Marked_f(x,s(y),z) >= Marked_f( *(x,x),half(s(y)),z) constraint: Marked_f(x,s(y),z) >= Marked_f(x,y, *(x,z)) APPLY CRITERIA (Subterm criterion) ST: Marked_odd -> 1 APPLY CRITERIA (Subterm criterion) ST: Marked_* -> 2 APPLY CRITERIA (Subterm criterion) ST: Marked_half -> 1 APPLY CRITERIA (Graph splitting) Found 0 components: APPLY CRITERIA (Graph splitting) Found 1 components: { --> } APPLY CRITERIA (Subterm criterion) APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { -(s(x),s(y)) >= -(x,y) ; -(x,0) >= x ; *(x,0) >= 0 ; *(x,s(y)) >= +( *(x,y),x) ; if(true,x,y) >= true ; if(true,x,y) >= x ; if(false,x,y) >= false ; if(false,x,y) >= y ; odd(0) >= false ; odd(s(0)) >= true ; odd(s(s(x))) >= odd(x) ; half(0) >= 0 ; half(s(0)) >= 0 ; half(s(s(x))) >= s(half(x)) ; f(x,0,z) >= z ; f(x,s(y),z) >= if(odd(s(y)),f(x,y, *(x,z)),f( *(x,x),half(s(y)),z)) ; pow(x,y) >= f(x,y,s(0)) ; Marked_f(x,s(y),z) >= Marked_f( *(x,x),half(s(y)),z) ; } + Disjunctions:{ { Marked_f(x,s(y),z) > Marked_f( *(x,x),half(s(y)),z) ; } } === 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 timeout reached === STOPING TIMER virtual === Time out 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 solver returned Sat solver result read === STOPING TIMER real === === STOPING TIMER virtual === constraint: -(s(x),s(y)) >= -(x,y) constraint: -(x,0) >= x constraint: *(x,0) >= 0 constraint: *(x,s(y)) >= +( *(x,y),x) constraint: if(true,x,y) >= true constraint: if(true,x,y) >= x constraint: if(false,x,y) >= false constraint: if(false,x,y) >= y constraint: odd(0) >= false constraint: odd(s(0)) >= true constraint: odd(s(s(x))) >= odd(x) constraint: half(0) >= 0 constraint: half(s(0)) >= 0 constraint: half(s(s(x))) >= s(half(x)) constraint: f(x,0,z) >= z constraint: f(x,s(y),z) >= if(odd(s(y)),f(x,y, *(x,z)),f( *(x,x),half(s(y)),z)) constraint: pow(x,y) >= f(x,y,s(0)) constraint: Marked_f(x,s(y),z) >= Marked_f( *(x,x),half(s(y)),z) APPLY CRITERIA (Graph splitting) Found 0 components: APPLY CRITERIA (Graph splitting) Found 0 components: APPLY CRITERIA (Graph splitting) Found 0 components: APPLY CRITERIA (Graph splitting) Found 0 components: SOLVED { TRS termination of: [1] -(x,0) -> x [2] -(s(x),s(y)) -> -(x,y) [3] *(x,0) -> 0 [4] *(x,s(y)) -> +( *(x,y),x) [5] if(true,x,y) -> x [6] if(false,x,y) -> y [7] odd(0) -> false [8] odd(s(0)) -> true [9] odd(s(s(x))) -> odd(x) [10] half(0) -> 0 [11] half(s(0)) -> 0 [12] half(s(s(x))) -> s(half(x)) [13] if(true,x,y) -> true [14] if(false,x,y) -> false [15] pow(x,y) -> f(x,y,s(0)) [16] f(x,0,z) -> z [17] f(x,s(y),z) -> if(odd(s(y)),f(x,y, *(x,z)),f( *(x,x),half(s(y)),z)) , CRITERION: MDP [ { DP termination of: , CRITERION: SG [ { DP termination of: , CRITERION: ST [ { DP termination of: , CRITERION: SG [ ]} ]} { DP termination of: , CRITERION: CG using polynomial interpretation = [ - ] (X0,X1) = 3*X1 + 3*X0 + 3; [ odd ] (X0) = 0; [ + ] (X0,X1) = 0; [ Marked_f ] (X0,X1,X2) = 1*X1; [ s ] (X0) = 2*X0 + 2; [ f ] (X0,X1,X2) = 1*X2; [ true ] () = 0; [ 0 ] () = 0; [ half ] (X0) = 1*X0; [ if ] (X0,X1,X2) = 1*X2 + 2*X1; [ * ] (X0,X1) = 0; [ pow ] (X0,X1) = 1*X1 + 1*X0 + 3; [ false ] () = 0; removing [ { DP termination of: , CRITERION: SG [ { DP termination of: , CRITERION: ORD [ Solution found: Matrix polynomial interpretation (strict sub matrices size: 1x1) = [ - ] (X0,X1) = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X1 + [ [ 1 , 1 , 1 ] [ 1 , 1 , 1 ] [ 1 , 1 , 1 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 0 , 1 , 0 ] [ 0 , 0 , 0 ] ]; [ odd ] (X0) = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ + ] (X0,X1) = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X1 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ Marked_f ] (X0,X1,X2) = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X2 + [ [ 0 , 0 , 1 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X1 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ s ] (X0) = [ [ 0 , 1 , 0 ] [ 1 , 0 , 1 ] [ 0 , 1 , 0 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 1 , 0 , 0 ] [ 1 , 0 , 0 ] ]; [ f ] (X0,X1,X2) = [ [ 1 , 0 , 0 ] [ 0 , 1 , 0 ] [ 0 , 0 , 1 ] ]*X2 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X1 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ true ] () = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ 0 ] () = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ half ] (X0) = [ [ 1 , 0 , 0 ] [ 1 , 0 , 1 ] [ 1 , 0 , 0 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ if ] (X0,X1,X2) = [ [ 1 , 0 , 0 ] [ 0 , 1 , 0 ] [ 0 , 0 , 1 ] ]*X2 + [ [ 1 , 0 , 0 ] [ 0 , 1 , 0 ] [ 0 , 0 , 1 ] ]*X1 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ * ] (X0,X1) = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X1 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X0 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; [ pow ] (X0,X1) = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X1 + [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]*X0 + [ [ 0 , 1 , 1 ] [ 1 , 1 , 1 ] [ 1 , 1 , 1 ] ]; [ false ] () = [ [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] [ 0 , 0 , 0 ] ]; ]} ]} ]} { DP termination of: , CRITERION: ST [ { DP termination of: , CRITERION: SG [ ]} ]} { DP termination of: , CRITERION: ST [ { DP termination of: , CRITERION: SG [ ]} ]} { DP termination of: , CRITERION: ST [ { DP termination of: , CRITERION: SG [ ]} ]} ]} ]} Cime worked for 34.473048 seconds (real time) Cime Exit Status: 0