/export/starexec/sandbox2/solver/bin/starexec_run_ttt2-1.17+nonreach /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/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(app(comp(),f),g),x) -> app(f,app(g,x)) app(twice(),f) -> app(app(comp(),f),f) Proof: Extended Uncurrying Processor: application symbol: app symbol table: twice ==> twice0/0 twice1/1 comp ==> comp0/0 comp1/1 comp2/2 comp3/3 cons ==> cons0/0 cons1/1 cons2/2 nil ==> nil0/0 map ==> map0/0 map1/1 map2/2 uncurry-rules: app(map1(x4),x5) -> map2(x4,x5) app(map0(),x4) -> map1(x4) app(cons1(x8),x9) -> cons2(x8,x9) app(cons0(),x8) -> cons1(x8) app(comp2(x11,x12),x13) -> comp3(x11,x12,x13) app(comp1(x11),x12) -> comp2(x11,x12) app(comp0(),x11) -> comp1(x11) app(twice0(),x15) -> twice1(x15) eta-rules: problem: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) comp3(f,g,x) -> app(f,app(g,x)) twice1(f) -> comp2(f,f) app(map1(x4),x5) -> map2(x4,x5) app(map0(),x4) -> map1(x4) app(cons1(x8),x9) -> cons2(x8,x9) app(cons0(),x8) -> cons1(x8) app(comp2(x11,x12),x13) -> comp3(x11,x12,x13) app(comp1(x11),x12) -> comp2(x11,x12) app(comp0(),x11) -> comp1(x11) app(twice0(),x15) -> twice1(x15) DP Processor: DPs: map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) map{2,#}(f,cons2(x,xs)) -> app#(f,x) comp{3,#}(f,g,x) -> app#(g,x) comp{3,#}(f,g,x) -> app#(f,app(g,x)) app#(map1(x4),x5) -> map{2,#}(x4,x5) app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) app#(twice0(),x15) -> twice{1,#}(x15) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) comp3(f,g,x) -> app(f,app(g,x)) twice1(f) -> comp2(f,f) app(map1(x4),x5) -> map2(x4,x5) app(map0(),x4) -> map1(x4) app(cons1(x8),x9) -> cons2(x8,x9) app(cons0(),x8) -> cons1(x8) app(comp2(x11,x12),x13) -> comp3(x11,x12,x13) app(comp1(x11),x12) -> comp2(x11,x12) app(comp0(),x11) -> comp1(x11) app(twice0(),x15) -> twice1(x15) TDG Processor: DPs: map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) map{2,#}(f,cons2(x,xs)) -> app#(f,x) comp{3,#}(f,g,x) -> app#(g,x) comp{3,#}(f,g,x) -> app#(f,app(g,x)) app#(map1(x4),x5) -> map{2,#}(x4,x5) app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) app#(twice0(),x15) -> twice{1,#}(x15) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) comp3(f,g,x) -> app(f,app(g,x)) twice1(f) -> comp2(f,f) app(map1(x4),x5) -> map2(x4,x5) app(map0(),x4) -> map1(x4) app(cons1(x8),x9) -> cons2(x8,x9) app(cons0(),x8) -> cons1(x8) app(comp2(x11,x12),x13) -> comp3(x11,x12,x13) app(comp1(x11),x12) -> comp2(x11,x12) app(comp0(),x11) -> comp1(x11) app(twice0(),x15) -> twice1(x15) graph: comp{3,#}(f,g,x) -> app#(g,x) -> app#(twice0(),x15) -> twice{1,#}(x15) comp{3,#}(f,g,x) -> app#(g,x) -> app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) comp{3,#}(f,g,x) -> app#(g,x) -> app#(map1(x4),x5) -> map{2,#}(x4,x5) comp{3,#}(f,g,x) -> app#(f,app(g,x)) -> app#(twice0(),x15) -> twice{1,#}(x15) comp{3,#}(f,g,x) -> app#(f,app(g,x)) -> app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) comp{3,#}(f,g,x) -> app#(f,app(g,x)) -> app#(map1(x4),x5) -> map{2,#}(x4,x5) app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) -> comp{3,#}(f,g,x) -> app#(f,app(g,x)) app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) -> comp{3,#}(f,g,x) -> app#(g,x) app#(map1(x4),x5) -> map{2,#}(x4,x5) -> map{2,#}(f,cons2(x,xs)) -> app#(f,x) app#(map1(x4),x5) -> map{2,#}(x4,x5) -> map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) map{2,#}(f,cons2(x,xs)) -> app#(f,x) -> app#(twice0(),x15) -> twice{1,#}(x15) map{2,#}(f,cons2(x,xs)) -> app#(f,x) -> app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) map{2,#}(f,cons2(x,xs)) -> app#(f,x) -> app#(map1(x4),x5) -> map{2,#}(x4,x5) 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: 1 #rules: 6 #arcs: 15/49 DPs: comp{3,#}(f,g,x) -> app#(g,x) app#(map1(x4),x5) -> map{2,#}(x4,x5) map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) map{2,#}(f,cons2(x,xs)) -> app#(f,x) app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) comp{3,#}(f,g,x) -> app#(f,app(g,x)) TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) comp3(f,g,x) -> app(f,app(g,x)) twice1(f) -> comp2(f,f) app(map1(x4),x5) -> map2(x4,x5) app(map0(),x4) -> map1(x4) app(cons1(x8),x9) -> cons2(x8,x9) app(cons0(),x8) -> cons1(x8) app(comp2(x11,x12),x13) -> comp3(x11,x12,x13) app(comp1(x11),x12) -> comp2(x11,x12) app(comp0(),x11) -> comp1(x11) app(twice0(),x15) -> twice1(x15) Size-Change Termination Processor: DPs: TRS: map2(f,nil0()) -> nil0() map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs)) comp3(f,g,x) -> app(f,app(g,x)) twice1(f) -> comp2(f,f) app(map1(x4),x5) -> map2(x4,x5) app(map0(),x4) -> map1(x4) app(cons1(x8),x9) -> cons2(x8,x9) app(cons0(),x8) -> cons1(x8) app(comp2(x11,x12),x13) -> comp3(x11,x12,x13) app(comp1(x11),x12) -> comp2(x11,x12) app(comp0(),x11) -> comp1(x11) app(twice0(),x15) -> twice1(x15) The DP: comp{3,#}(f,g,x) -> app#(g,x) has the edges: 1 >= 0 2 >= 1 The DP: app#(map1(x4),x5) -> map{2,#}(x4,x5) has the edges: 0 > 0 1 >= 1 The DP: map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) has the edges: 0 >= 0 1 > 1 The DP: map{2,#}(f,cons2(x,xs)) -> app#(f,x) has the edges: 0 >= 0 1 > 1 The DP: app#(comp2(x11,x12),x13) -> comp{3,#}(x11,x12,x13) has the edges: 0 > 1 0 > 0 1 >= 2 The DP: comp{3,#}(f,g,x) -> app#(f,app(g,x)) has the edges: 0 >= 0 Qed