YES Problem: f(f(a(),x),a()) -> f(f(f(x,a()),f(a(),a())),a()) Proof: Extended Uncurrying Processor: application symbol: f symbol table: a ==> a0/0 a1/1 a2/2 uncurry-rules: f(a1(x1),x2) -> a2(x1,x2) f(a0(),x1) -> a1(x1) eta-rules: problem: a2(x,a0()) -> f(f(f(x,a0()),a1(a0())),a0()) f(a1(x1),x2) -> a2(x1,x2) f(a0(),x1) -> a1(x1) DP Processor: DPs: a{2,#}(x,a0()) -> f#(x,a0()) a{2,#}(x,a0()) -> f#(f(x,a0()),a1(a0())) a{2,#}(x,a0()) -> f#(f(f(x,a0()),a1(a0())),a0()) f#(a1(x1),x2) -> a{2,#}(x1,x2) TRS: a2(x,a0()) -> f(f(f(x,a0()),a1(a0())),a0()) f(a1(x1),x2) -> a2(x1,x2) f(a0(),x1) -> a1(x1) TDG Processor: DPs: a{2,#}(x,a0()) -> f#(x,a0()) a{2,#}(x,a0()) -> f#(f(x,a0()),a1(a0())) a{2,#}(x,a0()) -> f#(f(f(x,a0()),a1(a0())),a0()) f#(a1(x1),x2) -> a{2,#}(x1,x2) TRS: a2(x,a0()) -> f(f(f(x,a0()),a1(a0())),a0()) f(a1(x1),x2) -> a2(x1,x2) f(a0(),x1) -> a1(x1) graph: f#(a1(x1),x2) -> a{2,#}(x1,x2) -> a{2,#}(x,a0()) -> f#(f(f(x,a0()),a1(a0())),a0()) f#(a1(x1),x2) -> a{2,#}(x1,x2) -> a{2,#}(x,a0()) -> f#(f(x,a0()),a1(a0())) f#(a1(x1),x2) -> a{2,#}(x1,x2) -> a{2,#}(x,a0()) -> f#(x,a0()) a{2,#}(x,a0()) -> f#(f(f(x,a0()),a1(a0())),a0()) -> f#(a1(x1),x2) -> a{2,#}(x1,x2) a{2,#}(x,a0()) -> f#(f(x,a0()),a1(a0())) -> f#(a1(x1),x2) -> a{2,#}(x1,x2) a{2,#}(x,a0()) -> f#(x,a0()) -> f#(a1(x1),x2) -> a{2,#}(x1,x2) Bounds Processor: bound: 0 enrichment: match-dp automaton: final states: {9} transitions: a{2,0}(12,10) -> 13* a{2,0}(10,11) -> 14* f70() -> 12* a{1,0}(10) -> 11* f{#,0}(14,10) -> 9* f0(14,10) -> 13* f0(13,11) -> 14* f0(12,10) -> 13* a{0,0}() -> 10* 11 -> 13* problem: DPs: a{2,#}(x,a0()) -> f#(x,a0()) a{2,#}(x,a0()) -> f#(f(x,a0()),a1(a0())) f#(a1(x1),x2) -> a{2,#}(x1,x2) TRS: a2(x,a0()) -> f(f(f(x,a0()),a1(a0())),a0()) f(a1(x1),x2) -> a2(x1,x2) f(a0(),x1) -> a1(x1) Bounds Processor: bound: 1 enrichment: match automaton: final states: {11,10,8,7,4,1} transitions: a{2,1}(2,5) -> 9* f1(3,13) -> 6,3 a{2,0}(2,5) -> 9* a{2,0}(3,3) -> 10* a{2,0}(3,2) -> 6* a{0,1}() -> 13* a{2,#,0}(3,3) -> 7* a{2,#,0}(2,5) -> 4,1 a{2,#,0}(3,2) -> 1* a{1,0}(2) -> 5* a{1,0}(3) -> 11* f{#,0}(3,2) -> 1* f{#,0}(6,5) -> 1,4 f0(9,2) -> 6,8 f0(6,5) -> 9* f0(3,2) -> 6* a{0,0}() -> 2* a{2,#,1}(2,5) -> 4,1 f180() -> 3* a{1,1}(13) -> 13* f{#,1}(3,13) -> 1,7 4 -> 7* 8 -> 10* 1 -> 7* 5 -> 6* problem: DPs: TRS: a2(x,a0()) -> f(f(f(x,a0()),a1(a0())),a0()) f(a1(x1),x2) -> a2(x1,x2) f(a0(),x1) -> a1(x1) Qed