- : unit = () h : heuristic = - : unit = () APPLY CRITERIA (Marked dependency pairs) TRS termination of: [1] active(f(g(X),Y)) -> mark(f(X,f(g(X),Y))) [2] mark(f(X1,X2)) -> active(f(mark(X1),X2)) [3] mark(g(X)) -> active(g(mark(X))) [4] f(mark(X1),X2) -> f(X1,X2) [5] f(X1,mark(X2)) -> f(X1,X2) [6] f(active(X1),X2) -> f(X1,X2) [7] f(X1,active(X2)) -> f(X1,X2) [8] g(mark(X)) -> g(X) [9] g(active(X)) -> g(X) Sub problem: guided: DP termination of: END GUIDED APPLY CRITERIA (Graph splitting) Found 3 components: { --> --> --> --> --> --> --> --> --> --> --> --> --> --> } { --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> } { --> --> --> --> } APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { mark(f(X1,X2)) >= active(f(mark(X1),X2)) ; mark(g(X)) >= active(g(mark(X))) ; f(mark(X1),X2) >= f(X1,X2) ; f(active(X1),X2) >= f(X1,X2) ; f(X1,mark(X2)) >= f(X1,X2) ; f(X1,active(X2)) >= f(X1,X2) ; g(mark(X)) >= g(X) ; g(active(X)) >= g(X) ; active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) ; Marked_mark(f(X1,X2)) >= Marked_mark(X1) ; Marked_mark(f(X1,X2)) >= Marked_active(f(mark(X1),X2)) ; Marked_mark(g(X)) >= Marked_mark(X) ; Marked_mark(g(X)) >= Marked_active(g(mark(X))) ; Marked_active(f(g(X),Y)) >= Marked_mark(f(X,f(g(X),Y))) ; } + Disjunctions:{ { Marked_mark(f(X1,X2)) > Marked_mark(X1) ; } { Marked_mark(f(X1,X2)) > Marked_active(f(mark(X1),X2)) ; } { Marked_mark(g(X)) > Marked_mark(X) ; } { Marked_mark(g(X)) > Marked_active(g(mark(X))) ; } { Marked_active(f(g(X),Y)) > Marked_mark(f(X,f(g(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 Sat solver result read === STOPING TIMER real === === STOPING TIMER virtual === constraint: mark(f(X1,X2)) >= active(f(mark(X1),X2)) constraint: mark(g(X)) >= active(g(mark(X))) constraint: f(mark(X1),X2) >= f(X1,X2) constraint: f(active(X1),X2) >= f(X1,X2) constraint: f(X1,mark(X2)) >= f(X1,X2) constraint: f(X1,active(X2)) >= f(X1,X2) constraint: g(mark(X)) >= g(X) constraint: g(active(X)) >= g(X) constraint: active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) constraint: Marked_mark(f(X1,X2)) >= Marked_mark(X1) constraint: Marked_mark(f(X1,X2)) >= Marked_active(f(mark(X1),X2)) constraint: Marked_mark(g(X)) >= Marked_mark(X) constraint: Marked_mark(g(X)) >= Marked_active(g(mark(X))) constraint: Marked_active(f(g(X),Y)) >= Marked_mark(f(X,f(g(X),Y))) APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { mark(f(X1,X2)) >= active(f(mark(X1),X2)) ; mark(g(X)) >= active(g(mark(X))) ; f(mark(X1),X2) >= f(X1,X2) ; f(active(X1),X2) >= f(X1,X2) ; f(X1,mark(X2)) >= f(X1,X2) ; f(X1,active(X2)) >= f(X1,X2) ; g(mark(X)) >= g(X) ; g(active(X)) >= g(X) ; active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) ; Marked_f(mark(X1),X2) >= Marked_f(X1,X2) ; Marked_f(active(X1),X2) >= Marked_f(X1,X2) ; Marked_f(X1,mark(X2)) >= Marked_f(X1,X2) ; Marked_f(X1,active(X2)) >= Marked_f(X1,X2) ; } + Disjunctions:{ { Marked_f(mark(X1),X2) > Marked_f(X1,X2) ; } { Marked_f(active(X1),X2) > Marked_f(X1,X2) ; } { Marked_f(X1,mark(X2)) > Marked_f(X1,X2) ; } { Marked_f(X1,active(X2)) > Marked_f(X1,X2) ; } } === 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: mark(f(X1,X2)) >= active(f(mark(X1),X2)) constraint: mark(g(X)) >= active(g(mark(X))) constraint: f(mark(X1),X2) >= f(X1,X2) constraint: f(active(X1),X2) >= f(X1,X2) constraint: f(X1,mark(X2)) >= f(X1,X2) constraint: f(X1,active(X2)) >= f(X1,X2) constraint: g(mark(X)) >= g(X) constraint: g(active(X)) >= g(X) constraint: active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) constraint: Marked_f(mark(X1),X2) >= Marked_f(X1,X2) constraint: Marked_f(active(X1),X2) >= Marked_f(X1,X2) constraint: Marked_f(X1,mark(X2)) >= Marked_f(X1,X2) constraint: Marked_f(X1,active(X2)) >= Marked_f(X1,X2) APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { mark(f(X1,X2)) >= active(f(mark(X1),X2)) ; mark(g(X)) >= active(g(mark(X))) ; f(mark(X1),X2) >= f(X1,X2) ; f(active(X1),X2) >= f(X1,X2) ; f(X1,mark(X2)) >= f(X1,X2) ; f(X1,active(X2)) >= f(X1,X2) ; g(mark(X)) >= g(X) ; g(active(X)) >= g(X) ; active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) ; Marked_g(mark(X)) >= Marked_g(X) ; Marked_g(active(X)) >= Marked_g(X) ; } + Disjunctions:{ { Marked_g(mark(X)) > Marked_g(X) ; } { Marked_g(active(X)) > Marked_g(X) ; } } === 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: mark(f(X1,X2)) >= active(f(mark(X1),X2)) constraint: mark(g(X)) >= active(g(mark(X))) constraint: f(mark(X1),X2) >= f(X1,X2) constraint: f(active(X1),X2) >= f(X1,X2) constraint: f(X1,mark(X2)) >= f(X1,X2) constraint: f(X1,active(X2)) >= f(X1,X2) constraint: g(mark(X)) >= g(X) constraint: g(active(X)) >= g(X) constraint: active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) constraint: Marked_g(mark(X)) >= Marked_g(X) constraint: Marked_g(active(X)) >= Marked_g(X) APPLY CRITERIA (Graph splitting) Found 1 components: { --> --> --> --> --> --> --> --> --> --> } APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { mark(f(X1,X2)) >= active(f(mark(X1),X2)) ; mark(g(X)) >= active(g(mark(X))) ; f(mark(X1),X2) >= f(X1,X2) ; f(active(X1),X2) >= f(X1,X2) ; f(X1,mark(X2)) >= f(X1,X2) ; f(X1,active(X2)) >= f(X1,X2) ; g(mark(X)) >= g(X) ; g(active(X)) >= g(X) ; active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) ; Marked_mark(f(X1,X2)) >= Marked_mark(X1) ; Marked_mark(f(X1,X2)) >= Marked_active(f(mark(X1),X2)) ; Marked_mark(g(X)) >= Marked_mark(X) ; Marked_active(f(g(X),Y)) >= Marked_mark(f(X,f(g(X),Y))) ; } + Disjunctions:{ { Marked_mark(f(X1,X2)) > Marked_mark(X1) ; } { Marked_mark(f(X1,X2)) > Marked_active(f(mark(X1),X2)) ; } { Marked_mark(g(X)) > Marked_mark(X) ; } { Marked_active(f(g(X),Y)) > Marked_mark(f(X,f(g(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 Sat solver result read === STOPING TIMER real === === STOPING TIMER virtual === constraint: mark(f(X1,X2)) >= active(f(mark(X1),X2)) constraint: mark(g(X)) >= active(g(mark(X))) constraint: f(mark(X1),X2) >= f(X1,X2) constraint: f(active(X1),X2) >= f(X1,X2) constraint: f(X1,mark(X2)) >= f(X1,X2) constraint: f(X1,active(X2)) >= f(X1,X2) constraint: g(mark(X)) >= g(X) constraint: g(active(X)) >= g(X) constraint: active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) constraint: Marked_mark(f(X1,X2)) >= Marked_mark(X1) constraint: Marked_mark(f(X1,X2)) >= Marked_active(f(mark(X1),X2)) constraint: Marked_mark(g(X)) >= Marked_mark(X) constraint: Marked_active(f(g(X),Y)) >= Marked_mark(f(X,f(g(X),Y))) APPLY CRITERIA (Graph splitting) Found 1 components: { --> } APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { mark(f(X1,X2)) >= active(f(mark(X1),X2)) ; mark(g(X)) >= active(g(mark(X))) ; f(mark(X1),X2) >= f(X1,X2) ; f(active(X1),X2) >= f(X1,X2) ; f(X1,mark(X2)) >= f(X1,X2) ; f(X1,active(X2)) >= f(X1,X2) ; g(mark(X)) >= g(X) ; g(active(X)) >= g(X) ; active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) ; Marked_mark(f(X1,X2)) >= Marked_mark(X1) ; } + Disjunctions:{ { Marked_mark(f(X1,X2)) > Marked_mark(X1) ; } } === 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: mark(f(X1,X2)) >= active(f(mark(X1),X2)) constraint: mark(g(X)) >= active(g(mark(X))) constraint: f(mark(X1),X2) >= f(X1,X2) constraint: f(active(X1),X2) >= f(X1,X2) constraint: f(X1,mark(X2)) >= f(X1,X2) constraint: f(X1,active(X2)) >= f(X1,X2) constraint: g(mark(X)) >= g(X) constraint: g(active(X)) >= g(X) constraint: active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) constraint: Marked_mark(f(X1,X2)) >= Marked_mark(X1) APPLY CRITERIA (Graph splitting) Found 0 components: APPLY CRITERIA (Graph splitting) Found 1 components: { --> --> --> --> } APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { mark(f(X1,X2)) >= active(f(mark(X1),X2)) ; mark(g(X)) >= active(g(mark(X))) ; f(mark(X1),X2) >= f(X1,X2) ; f(active(X1),X2) >= f(X1,X2) ; f(X1,mark(X2)) >= f(X1,X2) ; f(X1,active(X2)) >= f(X1,X2) ; g(mark(X)) >= g(X) ; g(active(X)) >= g(X) ; active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) ; Marked_f(mark(X1),X2) >= Marked_f(X1,X2) ; Marked_f(X1,mark(X2)) >= Marked_f(X1,X2) ; } + Disjunctions:{ { Marked_f(mark(X1),X2) > Marked_f(X1,X2) ; } { Marked_f(X1,mark(X2)) > Marked_f(X1,X2) ; } } === 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: mark(f(X1,X2)) >= active(f(mark(X1),X2)) constraint: mark(g(X)) >= active(g(mark(X))) constraint: f(mark(X1),X2) >= f(X1,X2) constraint: f(active(X1),X2) >= f(X1,X2) constraint: f(X1,mark(X2)) >= f(X1,X2) constraint: f(X1,active(X2)) >= f(X1,X2) constraint: g(mark(X)) >= g(X) constraint: g(active(X)) >= g(X) constraint: active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) constraint: Marked_f(mark(X1),X2) >= Marked_f(X1,X2) constraint: Marked_f(X1,mark(X2)) >= Marked_f(X1,X2) APPLY CRITERIA (Graph splitting) Found 0 components: APPLY CRITERIA (Graph splitting) Found 1 components: { --> } APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { mark(f(X1,X2)) >= active(f(mark(X1),X2)) ; mark(g(X)) >= active(g(mark(X))) ; f(mark(X1),X2) >= f(X1,X2) ; f(active(X1),X2) >= f(X1,X2) ; f(X1,mark(X2)) >= f(X1,X2) ; f(X1,active(X2)) >= f(X1,X2) ; g(mark(X)) >= g(X) ; g(active(X)) >= g(X) ; active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) ; Marked_g(mark(X)) >= Marked_g(X) ; } + Disjunctions:{ { Marked_g(mark(X)) > Marked_g(X) ; } } === 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: mark(f(X1,X2)) >= active(f(mark(X1),X2)) constraint: mark(g(X)) >= active(g(mark(X))) constraint: f(mark(X1),X2) >= f(X1,X2) constraint: f(active(X1),X2) >= f(X1,X2) constraint: f(X1,mark(X2)) >= f(X1,X2) constraint: f(X1,active(X2)) >= f(X1,X2) constraint: g(mark(X)) >= g(X) constraint: g(active(X)) >= g(X) constraint: active(f(g(X),Y)) >= mark(f(X,f(g(X),Y))) constraint: Marked_g(mark(X)) >= Marked_g(X) APPLY CRITERIA (Graph splitting) Found 0 components: SOLVED { TRS termination of: [1] active(f(g(X),Y)) -> mark(f(X,f(g(X),Y))) [2] mark(f(X1,X2)) -> active(f(mark(X1),X2)) [3] mark(g(X)) -> active(g(mark(X))) [4] f(mark(X1),X2) -> f(X1,X2) [5] f(X1,mark(X2)) -> f(X1,X2) [6] f(active(X1),X2) -> f(X1,X2) [7] f(X1,active(X2)) -> f(X1,X2) [8] g(mark(X)) -> g(X) [9] g(active(X)) -> g(X) , CRITERION: MDP [ { DP termination of: , CRITERION: SG [ { DP termination of: , CRITERION: CG using polynomial interpretation = [ mark ] (X0) = 0; [ g ] (X0) = 0; [ Marked_mark ] (X0) = 1; [ f ] (X0,X1) = 1; [ active ] (X0) = 0; [ Marked_active ] (X0) = 1*X0; removing [ { DP termination of: , CRITERION: SG [ { DP termination of: , CRITERION: CG using polynomial interpretation = [ mark ] (X0) = 2*X0; [ g ] (X0) = 2*X0 + 1; [ Marked_mark ] (X0) = 2*X0; [ f ] (X0,X1) = 2*X0; [ active ] (X0) = 1*X0; [ Marked_active ] (X0) = 1*X0; removing [ { DP termination of: , CRITERION: SG [ { DP termination of: , CRITERION: ORD [ Solution found: polynomial interpretation = [ mark ] (X0) = 1*X0 + 0; [ g ] (X0) = 1*X0 + 0; [ Marked_mark ] (X0) = 3*X0 + 0; [ f ] (X0,X1) = 1 + 1*X0 + 0; [ active ] (X0) = 1*X0 + 0; ]} ]} ]} ]} ]} { DP termination of: , CRITERION: CG using polynomial interpretation = [ mark ] (X0) = 3*X0; [ g ] (X0) = 3*X0 + 2; [ f ] (X0,X1) = 2*X0 + 1; [ Marked_f ] (X0,X1) = 3*X1 + 3*X0; [ active ] (X0) = 1*X0 + 2; removing [ { DP termination of: , CRITERION: SG [ { DP termination of: , CRITERION: ORD [ Solution found: polynomial interpretation = [ mark ] (X0) = 1 + 2*X0 + 0; [ g ] (X0) = 2 + 2*X0 + 0; [ f ] (X0,X1) = 1 + 2*X0 + 0; [ Marked_f ] (X0,X1) = 3*X0 + 3*X1 + 0; [ active ] (X0) = 1*X0 + 0; ]} ]} ]} { DP termination of: , CRITERION: CG using polynomial interpretation = [ mark ] (X0) = 3*X0; [ Marked_g ] (X0) = 3*X0; [ g ] (X0) = 3*X0 + 2; [ f ] (X0,X1) = 2*X0 + 1; [ active ] (X0) = 1*X0 + 2; removing [ { DP termination of: , CRITERION: SG [ { DP termination of: , CRITERION: ORD [ Solution found: polynomial interpretation = [ mark ] (X0) = 1 + 1*X0 + 0; [ Marked_g ] (X0) = 3*X0 + 0; [ g ] (X0) = 0; [ f ] (X0,X1) = 0; [ active ] (X0) = 1 + 0; ]} ]} ]} ]} ]} Cime worked for 0.345742 seconds (real time) Cime Exit Status: 0