0.00/0.21 YES 0.00/0.21 0.00/0.21 Problem 1: 0.00/0.21 0.00/0.21 (VAR X Y) 0.00/0.21 (STRATEGY CONTEXTSENSITIVE 0.00/0.21 (div 1 2) 0.00/0.21 (gt 1 2) 0.00/0.21 (if 1) 0.00/0.21 (minus 1 2) 0.00/0.21 (p 1) 0.00/0.21 (0) 0.00/0.21 (false) 0.00/0.21 (s 1) 0.00/0.21 (true) 0.00/0.21 ) 0.00/0.21 (RULES 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 ) 0.00/0.21 0.00/0.21 Problem 1: 0.00/0.21 0.00/0.21 Innermost Equivalent Processor: 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> The context-sensitive term rewriting system is an orthogonal system. Therefore, innermost cs-termination implies cs-termination. 0.00/0.21 0.00/0.21 0.00/0.21 Problem 1: 0.00/0.21 0.00/0.21 Dependency Pairs Processor: 0.00/0.21 -> Pairs: 0.00/0.21 DIV(s(X),s(Y)) -> DIV(minus(X,Y),s(Y)) 0.00/0.21 DIV(s(X),s(Y)) -> MINUS(X,Y) 0.00/0.21 GT(s(X),s(Y)) -> GT(X,Y) 0.00/0.21 IF(false,X,Y) -> Y 0.00/0.21 IF(true,X,Y) -> X 0.00/0.21 MINUS(X,Y) -> GT(Y,0) 0.00/0.21 MINUS(X,Y) -> IF(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding Rules: 0.00/0.21 minus(p(X),p(Y)) -> MINUS(p(X),p(Y)) 0.00/0.21 minus(p(X),p(Y)) -> P(X) 0.00/0.21 minus(p(X),p(Y)) -> P(Y) 0.00/0.21 0.00/0.21 Problem 1: 0.00/0.21 0.00/0.21 SCC Processor: 0.00/0.21 -> Pairs: 0.00/0.21 DIV(s(X),s(Y)) -> DIV(minus(X,Y),s(Y)) 0.00/0.21 DIV(s(X),s(Y)) -> MINUS(X,Y) 0.00/0.21 GT(s(X),s(Y)) -> GT(X,Y) 0.00/0.21 IF(false,X,Y) -> Y 0.00/0.21 IF(true,X,Y) -> X 0.00/0.21 MINUS(X,Y) -> GT(Y,0) 0.00/0.21 MINUS(X,Y) -> IF(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 minus(p(X),p(Y)) -> MINUS(p(X),p(Y)) 0.00/0.21 minus(p(X),p(Y)) -> P(X) 0.00/0.21 minus(p(X),p(Y)) -> P(Y) 0.00/0.21 ->Strongly Connected Components: 0.00/0.21 ->->Cycle: 0.00/0.21 ->->-> Pairs: 0.00/0.21 IF(false,X,Y) -> Y 0.00/0.21 IF(true,X,Y) -> X 0.00/0.21 MINUS(X,Y) -> IF(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 ->->-> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 ->->-> Unhiding rules: 0.00/0.21 minus(p(X),p(Y)) -> MINUS(p(X),p(Y)) 0.00/0.21 ->->Cycle: 0.00/0.21 ->->-> Pairs: 0.00/0.21 GT(s(X),s(Y)) -> GT(X,Y) 0.00/0.21 ->->-> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 ->->-> Unhiding rules: 0.00/0.21 Empty 0.00/0.21 ->->Cycle: 0.00/0.21 ->->-> Pairs: 0.00/0.21 DIV(s(X),s(Y)) -> DIV(minus(X,Y),s(Y)) 0.00/0.21 ->->-> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 ->->-> Unhiding rules: 0.00/0.21 Empty 0.00/0.21 0.00/0.21 0.00/0.21 The problem is decomposed in 3 subproblems. 0.00/0.21 0.00/0.21 Problem 1.1: 0.00/0.21 0.00/0.21 Reduction Pairs Processor: 0.00/0.21 -> Pairs: 0.00/0.21 IF(false,X,Y) -> Y 0.00/0.21 IF(true,X,Y) -> X 0.00/0.21 MINUS(X,Y) -> IF(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 minus(p(X),p(Y)) -> MINUS(p(X),p(Y)) 0.00/0.21 -> Usable rules: 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 ->Interpretation type: 0.00/0.21 Linear 0.00/0.21 ->Coefficients: 0.00/0.21 All rationals 0.00/0.21 ->Dimension: 0.00/0.21 1 0.00/0.21 ->Bound: 0.00/0.21 2 0.00/0.21 ->Interpretation: 0.00/0.21 0.00/0.21 [gt](X1,X2) = X1 0.00/0.21 [minus](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.21 [p](X) = 1/2.X 0.00/0.21 [0] = 0 0.00/0.21 [false] = 0 0.00/0.21 [s](X) = 2.X + 1 0.00/0.21 [true] = 1/2 0.00/0.21 [IF](X1,X2,X3) = X1 + X2 + X3 0.00/0.21 [MINUS](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.21 0.00/0.21 Problem 1.1: 0.00/0.21 0.00/0.21 SCC Processor: 0.00/0.21 -> Pairs: 0.00/0.21 IF(false,X,Y) -> Y 0.00/0.21 MINUS(X,Y) -> IF(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 minus(p(X),p(Y)) -> MINUS(p(X),p(Y)) 0.00/0.21 ->Strongly Connected Components: 0.00/0.21 ->->Cycle: 0.00/0.21 ->->-> Pairs: 0.00/0.21 IF(false,X,Y) -> Y 0.00/0.21 MINUS(X,Y) -> IF(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 ->->-> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 ->->-> Unhiding rules: 0.00/0.21 minus(p(X),p(Y)) -> MINUS(p(X),p(Y)) 0.00/0.21 0.00/0.21 Problem 1.1: 0.00/0.21 0.00/0.21 SubNColl Processor: 0.00/0.21 -> Pairs: 0.00/0.21 IF(false,X,Y) -> Y 0.00/0.21 MINUS(X,Y) -> IF(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 minus(p(X),p(Y)) -> MINUS(p(X),p(Y)) 0.00/0.21 ->Projection: 0.00/0.21 pi(IF) = 3 0.00/0.21 pi(MINUS) = 1 0.00/0.21 0.00/0.21 Problem 1.1: 0.00/0.21 0.00/0.21 SCC Processor: 0.00/0.21 -> Pairs: 0.00/0.21 IF(false,X,Y) -> Y 0.00/0.21 MINUS(X,Y) -> IF(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 Empty 0.00/0.21 ->Strongly Connected Components: 0.00/0.21 There is no strongly connected component 0.00/0.21 0.00/0.21 The problem is finite. 0.00/0.21 0.00/0.21 Problem 1.2: 0.00/0.21 0.00/0.21 SubNColl Processor: 0.00/0.21 -> Pairs: 0.00/0.21 GT(s(X),s(Y)) -> GT(X,Y) 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 Empty 0.00/0.21 ->Projection: 0.00/0.21 pi(GT) = 1 0.00/0.21 0.00/0.21 Problem 1.2: 0.00/0.21 0.00/0.21 Basic Processor: 0.00/0.21 -> Pairs: 0.00/0.21 Empty 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 Empty 0.00/0.21 -> Result: 0.00/0.21 Set P is empty 0.00/0.21 0.00/0.21 The problem is finite. 0.00/0.21 0.00/0.21 Problem 1.3: 0.00/0.21 0.00/0.21 Reduction Pairs Processor: 0.00/0.21 -> Pairs: 0.00/0.21 DIV(s(X),s(Y)) -> DIV(minus(X,Y),s(Y)) 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 Empty 0.00/0.21 -> Usable rules: 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 ->Interpretation type: 0.00/0.21 Linear 0.00/0.21 ->Coefficients: 0.00/0.21 All rationals 0.00/0.21 ->Dimension: 0.00/0.21 1 0.00/0.21 ->Bound: 0.00/0.21 2 0.00/0.21 ->Interpretation: 0.00/0.21 0.00/0.21 [gt](X1,X2) = 2.X1 + 1/2.X2 0.00/0.21 [if](X1,X2,X3) = X2 + X3 0.00/0.21 [minus](X1,X2) = 2.X1 + 1/2 0.00/0.21 [p](X) = 1/2.X 0.00/0.21 [0] = 0 0.00/0.21 [false] = 0 0.00/0.21 [s](X) = 2.X + 1 0.00/0.21 [true] = 0 0.00/0.21 [DIV](X1,X2) = X1 0.00/0.21 0.00/0.21 Problem 1.3: 0.00/0.21 0.00/0.21 Basic Processor: 0.00/0.21 -> Pairs: 0.00/0.21 Empty 0.00/0.21 -> Rules: 0.00/0.21 div(0,s(Y)) -> 0 0.00/0.21 div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) 0.00/0.21 gt(0,Y) -> false 0.00/0.21 gt(s(X),0) -> true 0.00/0.21 gt(s(X),s(Y)) -> gt(X,Y) 0.00/0.21 if(false,X,Y) -> Y 0.00/0.21 if(true,X,Y) -> X 0.00/0.21 minus(X,Y) -> if(gt(Y,0),minus(p(X),p(Y)),X) 0.00/0.21 p(0) -> 0 0.00/0.21 p(s(X)) -> X 0.00/0.21 -> Unhiding rules: 0.00/0.21 Empty 0.00/0.21 -> Result: 0.00/0.21 Set P is empty 0.00/0.21 0.00/0.21 The problem is finite. 0.00/0.21 EOF