0.00/0.18 YES 0.00/0.18 0.00/0.18 Problem 1: 0.00/0.18 0.00/0.18 (VAR v_NonEmpty:S X:S X1:S X2:S X3:S Y:S Z:S) 0.00/0.18 (RULES 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 ) 0.00/0.18 (STRATEGY INNERMOST) 0.00/0.18 0.00/0.18 Problem 1: 0.00/0.18 0.00/0.18 Dependency Pairs Processor: 0.00/0.18 -> Pairs: 0.00/0.18 A__ADD(0,X:S) -> MARK(X:S) 0.00/0.18 A__AND(ttrue,X:S) -> MARK(X:S) 0.00/0.18 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.18 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> A__ADD(mark(X1:S),X2:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> A__AND(mark(X1:S),X2:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> A__FIRST(mark(X1:S),mark(X2:S)) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.18 MARK(from(X:S)) -> A__FROM(X:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.18 -> Rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 0.00/0.18 Problem 1: 0.00/0.18 0.00/0.18 SCC Processor: 0.00/0.18 -> Pairs: 0.00/0.18 A__ADD(0,X:S) -> MARK(X:S) 0.00/0.18 A__AND(ttrue,X:S) -> MARK(X:S) 0.00/0.18 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.18 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> A__ADD(mark(X1:S),X2:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> A__AND(mark(X1:S),X2:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> A__FIRST(mark(X1:S),mark(X2:S)) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.18 MARK(from(X:S)) -> A__FROM(X:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.18 -> Rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 ->Strongly Connected Components: 0.00/0.18 ->->Cycle: 0.00/0.18 ->->-> Pairs: 0.00/0.18 A__ADD(0,X:S) -> MARK(X:S) 0.00/0.18 A__AND(ttrue,X:S) -> MARK(X:S) 0.00/0.18 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.18 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> A__ADD(mark(X1:S),X2:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> A__AND(mark(X1:S),X2:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.18 ->->-> Rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 0.00/0.18 Problem 1: 0.00/0.18 0.00/0.18 Reduction Pairs Processor: 0.00/0.18 -> Pairs: 0.00/0.18 A__ADD(0,X:S) -> MARK(X:S) 0.00/0.18 A__AND(ttrue,X:S) -> MARK(X:S) 0.00/0.18 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.18 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> A__ADD(mark(X1:S),X2:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> A__AND(mark(X1:S),X2:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.18 -> Rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 -> Usable rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 ->Interpretation type: 0.00/0.18 Linear 0.00/0.18 ->Coefficients: 0.00/0.18 Natural Numbers 0.00/0.18 ->Dimension: 0.00/0.18 1 0.00/0.18 ->Bound: 0.00/0.18 2 0.00/0.18 ->Interpretation: 0.00/0.18 0.00/0.18 [a__add](X1,X2) = 2.X1 + 2.X2 + 1 0.00/0.18 [a__and](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [a__first](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [a__from](X) = 2 0.00/0.18 [a__if](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 0.00/0.18 [mark](X) = 2.X 0.00/0.18 [0] = 2 0.00/0.18 [add](X1,X2) = 2.X1 + X2 + 1 0.00/0.18 [and](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [cons](X1,X2) = 2.X2 0.00/0.18 [fSNonEmpty] = 0 0.00/0.18 [false] = 1 0.00/0.18 [first](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.18 [from](X) = 1 0.00/0.18 [if](X1,X2,X3) = 2.X1 + 2.X2 + X3 + 1 0.00/0.18 [nil] = 0 0.00/0.18 [s](X) = 2.X + 2 0.00/0.18 [true] = 2 0.00/0.18 [A__ADD](X1,X2) = X1 + 2.X2 + 2 0.00/0.18 [A__AND](X1,X2) = X1 + 2.X2 0.00/0.18 [A__FIRST](X1,X2) = 0 0.00/0.18 [A__FROM](X) = 0 0.00/0.18 [A__IF](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 0.00/0.18 [MARK](X) = 2.X + 2 0.00/0.18 0.00/0.18 Problem 1: 0.00/0.18 0.00/0.18 SCC Processor: 0.00/0.18 -> Pairs: 0.00/0.18 A__AND(ttrue,X:S) -> MARK(X:S) 0.00/0.18 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.18 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> A__ADD(mark(X1:S),X2:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> A__AND(mark(X1:S),X2:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.18 -> Rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 ->Strongly Connected Components: 0.00/0.18 ->->Cycle: 0.00/0.18 ->->-> Pairs: 0.00/0.18 A__AND(ttrue,X:S) -> MARK(X:S) 0.00/0.18 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.18 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> A__AND(mark(X1:S),X2:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.18 ->->-> Rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 0.00/0.18 Problem 1: 0.00/0.18 0.00/0.18 Reduction Pairs Processor: 0.00/0.18 -> Pairs: 0.00/0.18 A__AND(ttrue,X:S) -> MARK(X:S) 0.00/0.18 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.18 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.18 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> A__AND(mark(X1:S),X2:S) 0.00/0.18 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.18 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.18 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.18 -> Rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.18 mark(ffalse) -> ffalse 0.00/0.18 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.18 mark(from(X:S)) -> a__from(X:S) 0.00/0.18 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.18 mark(nil) -> nil 0.00/0.18 mark(s(X:S)) -> s(X:S) 0.00/0.18 mark(ttrue) -> ttrue 0.00/0.18 -> Usable rules: 0.00/0.18 a__add(0,X:S) -> mark(X:S) 0.00/0.18 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.18 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.18 a__and(ffalse,Y:S) -> ffalse 0.00/0.18 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.18 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.18 a__first(0,X:S) -> nil 0.00/0.18 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.18 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.18 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.18 a__from(X:S) -> from(X:S) 0.00/0.18 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.18 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.18 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.18 mark(0) -> 0 0.00/0.18 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.18 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.18 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 ->Interpretation type: 0.00/0.19 Linear 0.00/0.19 ->Coefficients: 0.00/0.19 Natural Numbers 0.00/0.19 ->Dimension: 0.00/0.19 1 0.00/0.19 ->Bound: 0.00/0.19 2 0.00/0.19 ->Interpretation: 0.00/0.19 0.00/0.19 [a__add](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.19 [a__and](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.19 [a__first](X1,X2) = X1 + X2 + 2 0.00/0.19 [a__from](X) = 2.X + 2 0.00/0.19 [a__if](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 0.00/0.19 [mark](X) = 2.X + 2 0.00/0.19 [0] = 2 0.00/0.19 [add](X1,X2) = 2.X1 + X2 + 2 0.00/0.19 [and](X1,X2) = 2.X1 + X2 + 2 0.00/0.19 [cons](X1,X2) = X2 0.00/0.19 [fSNonEmpty] = 0 0.00/0.19 [false] = 1 0.00/0.19 [first](X1,X2) = X1 + X2 + 2 0.00/0.19 [from](X) = X 0.00/0.19 [if](X1,X2,X3) = 2.X1 + X2 + X3 + 2 0.00/0.19 [nil] = 2 0.00/0.19 [s](X) = 2.X + 2 0.00/0.19 [true] = 2 0.00/0.19 [A__ADD](X1,X2) = 0 0.00/0.19 [A__AND](X1,X2) = 2.X1 + 2.X2 + 1 0.00/0.19 [A__FIRST](X1,X2) = 0 0.00/0.19 [A__FROM](X) = 0 0.00/0.19 [A__IF](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 0.00/0.19 [MARK](X) = 2.X + 2 0.00/0.19 0.00/0.19 Problem 1: 0.00/0.19 0.00/0.19 SCC Processor: 0.00/0.19 -> Pairs: 0.00/0.19 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.19 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.19 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(and(X1:S,X2:S)) -> A__AND(mark(X1:S),X2:S) 0.00/0.19 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.19 -> Rules: 0.00/0.19 a__add(0,X:S) -> mark(X:S) 0.00/0.19 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.19 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.19 a__and(ffalse,Y:S) -> ffalse 0.00/0.19 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.19 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.19 a__first(0,X:S) -> nil 0.00/0.19 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.19 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.19 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.19 a__from(X:S) -> from(X:S) 0.00/0.19 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.19 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.19 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.19 mark(0) -> 0 0.00/0.19 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.19 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.19 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 ->Strongly Connected Components: 0.00/0.19 ->->Cycle: 0.00/0.19 ->->-> Pairs: 0.00/0.19 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.19 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.19 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.19 ->->-> Rules: 0.00/0.19 a__add(0,X:S) -> mark(X:S) 0.00/0.19 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.19 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.19 a__and(ffalse,Y:S) -> ffalse 0.00/0.19 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.19 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.19 a__first(0,X:S) -> nil 0.00/0.19 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.19 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.19 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.19 a__from(X:S) -> from(X:S) 0.00/0.19 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.19 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.19 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.19 mark(0) -> 0 0.00/0.19 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.19 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.19 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 0.00/0.19 Problem 1: 0.00/0.19 0.00/0.19 Reduction Pairs Processor: 0.00/0.19 -> Pairs: 0.00/0.19 A__IF(ffalse,X:S,Y:S) -> MARK(Y:S) 0.00/0.19 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.19 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.19 -> Rules: 0.00/0.19 a__add(0,X:S) -> mark(X:S) 0.00/0.19 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.19 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.19 a__and(ffalse,Y:S) -> ffalse 0.00/0.19 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.19 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.19 a__first(0,X:S) -> nil 0.00/0.19 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.19 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.19 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.19 a__from(X:S) -> from(X:S) 0.00/0.19 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.19 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.19 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.19 mark(0) -> 0 0.00/0.19 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.19 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.19 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 -> Usable rules: 0.00/0.19 a__add(0,X:S) -> mark(X:S) 0.00/0.19 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.19 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.19 a__and(ffalse,Y:S) -> ffalse 0.00/0.19 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.19 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.19 a__first(0,X:S) -> nil 0.00/0.19 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.19 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.19 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.19 a__from(X:S) -> from(X:S) 0.00/0.19 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.19 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.19 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.19 mark(0) -> 0 0.00/0.19 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.19 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.19 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 ->Interpretation type: 0.00/0.19 Linear 0.00/0.19 ->Coefficients: 0.00/0.19 Natural Numbers 0.00/0.19 ->Dimension: 0.00/0.19 1 0.00/0.19 ->Bound: 0.00/0.19 2 0.00/0.19 ->Interpretation: 0.00/0.19 0.00/0.19 [a__add](X1,X2) = 2.X1 + 2.X2 + 1 0.00/0.19 [a__and](X1,X2) = X1 + 2.X2 0.00/0.19 [a__first](X1,X2) = 2.X1 + X2 + 2 0.00/0.19 [a__from](X) = 2.X + 1 0.00/0.19 [a__if](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 0.00/0.19 [mark](X) = 2.X + 1 0.00/0.19 [0] = 0 0.00/0.19 [add](X1,X2) = 2.X1 + 2.X2 + 1 0.00/0.19 [and](X1,X2) = X1 + X2 0.00/0.19 [cons](X1,X2) = 1 0.00/0.19 [fSNonEmpty] = 0 0.00/0.19 [false] = 1 0.00/0.19 [first](X1,X2) = 2.X1 + X2 + 2 0.00/0.19 [from](X) = 2.X + 1 0.00/0.19 [if](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 0.00/0.19 [nil] = 2 0.00/0.19 [s](X) = X 0.00/0.19 [true] = 1 0.00/0.19 [A__ADD](X1,X2) = 0 0.00/0.19 [A__AND](X1,X2) = 0 0.00/0.19 [A__FIRST](X1,X2) = 0 0.00/0.19 [A__FROM](X) = 0 0.00/0.19 [A__IF](X1,X2,X3) = 2.X2 + 2.X3 + 1 0.00/0.19 [MARK](X) = 2.X 0.00/0.19 0.00/0.19 Problem 1: 0.00/0.19 0.00/0.19 SCC Processor: 0.00/0.19 -> Pairs: 0.00/0.19 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.19 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.19 -> Rules: 0.00/0.19 a__add(0,X:S) -> mark(X:S) 0.00/0.19 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.19 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.19 a__and(ffalse,Y:S) -> ffalse 0.00/0.19 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.19 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.19 a__first(0,X:S) -> nil 0.00/0.19 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.19 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.19 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.19 a__from(X:S) -> from(X:S) 0.00/0.19 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.19 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.19 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.19 mark(0) -> 0 0.00/0.19 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.19 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.19 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 ->Strongly Connected Components: 0.00/0.19 ->->Cycle: 0.00/0.19 ->->-> Pairs: 0.00/0.19 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.19 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.19 ->->-> Rules: 0.00/0.19 a__add(0,X:S) -> mark(X:S) 0.00/0.19 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.19 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.19 a__and(ffalse,Y:S) -> ffalse 0.00/0.19 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.19 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.19 a__first(0,X:S) -> nil 0.00/0.19 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.19 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.19 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.19 a__from(X:S) -> from(X:S) 0.00/0.19 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.19 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.19 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.19 mark(0) -> 0 0.00/0.19 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.19 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.19 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 0.00/0.19 Problem 1: 0.00/0.19 0.00/0.19 Subterm Processor: 0.00/0.19 -> Pairs: 0.00/0.19 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.19 MARK(add(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(and(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.19 MARK(first(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> A__IF(mark(X1:S),X2:S,X3:S) 0.00/0.19 MARK(if(X1:S,X2:S,X3:S)) -> MARK(X1:S) 0.00/0.19 -> Rules: 0.00/0.19 a__add(0,X:S) -> mark(X:S) 0.00/0.19 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.19 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.19 a__and(ffalse,Y:S) -> ffalse 0.00/0.19 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.19 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.19 a__first(0,X:S) -> nil 0.00/0.19 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.19 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.19 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.19 a__from(X:S) -> from(X:S) 0.00/0.19 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.19 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.19 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.19 mark(0) -> 0 0.00/0.19 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.19 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.19 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 ->Projection: 0.00/0.19 pi(A__IF) = 2 0.00/0.19 pi(MARK) = 1 0.00/0.19 0.00/0.19 Problem 1: 0.00/0.19 0.00/0.19 SCC Processor: 0.00/0.19 -> Pairs: 0.00/0.19 A__IF(ttrue,X:S,Y:S) -> MARK(X:S) 0.00/0.19 -> Rules: 0.00/0.19 a__add(0,X:S) -> mark(X:S) 0.00/0.19 a__add(s(X:S),Y:S) -> s(add(X:S,Y:S)) 0.00/0.19 a__add(X1:S,X2:S) -> add(X1:S,X2:S) 0.00/0.19 a__and(ffalse,Y:S) -> ffalse 0.00/0.19 a__and(ttrue,X:S) -> mark(X:S) 0.00/0.19 a__and(X1:S,X2:S) -> and(X1:S,X2:S) 0.00/0.19 a__first(0,X:S) -> nil 0.00/0.19 a__first(s(X:S),cons(Y:S,Z:S)) -> cons(Y:S,first(X:S,Z:S)) 0.00/0.19 a__first(X1:S,X2:S) -> first(X1:S,X2:S) 0.00/0.19 a__from(X:S) -> cons(X:S,from(s(X:S))) 0.00/0.19 a__from(X:S) -> from(X:S) 0.00/0.19 a__if(ffalse,X:S,Y:S) -> mark(Y:S) 0.00/0.19 a__if(ttrue,X:S,Y:S) -> mark(X:S) 0.00/0.19 a__if(X1:S,X2:S,X3:S) -> if(X1:S,X2:S,X3:S) 0.00/0.19 mark(0) -> 0 0.00/0.19 mark(add(X1:S,X2:S)) -> a__add(mark(X1:S),X2:S) 0.00/0.19 mark(and(X1:S,X2:S)) -> a__and(mark(X1:S),X2:S) 0.00/0.19 mark(cons(X1:S,X2:S)) -> cons(X1:S,X2:S) 0.00/0.19 mark(ffalse) -> ffalse 0.00/0.19 mark(first(X1:S,X2:S)) -> a__first(mark(X1:S),mark(X2:S)) 0.00/0.19 mark(from(X:S)) -> a__from(X:S) 0.00/0.19 mark(if(X1:S,X2:S,X3:S)) -> a__if(mark(X1:S),X2:S,X3:S) 0.00/0.19 mark(nil) -> nil 0.00/0.19 mark(s(X:S)) -> s(X:S) 0.00/0.19 mark(ttrue) -> ttrue 0.00/0.19 ->Strongly Connected Components: 0.00/0.19 There is no strongly connected component 0.00/0.19 0.00/0.19 The problem is finite. 0.00/0.19 EOF