0.00/0.48 YES 0.00/0.48 0.00/0.48 Problem 1: 0.00/0.48 0.00/0.48 (VAR v_NonEmpty:S L:S X:S X1:S X2:S XS:S Y:S YS:S) 0.00/0.48 (RULES 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ) 0.00/0.48 (STRATEGY INNERMOST) 0.00/0.48 0.00/0.48 Problem 1: 0.00/0.48 0.00/0.48 Dependency Pairs Processor: 0.00/0.48 -> Pairs: 0.00/0.48 ACTIVE(app(cons(X:S,XS:S),YS:S)) -> APP(XS:S,YS:S) 0.00/0.48 ACTIVE(app(cons(X:S,XS:S),YS:S)) -> CONS(X:S,app(XS:S,YS:S)) 0.00/0.48 ACTIVE(app(cons(X:S,XS:S),YS:S)) -> MARK(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 ACTIVE(app(nil,YS:S)) -> MARK(YS:S) 0.00/0.48 ACTIVE(from(X:S)) -> CONS(X:S,from(s(X:S))) 0.00/0.48 ACTIVE(from(X:S)) -> FROM(s(X:S)) 0.00/0.48 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.00/0.48 ACTIVE(from(X:S)) -> S(X:S) 0.00/0.48 ACTIVE(prefix(L:S)) -> CONS(nil,zWadr(L:S,prefix(L:S))) 0.00/0.48 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 ACTIVE(prefix(L:S)) -> ZWADR(L:S,prefix(L:S)) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> APP(Y:S,cons(X:S,nil)) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> CONS(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S)) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> CONS(X:S,nil) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> ZWADR(XS:S,YS:S) 0.00/0.48 ACTIVE(zWadr(nil,YS:S)) -> MARK(nil) 0.00/0.48 ACTIVE(zWadr(XS:S,nil)) -> MARK(nil) 0.00/0.48 APP(active(X1:S),X2:S) -> APP(X1:S,X2:S) 0.00/0.48 APP(mark(X1:S),X2:S) -> APP(X1:S,X2:S) 0.00/0.48 APP(X1:S,active(X2:S)) -> APP(X1:S,X2:S) 0.00/0.48 APP(X1:S,mark(X2:S)) -> APP(X1:S,X2:S) 0.00/0.48 CONS(active(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(mark(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(X1:S,active(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(X1:S,mark(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.48 FROM(active(X:S)) -> FROM(X:S) 0.00/0.48 FROM(mark(X:S)) -> FROM(X:S) 0.00/0.48 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.00/0.48 MARK(app(X1:S,X2:S)) -> APP(mark(X1:S),mark(X2:S)) 0.00/0.48 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.48 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.00/0.48 MARK(cons(X1:S,X2:S)) -> CONS(mark(X1:S),X2:S) 0.00/0.48 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.00/0.48 MARK(from(X:S)) -> FROM(mark(X:S)) 0.00/0.48 MARK(from(X:S)) -> MARK(X:S) 0.00/0.48 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.00/0.48 MARK(prefix(X:S)) -> MARK(X:S) 0.00/0.48 MARK(prefix(X:S)) -> PREFIX(mark(X:S)) 0.00/0.48 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.00/0.48 MARK(s(X:S)) -> MARK(X:S) 0.00/0.48 MARK(s(X:S)) -> S(mark(X:S)) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> ZWADR(mark(X1:S),mark(X2:S)) 0.00/0.48 PREFIX(active(X:S)) -> PREFIX(X:S) 0.00/0.48 PREFIX(mark(X:S)) -> PREFIX(X:S) 0.00/0.48 S(active(X:S)) -> S(X:S) 0.00/0.48 S(mark(X:S)) -> S(X:S) 0.00/0.48 ZWADR(active(X1:S),X2:S) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(mark(X1:S),X2:S) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,active(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,mark(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 0.00/0.48 Problem 1: 0.00/0.48 0.00/0.48 SCC Processor: 0.00/0.48 -> Pairs: 0.00/0.48 ACTIVE(app(cons(X:S,XS:S),YS:S)) -> APP(XS:S,YS:S) 0.00/0.48 ACTIVE(app(cons(X:S,XS:S),YS:S)) -> CONS(X:S,app(XS:S,YS:S)) 0.00/0.48 ACTIVE(app(cons(X:S,XS:S),YS:S)) -> MARK(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 ACTIVE(app(nil,YS:S)) -> MARK(YS:S) 0.00/0.48 ACTIVE(from(X:S)) -> CONS(X:S,from(s(X:S))) 0.00/0.48 ACTIVE(from(X:S)) -> FROM(s(X:S)) 0.00/0.48 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.00/0.48 ACTIVE(from(X:S)) -> S(X:S) 0.00/0.48 ACTIVE(prefix(L:S)) -> CONS(nil,zWadr(L:S,prefix(L:S))) 0.00/0.48 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 ACTIVE(prefix(L:S)) -> ZWADR(L:S,prefix(L:S)) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> APP(Y:S,cons(X:S,nil)) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> CONS(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S)) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> CONS(X:S,nil) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> ZWADR(XS:S,YS:S) 0.00/0.48 ACTIVE(zWadr(nil,YS:S)) -> MARK(nil) 0.00/0.48 ACTIVE(zWadr(XS:S,nil)) -> MARK(nil) 0.00/0.48 APP(active(X1:S),X2:S) -> APP(X1:S,X2:S) 0.00/0.48 APP(mark(X1:S),X2:S) -> APP(X1:S,X2:S) 0.00/0.48 APP(X1:S,active(X2:S)) -> APP(X1:S,X2:S) 0.00/0.48 APP(X1:S,mark(X2:S)) -> APP(X1:S,X2:S) 0.00/0.48 CONS(active(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(mark(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(X1:S,active(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(X1:S,mark(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.48 FROM(active(X:S)) -> FROM(X:S) 0.00/0.48 FROM(mark(X:S)) -> FROM(X:S) 0.00/0.48 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.00/0.48 MARK(app(X1:S,X2:S)) -> APP(mark(X1:S),mark(X2:S)) 0.00/0.48 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.48 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.00/0.48 MARK(cons(X1:S,X2:S)) -> CONS(mark(X1:S),X2:S) 0.00/0.48 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.00/0.48 MARK(from(X:S)) -> FROM(mark(X:S)) 0.00/0.48 MARK(from(X:S)) -> MARK(X:S) 0.00/0.48 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.00/0.48 MARK(prefix(X:S)) -> MARK(X:S) 0.00/0.48 MARK(prefix(X:S)) -> PREFIX(mark(X:S)) 0.00/0.48 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.00/0.48 MARK(s(X:S)) -> MARK(X:S) 0.00/0.48 MARK(s(X:S)) -> S(mark(X:S)) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> ZWADR(mark(X1:S),mark(X2:S)) 0.00/0.48 PREFIX(active(X:S)) -> PREFIX(X:S) 0.00/0.48 PREFIX(mark(X:S)) -> PREFIX(X:S) 0.00/0.48 S(active(X:S)) -> S(X:S) 0.00/0.48 S(mark(X:S)) -> S(X:S) 0.00/0.48 ZWADR(active(X1:S),X2:S) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(mark(X1:S),X2:S) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,active(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,mark(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Strongly Connected Components: 0.00/0.48 ->->Cycle: 0.00/0.48 ->->-> Pairs: 0.00/0.48 ZWADR(active(X1:S),X2:S) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(mark(X1:S),X2:S) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,active(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,mark(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ->->-> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->->Cycle: 0.00/0.48 ->->-> Pairs: 0.00/0.48 S(active(X:S)) -> S(X:S) 0.00/0.48 S(mark(X:S)) -> S(X:S) 0.00/0.48 ->->-> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->->Cycle: 0.00/0.48 ->->-> Pairs: 0.00/0.48 PREFIX(active(X:S)) -> PREFIX(X:S) 0.00/0.48 PREFIX(mark(X:S)) -> PREFIX(X:S) 0.00/0.48 ->->-> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->->Cycle: 0.00/0.48 ->->-> Pairs: 0.00/0.48 FROM(active(X:S)) -> FROM(X:S) 0.00/0.48 FROM(mark(X:S)) -> FROM(X:S) 0.00/0.48 ->->-> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->->Cycle: 0.00/0.48 ->->-> Pairs: 0.00/0.48 CONS(active(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(mark(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(X1:S,active(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.48 CONS(X1:S,mark(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.48 ->->-> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->->Cycle: 0.00/0.48 ->->-> Pairs: 0.00/0.48 APP(active(X1:S),X2:S) -> APP(X1:S,X2:S) 0.00/0.48 APP(mark(X1:S),X2:S) -> APP(X1:S,X2:S) 0.00/0.48 APP(X1:S,active(X2:S)) -> APP(X1:S,X2:S) 0.00/0.48 APP(X1:S,mark(X2:S)) -> APP(X1:S,X2:S) 0.00/0.48 ->->-> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->->Cycle: 0.00/0.48 ->->-> Pairs: 0.00/0.48 ACTIVE(app(cons(X:S,XS:S),YS:S)) -> MARK(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 ACTIVE(app(nil,YS:S)) -> MARK(YS:S) 0.00/0.48 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.00/0.48 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.00/0.48 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.48 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.00/0.48 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.00/0.48 MARK(from(X:S)) -> MARK(X:S) 0.00/0.48 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.00/0.48 MARK(prefix(X:S)) -> MARK(X:S) 0.00/0.48 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.00/0.48 MARK(s(X:S)) -> MARK(X:S) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.48 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.48 ->->-> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 0.00/0.48 0.00/0.48 The problem is decomposed in 7 subproblems. 0.00/0.48 0.00/0.48 Problem 1.1: 0.00/0.48 0.00/0.48 Subterm Processor: 0.00/0.48 -> Pairs: 0.00/0.48 ZWADR(active(X1:S),X2:S) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(mark(X1:S),X2:S) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,active(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,mark(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Projection: 0.00/0.48 pi(ZWADR) = 1 0.00/0.48 0.00/0.48 Problem 1.1: 0.00/0.48 0.00/0.48 SCC Processor: 0.00/0.48 -> Pairs: 0.00/0.48 ZWADR(X1:S,active(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,mark(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Strongly Connected Components: 0.00/0.48 ->->Cycle: 0.00/0.48 ->->-> Pairs: 0.00/0.48 ZWADR(X1:S,active(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,mark(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ->->-> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 0.00/0.48 Problem 1.1: 0.00/0.48 0.00/0.48 Subterm Processor: 0.00/0.48 -> Pairs: 0.00/0.48 ZWADR(X1:S,active(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 ZWADR(X1:S,mark(X2:S)) -> ZWADR(X1:S,X2:S) 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Projection: 0.00/0.48 pi(ZWADR) = 2 0.00/0.48 0.00/0.48 Problem 1.1: 0.00/0.48 0.00/0.48 SCC Processor: 0.00/0.48 -> Pairs: 0.00/0.48 Empty 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Strongly Connected Components: 0.00/0.48 There is no strongly connected component 0.00/0.48 0.00/0.48 The problem is finite. 0.00/0.48 0.00/0.48 Problem 1.2: 0.00/0.48 0.00/0.48 Subterm Processor: 0.00/0.48 -> Pairs: 0.00/0.48 S(active(X:S)) -> S(X:S) 0.00/0.48 S(mark(X:S)) -> S(X:S) 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Projection: 0.00/0.48 pi(S) = 1 0.00/0.48 0.00/0.48 Problem 1.2: 0.00/0.48 0.00/0.48 SCC Processor: 0.00/0.48 -> Pairs: 0.00/0.48 Empty 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Strongly Connected Components: 0.00/0.48 There is no strongly connected component 0.00/0.48 0.00/0.48 The problem is finite. 0.00/0.48 0.00/0.48 Problem 1.3: 0.00/0.48 0.00/0.48 Subterm Processor: 0.00/0.48 -> Pairs: 0.00/0.48 PREFIX(active(X:S)) -> PREFIX(X:S) 0.00/0.48 PREFIX(mark(X:S)) -> PREFIX(X:S) 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Projection: 0.00/0.48 pi(PREFIX) = 1 0.00/0.48 0.00/0.48 Problem 1.3: 0.00/0.48 0.00/0.48 SCC Processor: 0.00/0.48 -> Pairs: 0.00/0.48 Empty 0.00/0.48 -> Rules: 0.00/0.48 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.48 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.48 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.48 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.48 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.48 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.48 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.48 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.48 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.48 from(active(X:S)) -> from(X:S) 0.00/0.48 from(mark(X:S)) -> from(X:S) 0.00/0.48 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.48 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.48 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.48 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.48 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.48 mark(nil) -> active(nil) 0.00/0.48 prefix(active(X:S)) -> prefix(X:S) 0.00/0.48 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.48 s(active(X:S)) -> s(X:S) 0.00/0.48 s(mark(X:S)) -> s(X:S) 0.00/0.48 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.48 ->Strongly Connected Components: 0.00/0.49 There is no strongly connected component 0.00/0.49 0.00/0.49 The problem is finite. 0.00/0.49 0.00/0.49 Problem 1.4: 0.00/0.49 0.00/0.49 Subterm Processor: 0.00/0.49 -> Pairs: 0.00/0.49 FROM(active(X:S)) -> FROM(X:S) 0.00/0.49 FROM(mark(X:S)) -> FROM(X:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Projection: 0.00/0.49 pi(FROM) = 1 0.00/0.49 0.00/0.49 Problem 1.4: 0.00/0.49 0.00/0.49 SCC Processor: 0.00/0.49 -> Pairs: 0.00/0.49 Empty 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Strongly Connected Components: 0.00/0.49 There is no strongly connected component 0.00/0.49 0.00/0.49 The problem is finite. 0.00/0.49 0.00/0.49 Problem 1.5: 0.00/0.49 0.00/0.49 Subterm Processor: 0.00/0.49 -> Pairs: 0.00/0.49 CONS(active(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.49 CONS(mark(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.49 CONS(X1:S,active(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.49 CONS(X1:S,mark(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Projection: 0.00/0.49 pi(CONS) = 1 0.00/0.49 0.00/0.49 Problem 1.5: 0.00/0.49 0.00/0.49 SCC Processor: 0.00/0.49 -> Pairs: 0.00/0.49 CONS(X1:S,active(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.49 CONS(X1:S,mark(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Strongly Connected Components: 0.00/0.49 ->->Cycle: 0.00/0.49 ->->-> Pairs: 0.00/0.49 CONS(X1:S,active(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.49 CONS(X1:S,mark(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.49 ->->-> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 0.00/0.49 Problem 1.5: 0.00/0.49 0.00/0.49 Subterm Processor: 0.00/0.49 -> Pairs: 0.00/0.49 CONS(X1:S,active(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.49 CONS(X1:S,mark(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Projection: 0.00/0.49 pi(CONS) = 2 0.00/0.49 0.00/0.49 Problem 1.5: 0.00/0.49 0.00/0.49 SCC Processor: 0.00/0.49 -> Pairs: 0.00/0.49 Empty 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Strongly Connected Components: 0.00/0.49 There is no strongly connected component 0.00/0.49 0.00/0.49 The problem is finite. 0.00/0.49 0.00/0.49 Problem 1.6: 0.00/0.49 0.00/0.49 Subterm Processor: 0.00/0.49 -> Pairs: 0.00/0.49 APP(active(X1:S),X2:S) -> APP(X1:S,X2:S) 0.00/0.49 APP(mark(X1:S),X2:S) -> APP(X1:S,X2:S) 0.00/0.49 APP(X1:S,active(X2:S)) -> APP(X1:S,X2:S) 0.00/0.49 APP(X1:S,mark(X2:S)) -> APP(X1:S,X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Projection: 0.00/0.49 pi(APP) = 1 0.00/0.49 0.00/0.49 Problem 1.6: 0.00/0.49 0.00/0.49 SCC Processor: 0.00/0.49 -> Pairs: 0.00/0.49 APP(X1:S,active(X2:S)) -> APP(X1:S,X2:S) 0.00/0.49 APP(X1:S,mark(X2:S)) -> APP(X1:S,X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Strongly Connected Components: 0.00/0.49 ->->Cycle: 0.00/0.49 ->->-> Pairs: 0.00/0.49 APP(X1:S,active(X2:S)) -> APP(X1:S,X2:S) 0.00/0.49 APP(X1:S,mark(X2:S)) -> APP(X1:S,X2:S) 0.00/0.49 ->->-> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 0.00/0.49 Problem 1.6: 0.00/0.49 0.00/0.49 Subterm Processor: 0.00/0.49 -> Pairs: 0.00/0.49 APP(X1:S,active(X2:S)) -> APP(X1:S,X2:S) 0.00/0.49 APP(X1:S,mark(X2:S)) -> APP(X1:S,X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Projection: 0.00/0.49 pi(APP) = 2 0.00/0.49 0.00/0.49 Problem 1.6: 0.00/0.49 0.00/0.49 SCC Processor: 0.00/0.49 -> Pairs: 0.00/0.49 Empty 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Strongly Connected Components: 0.00/0.49 There is no strongly connected component 0.00/0.49 0.00/0.49 The problem is finite. 0.00/0.49 0.00/0.49 Problem 1.7: 0.00/0.49 0.00/0.49 Reduction Pairs Processor: 0.00/0.49 -> Pairs: 0.00/0.49 ACTIVE(app(cons(X:S,XS:S),YS:S)) -> MARK(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 ACTIVE(app(nil,YS:S)) -> MARK(YS:S) 0.00/0.49 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.00/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.00/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.00/0.49 MARK(from(X:S)) -> MARK(X:S) 0.00/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.00/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.00/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.00/0.49 MARK(s(X:S)) -> MARK(X:S) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 -> Usable rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Interpretation type: 0.00/0.49 Linear 0.00/0.49 ->Coefficients: 0.00/0.49 Natural Numbers 0.00/0.49 ->Dimension: 0.00/0.49 1 0.00/0.49 ->Bound: 0.00/0.49 2 0.00/0.49 ->Interpretation: 0.00/0.49 0.00/0.49 [active](X) = X 0.00/0.49 [app](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.49 [cons](X1,X2) = X1 + 2 0.00/0.49 [from](X) = 2.X + 2 0.00/0.49 [mark](X) = X 0.00/0.49 [prefix](X) = 2.X + 2 0.00/0.49 [s](X) = 2.X 0.00/0.49 [zWadr](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.49 [fSNonEmpty] = 0 0.00/0.49 [nil] = 0 0.00/0.49 [ACTIVE](X) = 2.X + 2 0.00/0.49 [APP](X1,X2) = 0 0.00/0.49 [CONS](X1,X2) = 0 0.00/0.49 [FROM](X) = 0 0.00/0.49 [MARK](X) = 2.X + 2 0.00/0.49 [PREFIX](X) = 0 0.00/0.49 [S](X) = 0 0.00/0.49 [ZWADR](X1,X2) = 0 0.00/0.49 0.00/0.49 Problem 1.7: 0.00/0.49 0.00/0.49 SCC Processor: 0.00/0.49 -> Pairs: 0.00/0.49 ACTIVE(app(nil,YS:S)) -> MARK(YS:S) 0.00/0.49 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.00/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.00/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.00/0.49 MARK(from(X:S)) -> MARK(X:S) 0.00/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.00/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.00/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.00/0.49 MARK(s(X:S)) -> MARK(X:S) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Strongly Connected Components: 0.00/0.49 ->->Cycle: 0.00/0.49 ->->-> Pairs: 0.00/0.49 ACTIVE(app(nil,YS:S)) -> MARK(YS:S) 0.00/0.49 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.00/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.00/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.00/0.49 MARK(from(X:S)) -> MARK(X:S) 0.00/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.00/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.00/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.00/0.49 MARK(s(X:S)) -> MARK(X:S) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.49 ->->-> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 0.00/0.49 Problem 1.7: 0.00/0.49 0.00/0.49 Reduction Pairs Processor: 0.00/0.49 -> Pairs: 0.00/0.49 ACTIVE(app(nil,YS:S)) -> MARK(YS:S) 0.00/0.49 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.00/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.00/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.00/0.49 MARK(from(X:S)) -> MARK(X:S) 0.00/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.00/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.00/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.00/0.49 MARK(s(X:S)) -> MARK(X:S) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.00/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.00/0.49 -> Rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 -> Usable rules: 0.00/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.00/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.00/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.00/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.00/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.00/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.00/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.00/0.49 from(active(X:S)) -> from(X:S) 0.00/0.49 from(mark(X:S)) -> from(X:S) 0.00/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.00/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.00/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.00/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.00/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.00/0.49 mark(nil) -> active(nil) 0.00/0.49 prefix(active(X:S)) -> prefix(X:S) 0.00/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.00/0.49 s(active(X:S)) -> s(X:S) 0.00/0.49 s(mark(X:S)) -> s(X:S) 0.00/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.00/0.49 ->Interpretation type: 0.00/0.49 Linear 0.00/0.49 ->Coefficients: 0.00/0.49 Natural Numbers 0.00/0.49 ->Dimension: 0.00/0.49 1 0.00/0.49 ->Bound: 0.00/0.49 2 0.00/0.49 ->Interpretation: 0.00/0.49 0.00/0.49 [active](X) = X 0.00/0.49 [app](X1,X2) = 2.X1 + 2.X2 + 2 0.00/0.49 [cons](X1,X2) = X1 + 2 0.00/0.49 [from](X) = 2.X + 2 0.00/0.49 [mark](X) = X 0.00/0.49 [prefix](X) = 2.X + 2 0.00/0.49 [s](X) = 2.X + 1 0.00/0.49 [zWadr](X1,X2) = 2.X1 + 2.X2 + 1 0.00/0.49 [fSNonEmpty] = 0 0.00/0.49 [nil] = 0 0.00/0.49 [ACTIVE](X) = 2.X + 2 0.00/0.49 [APP](X1,X2) = 0 0.00/0.49 [CONS](X1,X2) = 0 0.00/0.49 [FROM](X) = 0 0.00/0.49 [MARK](X) = 2.X + 2 0.00/0.49 [PREFIX](X) = 0 0.00/0.49 [S](X) = 0 0.00/0.49 [ZWADR](X1,X2) = 0 0.00/0.49 0.00/0.49 Problem 1.7: 0.00/0.49 0.00/0.49 SCC Processor: 0.00/0.49 -> Pairs: 0.00/0.49 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.00/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.00/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.00/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Strongly Connected Components: 0.47/0.49 ->->Cycle: 0.47/0.49 ->->-> Pairs: 0.47/0.49 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.47/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 ->->-> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 0.47/0.49 Problem 1.7: 0.47/0.49 0.47/0.49 Reduction Pairs Processor: 0.47/0.49 -> Pairs: 0.47/0.49 ACTIVE(from(X:S)) -> MARK(cons(X:S,from(s(X:S)))) 0.47/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 -> Usable rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Interpretation type: 0.47/0.49 Linear 0.47/0.49 ->Coefficients: 0.47/0.49 Natural Numbers 0.47/0.49 ->Dimension: 0.47/0.49 1 0.47/0.49 ->Bound: 0.47/0.49 2 0.47/0.49 ->Interpretation: 0.47/0.49 0.47/0.49 [active](X) = X 0.47/0.49 [app](X1,X2) = 2.X1 + X2 0.47/0.49 [cons](X1,X2) = 2.X1 + 1 0.47/0.49 [from](X) = 2.X + 2 0.47/0.49 [mark](X) = X 0.47/0.49 [prefix](X) = 2.X + 2 0.47/0.49 [s](X) = 2.X + 2 0.47/0.49 [zWadr](X1,X2) = 2.X1 + 2.X2 + 1 0.47/0.49 [fSNonEmpty] = 0 0.47/0.49 [nil] = 0 0.47/0.49 [ACTIVE](X) = 2.X + 2 0.47/0.49 [APP](X1,X2) = 0 0.47/0.49 [CONS](X1,X2) = 0 0.47/0.49 [FROM](X) = 0 0.47/0.49 [MARK](X) = 2.X + 2 0.47/0.49 [PREFIX](X) = 0 0.47/0.49 [S](X) = 0 0.47/0.49 [ZWADR](X1,X2) = 0 0.47/0.49 0.47/0.49 Problem 1.7: 0.47/0.49 0.47/0.49 SCC Processor: 0.47/0.49 -> Pairs: 0.47/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Strongly Connected Components: 0.47/0.49 ->->Cycle: 0.47/0.49 ->->-> Pairs: 0.47/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 ->->-> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 0.47/0.49 Problem 1.7: 0.47/0.49 0.47/0.49 Reduction Pairs Processor: 0.47/0.49 -> Pairs: 0.47/0.49 ACTIVE(prefix(L:S)) -> MARK(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 -> Usable rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Interpretation type: 0.47/0.49 Linear 0.47/0.49 ->Coefficients: 0.47/0.49 Natural Numbers 0.47/0.49 ->Dimension: 0.47/0.49 1 0.47/0.49 ->Bound: 0.47/0.49 2 0.47/0.49 ->Interpretation: 0.47/0.49 0.47/0.49 [active](X) = X 0.47/0.49 [app](X1,X2) = 2.X1 + 2.X2 0.47/0.49 [cons](X1,X2) = X1 + 1 0.47/0.49 [from](X) = X + 1 0.47/0.49 [mark](X) = X 0.47/0.49 [prefix](X) = 2.X + 2 0.47/0.49 [s](X) = 2.X + 1 0.47/0.49 [zWadr](X1,X2) = 2.X1 + 2.X2 + 2 0.47/0.49 [fSNonEmpty] = 0 0.47/0.49 [nil] = 0 0.47/0.49 [ACTIVE](X) = 2.X + 2 0.47/0.49 [APP](X1,X2) = 0 0.47/0.49 [CONS](X1,X2) = 0 0.47/0.49 [FROM](X) = 0 0.47/0.49 [MARK](X) = 2.X + 2 0.47/0.49 [PREFIX](X) = 0 0.47/0.49 [S](X) = 0 0.47/0.49 [ZWADR](X1,X2) = 0 0.47/0.49 0.47/0.49 Problem 1.7: 0.47/0.49 0.47/0.49 SCC Processor: 0.47/0.49 -> Pairs: 0.47/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Strongly Connected Components: 0.47/0.49 ->->Cycle: 0.47/0.49 ->->-> Pairs: 0.47/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 ->->-> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 0.47/0.49 Problem 1.7: 0.47/0.49 0.47/0.49 Reduction Pairs Processor: 0.47/0.49 -> Pairs: 0.47/0.49 ACTIVE(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> MARK(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 -> Usable rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Interpretation type: 0.47/0.49 Linear 0.47/0.49 ->Coefficients: 0.47/0.49 Natural Numbers 0.47/0.49 ->Dimension: 0.47/0.49 1 0.47/0.49 ->Bound: 0.47/0.49 2 0.47/0.49 ->Interpretation: 0.47/0.49 0.47/0.49 [active](X) = X 0.47/0.49 [app](X1,X2) = 2.X1 + X2 0.47/0.49 [cons](X1,X2) = 2.X1 0.47/0.49 [from](X) = 2.X + 2 0.47/0.49 [mark](X) = X 0.47/0.49 [prefix](X) = 2.X + 1 0.47/0.49 [s](X) = 2.X + 2 0.47/0.49 [zWadr](X1,X2) = 2.X1 + 2.X2 + 2 0.47/0.49 [fSNonEmpty] = 0 0.47/0.49 [nil] = 0 0.47/0.49 [ACTIVE](X) = 2.X 0.47/0.49 [APP](X1,X2) = 0 0.47/0.49 [CONS](X1,X2) = 0 0.47/0.49 [FROM](X) = 0 0.47/0.49 [MARK](X) = 2.X 0.47/0.49 [PREFIX](X) = 0 0.47/0.49 [S](X) = 0 0.47/0.49 [ZWADR](X1,X2) = 0 0.47/0.49 0.47/0.49 Problem 1.7: 0.47/0.49 0.47/0.49 SCC Processor: 0.47/0.49 -> Pairs: 0.47/0.49 MARK(app(X1:S,X2:S)) -> ACTIVE(app(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> ACTIVE(cons(mark(X1:S),X2:S)) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> ACTIVE(from(mark(X:S))) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> ACTIVE(prefix(mark(X:S))) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> ACTIVE(s(mark(X:S))) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> ACTIVE(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Strongly Connected Components: 0.47/0.49 ->->Cycle: 0.47/0.49 ->->-> Pairs: 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 ->->-> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 0.47/0.49 Problem 1.7: 0.47/0.49 0.47/0.49 Subterm Processor: 0.47/0.49 -> Pairs: 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(app(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 MARK(cons(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(from(X:S)) -> MARK(X:S) 0.47/0.49 MARK(prefix(X:S)) -> MARK(X:S) 0.47/0.49 MARK(s(X:S)) -> MARK(X:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X1:S) 0.47/0.49 MARK(zWadr(X1:S,X2:S)) -> MARK(X2:S) 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Projection: 0.47/0.49 pi(MARK) = 1 0.47/0.49 0.47/0.49 Problem 1.7: 0.47/0.49 0.47/0.49 SCC Processor: 0.47/0.49 -> Pairs: 0.47/0.49 Empty 0.47/0.49 -> Rules: 0.47/0.49 active(app(cons(X:S,XS:S),YS:S)) -> mark(cons(X:S,app(XS:S,YS:S))) 0.47/0.49 active(app(nil,YS:S)) -> mark(YS:S) 0.47/0.49 active(from(X:S)) -> mark(cons(X:S,from(s(X:S)))) 0.47/0.49 active(prefix(L:S)) -> mark(cons(nil,zWadr(L:S,prefix(L:S)))) 0.47/0.49 active(zWadr(cons(X:S,XS:S),cons(Y:S,YS:S))) -> mark(cons(app(Y:S,cons(X:S,nil)),zWadr(XS:S,YS:S))) 0.47/0.49 active(zWadr(nil,YS:S)) -> mark(nil) 0.47/0.49 active(zWadr(XS:S,nil)) -> mark(nil) 0.47/0.49 app(active(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(mark(X1:S),X2:S) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,active(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 app(X1:S,mark(X2:S)) -> app(X1:S,X2:S) 0.47/0.49 cons(active(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(mark(X1:S),X2:S) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,active(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 cons(X1:S,mark(X2:S)) -> cons(X1:S,X2:S) 0.47/0.49 from(active(X:S)) -> from(X:S) 0.47/0.49 from(mark(X:S)) -> from(X:S) 0.47/0.49 mark(app(X1:S,X2:S)) -> active(app(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(cons(X1:S,X2:S)) -> active(cons(mark(X1:S),X2:S)) 0.47/0.49 mark(from(X:S)) -> active(from(mark(X:S))) 0.47/0.49 mark(prefix(X:S)) -> active(prefix(mark(X:S))) 0.47/0.49 mark(s(X:S)) -> active(s(mark(X:S))) 0.47/0.49 mark(zWadr(X1:S,X2:S)) -> active(zWadr(mark(X1:S),mark(X2:S))) 0.47/0.49 mark(nil) -> active(nil) 0.47/0.49 prefix(active(X:S)) -> prefix(X:S) 0.47/0.49 prefix(mark(X:S)) -> prefix(X:S) 0.47/0.49 s(active(X:S)) -> s(X:S) 0.47/0.49 s(mark(X:S)) -> s(X:S) 0.47/0.49 zWadr(active(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(mark(X1:S),X2:S) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,active(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 zWadr(X1:S,mark(X2:S)) -> zWadr(X1:S,X2:S) 0.47/0.49 ->Strongly Connected Components: 0.47/0.49 There is no strongly connected component 0.47/0.49 0.47/0.49 The problem is finite. 0.47/0.49 EOF