/export/starexec/sandbox/solver/bin/starexec_run_ttt2-1.17+nonreach /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES Problem: app(app(map(),f),nil()) -> nil() app(app(map(),f),app(app(cons(),x),xs)) -> app(app(cons(),app(f,x)),app(app(map(),f),xs)) app(app(le(),0()),y) -> true() app(app(le(),app(s(),x)),0()) -> false() app(app(le(),app(s(),x)),app(s(),y)) -> app(app(le(),x),y) app(app(maxlist(),x),app(app(cons(),y),ys)) -> app(app(if(),app(app(le(),x),y)),app(app(maxlist(),y),ys)) app(app(maxlist(),x),nil()) -> x app(height(),app(app(node(),x),xs)) -> app(s(),app(app(maxlist(),0()),app(app(map(),height()),xs))) Proof: Extended Uncurrying Processor: application symbol: app symbol table: node ==> node0/0 node1/1 node2/2 height ==> height0/0 height1/1 if ==> if0/0 if1/1 if2/2 maxlist ==> maxlist0/0 maxlist1/1 maxlist2/2 false ==> false0/0 s ==> s0/0 s1/1 true ==> true0/0 0 ==> 00/0 le ==> le0/0 le1/1 le2/2 cons ==> cons0/0 cons1/1 cons2/2 nil ==> nil0/0 map ==> map0/0 map1/1 map2/2 uncurry-rules: app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) eta-rules: problem: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) DP Processor: DPs: map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) map{2,#}(f,cons2(x,xs)) -> app#(f,x) le{2,#}(s1(x),s1(y)) -> le{2,#}(x,y) maxlist{2,#}(x,cons2(y,ys)) -> maxlist{2,#}(y,ys) maxlist{2,#}(x,cons2(y,ys)) -> le{2,#}(x,y) height{1,#}(node2(x,xs)) -> map{2,#}(height0(),xs) height{1,#}(node2(x,xs)) -> maxlist{2,#}(00(),map2(height0(),xs)) app#(map1(x5),x6) -> map{2,#}(x5,x6) app#(le1(x12),x13) -> le{2,#}(x12,x13) app#(maxlist1(x20),x21) -> maxlist{2,#}(x20,x21) app#(height0(),x26) -> height{1,#}(x26) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) TDG Processor: DPs: map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) map{2,#}(f,cons2(x,xs)) -> app#(f,x) le{2,#}(s1(x),s1(y)) -> le{2,#}(x,y) maxlist{2,#}(x,cons2(y,ys)) -> maxlist{2,#}(y,ys) maxlist{2,#}(x,cons2(y,ys)) -> le{2,#}(x,y) height{1,#}(node2(x,xs)) -> map{2,#}(height0(),xs) height{1,#}(node2(x,xs)) -> maxlist{2,#}(00(),map2(height0(),xs)) app#(map1(x5),x6) -> map{2,#}(x5,x6) app#(le1(x12),x13) -> le{2,#}(x12,x13) app#(maxlist1(x20),x21) -> maxlist{2,#}(x20,x21) app#(height0(),x26) -> height{1,#}(x26) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) graph: height{1,#}(node2(x,xs)) -> maxlist{2,#}(00(),map2(height0(),xs)) -> maxlist{2,#}(x,cons2(y,ys)) -> le{2,#}(x,y) height{1,#}(node2(x,xs)) -> maxlist{2,#}(00(),map2(height0(),xs)) -> maxlist{2,#}(x,cons2(y,ys)) -> maxlist{2,#}(y,ys) height{1,#}(node2(x,xs)) -> map{2,#}(height0(),xs) -> map{2,#}(f,cons2(x,xs)) -> app#(f,x) height{1,#}(node2(x,xs)) -> map{2,#}(height0(),xs) -> map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) maxlist{2,#}(x,cons2(y,ys)) -> maxlist{2,#}(y,ys) -> maxlist{2,#}(x,cons2(y,ys)) -> le{2,#}(x,y) maxlist{2,#}(x,cons2(y,ys)) -> maxlist{2,#}(y,ys) -> maxlist{2,#}(x,cons2(y,ys)) -> maxlist{2,#}(y,ys) maxlist{2,#}(x,cons2(y,ys)) -> le{2,#}(x,y) -> le{2,#}(s1(x),s1(y)) -> le{2,#}(x,y) le{2,#}(s1(x),s1(y)) -> le{2,#}(x,y) -> le{2,#}(s1(x),s1(y)) -> le{2,#}(x,y) app#(height0(),x26) -> height{1,#}(x26) -> height{1,#}(node2(x,xs)) -> maxlist{2,#}(00(),map2(height0(),xs)) app#(height0(),x26) -> height{1,#}(x26) -> height{1,#}(node2(x,xs)) -> map{2,#}(height0(),xs) app#(maxlist1(x20),x21) -> maxlist{2,#}(x20,x21) -> maxlist{2,#}(x,cons2(y,ys)) -> le{2,#}(x,y) app#(maxlist1(x20),x21) -> maxlist{2,#}(x20,x21) -> maxlist{2,#}(x,cons2(y,ys)) -> maxlist{2,#}(y,ys) app#(le1(x12),x13) -> le{2,#}(x12,x13) -> le{2,#}(s1(x),s1(y)) -> le{2,#}(x,y) app#(map1(x5),x6) -> map{2,#}(x5,x6) -> map{2,#}(f,cons2(x,xs)) -> app#(f,x) app#(map1(x5),x6) -> map{2,#}(x5,x6) -> map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) map{2,#}(f,cons2(x,xs)) -> app#(f,x) -> app#(height0(),x26) -> height{1,#}(x26) map{2,#}(f,cons2(x,xs)) -> app#(f,x) -> app#(maxlist1(x20),x21) -> maxlist{2,#}(x20,x21) map{2,#}(f,cons2(x,xs)) -> app#(f,x) -> app#(le1(x12),x13) -> le{2,#}(x12,x13) map{2,#}(f,cons2(x,xs)) -> app#(f,x) -> app#(map1(x5),x6) -> map{2,#}(x5,x6) map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) -> map{2,#}(f,cons2(x,xs)) -> app#(f,x) map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) -> map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) SCC Processor: #sccs: 3 #rules: 7 #arcs: 21/121 DPs: height{1,#}(node2(x,xs)) -> map{2,#}(height0(),xs) map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) map{2,#}(f,cons2(x,xs)) -> app#(f,x) app#(map1(x5),x6) -> map{2,#}(x5,x6) app#(height0(),x26) -> height{1,#}(x26) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) Subterm Criterion Processor: simple projection: pi(map{2,#}) = 1 pi(app#) = 1 pi(height{1,#}) = 0 problem: DPs: app#(map1(x5),x6) -> map{2,#}(x5,x6) app#(height0(),x26) -> height{1,#}(x26) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) SCC Processor: #sccs: 0 #rules: 0 #arcs: 9/4 DPs: maxlist{2,#}(x,cons2(y,ys)) -> maxlist{2,#}(y,ys) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) Subterm Criterion Processor: simple projection: pi(maxlist{2,#}) = 1 problem: DPs: TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) Qed DPs: le{2,#}(s1(x),s1(y)) -> le{2,#}(x,y) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) Subterm Criterion Processor: simple projection: pi(le{2,#}) = 0 problem: DPs: TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) le2(00(),y) -> true0() le2(s1(x),00()) -> false0() le2(s1(x),s1(y)) -> le2(x,y) maxlist2(x,cons2(y,ys)) -> if2(le2(x,y),maxlist2(y,ys)) maxlist2(x,nil0()) -> x height1(node2(x,xs)) -> s1(maxlist2(00(),map2(height0(),xs))) app(map1(x5),x6) -> map2(x5,x6) app(map0(),x5) -> map1(x5) app(cons1(x9),x10) -> cons2(x9,x10) app(cons0(),x9) -> cons1(x9) app(le1(x12),x13) -> le2(x12,x13) app(le0(),x12) -> le1(x12) app(s0(),x17) -> s1(x17) app(maxlist1(x20),x21) -> maxlist2(x20,x21) app(maxlist0(),x20) -> maxlist1(x20) app(if1(x23),x24) -> if2(x23,x24) app(if0(),x23) -> if1(x23) app(height0(),x26) -> height1(x26) app(node1(x28),x29) -> node2(x28,x29) app(node0(),x28) -> node1(x28) Qed