0.00/0.01 YES 0.00/0.01 0.00/0.01 Problem 1: 0.00/0.01 0.00/0.01 (VAR X Y Z) 0.00/0.01 (STRATEGY CONTEXTSENSITIVE 0.00/0.01 (add 1) 0.00/0.01 (and 1) 0.00/0.01 (first 1 2) 0.00/0.01 (from) 0.00/0.01 (if 1) 0.00/0.01 (0) 0.00/0.01 (cons) 0.00/0.01 (false) 0.00/0.01 (nil) 0.00/0.01 (s) 0.00/0.01 (true) 0.00/0.01 ) 0.00/0.01 (RULES 0.00/0.01 add(0,X) -> X 0.00/0.01 add(s(X),Y) -> s(add(X,Y)) 0.00/0.01 and(false,Y) -> false 0.00/0.01 and(true,X) -> X 0.00/0.01 first(0,X) -> nil 0.00/0.01 first(s(X),cons(Y,Z)) -> cons(Y,first(X,Z)) 0.00/0.01 from(X) -> cons(X,from(s(X))) 0.00/0.01 if(false,X,Y) -> Y 0.00/0.01 if(true,X,Y) -> X 0.00/0.01 ) 0.00/0.01 0.00/0.01 Problem 1: 0.00/0.01 0.00/0.01 Innermost Equivalent Processor: 0.00/0.01 -> Rules: 0.00/0.01 add(0,X) -> X 0.00/0.01 add(s(X),Y) -> s(add(X,Y)) 0.00/0.01 and(false,Y) -> false 0.00/0.01 and(true,X) -> X 0.00/0.01 first(0,X) -> nil 0.00/0.01 first(s(X),cons(Y,Z)) -> cons(Y,first(X,Z)) 0.00/0.01 from(X) -> cons(X,from(s(X))) 0.00/0.01 if(false,X,Y) -> Y 0.00/0.01 if(true,X,Y) -> X 0.00/0.01 -> The context-sensitive term rewriting system is an orthogonal system. Therefore, innermost cs-termination implies cs-termination. 0.00/0.01 0.00/0.01 0.00/0.01 Problem 1: 0.00/0.01 0.00/0.01 Dependency Pairs Processor: 0.00/0.01 -> Pairs: 0.00/0.01 ADD(0,X) -> X 0.00/0.01 AND(true,X) -> X 0.00/0.01 IF(false,X,Y) -> Y 0.00/0.01 IF(true,X,Y) -> X 0.00/0.01 -> Rules: 0.00/0.01 add(0,X) -> X 0.00/0.01 add(s(X),Y) -> s(add(X,Y)) 0.00/0.01 and(false,Y) -> false 0.00/0.01 and(true,X) -> X 0.00/0.01 first(0,X) -> nil 0.00/0.01 first(s(X),cons(Y,Z)) -> cons(Y,first(X,Z)) 0.00/0.01 from(X) -> cons(X,from(s(X))) 0.00/0.01 if(false,X,Y) -> Y 0.00/0.01 if(true,X,Y) -> X 0.00/0.01 -> Unhiding Rules: 0.00/0.01 add(X,Y) -> ADD(X,Y) 0.00/0.01 add(x3,Y) -> x3 0.00/0.01 first(X,Z) -> FIRST(X,Z) 0.00/0.01 first(X,x3) -> x3 0.00/0.01 first(x3,Z) -> x3 0.00/0.01 from(s(X)) -> FROM(s(X)) 0.00/0.01 0.00/0.01 Problem 1: 0.00/0.01 0.00/0.01 Basic Processor: 0.00/0.01 -> Pairs: 0.00/0.01 ADD(0,X) -> X 0.00/0.01 AND(true,X) -> X 0.00/0.01 IF(false,X,Y) -> Y 0.00/0.01 IF(true,X,Y) -> X 0.00/0.01 -> Rules: 0.00/0.01 add(0,X) -> X 0.00/0.01 add(s(X),Y) -> s(add(X,Y)) 0.00/0.01 and(false,Y) -> false 0.00/0.01 and(true,X) -> X 0.00/0.01 first(0,X) -> nil 0.00/0.01 first(s(X),cons(Y,Z)) -> cons(Y,first(X,Z)) 0.00/0.01 from(X) -> cons(X,from(s(X))) 0.00/0.01 if(false,X,Y) -> Y 0.00/0.01 if(true,X,Y) -> X 0.00/0.01 -> Unhiding rules: 0.00/0.01 add(X,Y) -> ADD(X,Y) 0.00/0.01 add(x3,Y) -> x3 0.00/0.01 first(X,Z) -> FIRST(X,Z) 0.00/0.01 first(X,x3) -> x3 0.00/0.01 first(x3,Z) -> x3 0.00/0.01 from(s(X)) -> FROM(s(X)) 0.00/0.01 -> Result: 0.00/0.01 All pairs P are from Px1 0.00/0.01 0.00/0.01 The problem is finite. 0.00/0.01 EOF