/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: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Proof: DP Processor: DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> 0#(+(x,y)) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) *#(0(x),y) -> *#(x,y) *#(0(x),y) -> 0#(*(x,y)) *#(1(x),y) -> *#(x,y) *#(1(x),y) -> 0#(*(x,y)) *#(1(x),y) -> +#(0(*(x,y)),y) *#(*(x,y),z) -> *#(y,z) *#(*(x,y),z) -> *#(x,*(y,z)) *#(x,+(y,z)) -> *#(x,z) *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) app#(cons(x,l1),l2) -> app#(l1,l2) sum#(nil()) -> 0#(#()) sum#(cons(x,l)) -> sum#(l) sum#(cons(x,l)) -> +#(x,sum(l)) sum#(app(l1,l2)) -> sum#(l2) sum#(app(l1,l2)) -> sum#(l1) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) prod#(cons(x,l)) -> prod#(l) prod#(cons(x,l)) -> *#(x,prod(l)) prod#(app(l1,l2)) -> prod#(l2) prod#(app(l1,l2)) -> prod#(l1) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) TDG Processor: DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> 0#(+(x,y)) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) *#(0(x),y) -> *#(x,y) *#(0(x),y) -> 0#(*(x,y)) *#(1(x),y) -> *#(x,y) *#(1(x),y) -> 0#(*(x,y)) *#(1(x),y) -> +#(0(*(x,y)),y) *#(*(x,y),z) -> *#(y,z) *#(*(x,y),z) -> *#(x,*(y,z)) *#(x,+(y,z)) -> *#(x,z) *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) app#(cons(x,l1),l2) -> app#(l1,l2) sum#(nil()) -> 0#(#()) sum#(cons(x,l)) -> sum#(l) sum#(cons(x,l)) -> +#(x,sum(l)) sum#(app(l1,l2)) -> sum#(l2) sum#(app(l1,l2)) -> sum#(l1) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) prod#(cons(x,l)) -> prod#(l) prod#(cons(x,l)) -> *#(x,prod(l)) prod#(app(l1,l2)) -> prod#(l2) prod#(app(l1,l2)) -> prod#(l1) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) graph: prod#(cons(x,l)) -> prod#(l) -> prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) prod#(cons(x,l)) -> prod#(l) -> prod#(app(l1,l2)) -> prod#(l1) prod#(cons(x,l)) -> prod#(l) -> prod#(app(l1,l2)) -> prod#(l2) prod#(cons(x,l)) -> prod#(l) -> prod#(cons(x,l)) -> *#(x,prod(l)) prod#(cons(x,l)) -> prod#(l) -> prod#(cons(x,l)) -> prod#(l) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(x,+(y,z)) -> *#(x,y) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(x,+(y,z)) -> *#(x,z) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(*(x,y),z) -> *#(x,*(y,z)) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(*(x,y),z) -> *#(y,z) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(1(x),y) -> +#(0(*(x,y)),y) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(1(x),y) -> 0#(*(x,y)) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(1(x),y) -> *#(x,y) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(0(x),y) -> 0#(*(x,y)) prod#(cons(x,l)) -> *#(x,prod(l)) -> *#(0(x),y) -> *#(x,y) prod#(app(l1,l2)) -> prod#(l2) -> prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) prod#(app(l1,l2)) -> prod#(l2) -> prod#(app(l1,l2)) -> prod#(l1) prod#(app(l1,l2)) -> prod#(l2) -> prod#(app(l1,l2)) -> prod#(l2) prod#(app(l1,l2)) -> prod#(l2) -> prod#(cons(x,l)) -> *#(x,prod(l)) prod#(app(l1,l2)) -> prod#(l2) -> prod#(cons(x,l)) -> prod#(l) prod#(app(l1,l2)) -> prod#(l1) -> prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) prod#(app(l1,l2)) -> prod#(l1) -> prod#(app(l1,l2)) -> prod#(l1) prod#(app(l1,l2)) -> prod#(l1) -> prod#(app(l1,l2)) -> prod#(l2) prod#(app(l1,l2)) -> prod#(l1) -> prod#(cons(x,l)) -> *#(x,prod(l)) prod#(app(l1,l2)) -> prod#(l1) -> prod#(cons(x,l)) -> prod#(l) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(x,+(y,z)) -> *#(x,y) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(x,+(y,z)) -> *#(x,z) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(*(x,y),z) -> *#(x,*(y,z)) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(*(x,y),z) -> *#(y,z) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(1(x),y) -> +#(0(*(x,y)),y) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(1(x),y) -> 0#(*(x,y)) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(1(x),y) -> *#(x,y) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(0(x),y) -> 0#(*(x,y)) prod#(app(l1,l2)) -> *#(prod(l1),prod(l2)) -> *#(0(x),y) -> *#(x,y) sum#(cons(x,l)) -> sum#(l) -> sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) sum#(cons(x,l)) -> sum#(l) -> sum#(app(l1,l2)) -> sum#(l1) sum#(cons(x,l)) -> sum#(l) -> sum#(app(l1,l2)) -> sum#(l2) sum#(cons(x,l)) -> sum#(l) -> sum#(cons(x,l)) -> +#(x,sum(l)) sum#(cons(x,l)) -> sum#(l) -> sum#(cons(x,l)) -> sum#(l) sum#(cons(x,l)) -> sum#(l) -> sum#(nil()) -> 0#(#()) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(+(x,y),z) -> +#(x,+(y,z)) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(+(x,y),z) -> +#(y,z) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(1(x),1(y)) -> +#(x,y) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(1(x),0(y)) -> +#(x,y) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(0(x),1(y)) -> +#(x,y) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(0(x),0(y)) -> 0#(+(x,y)) sum#(cons(x,l)) -> +#(x,sum(l)) -> +#(0(x),0(y)) -> +#(x,y) sum#(app(l1,l2)) -> sum#(l2) -> sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) sum#(app(l1,l2)) -> sum#(l2) -> sum#(app(l1,l2)) -> sum#(l1) sum#(app(l1,l2)) -> sum#(l2) -> sum#(app(l1,l2)) -> sum#(l2) sum#(app(l1,l2)) -> sum#(l2) -> sum#(cons(x,l)) -> +#(x,sum(l)) sum#(app(l1,l2)) -> sum#(l2) -> sum#(cons(x,l)) -> sum#(l) sum#(app(l1,l2)) -> sum#(l2) -> sum#(nil()) -> 0#(#()) sum#(app(l1,l2)) -> sum#(l1) -> sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) sum#(app(l1,l2)) -> sum#(l1) -> sum#(app(l1,l2)) -> sum#(l1) sum#(app(l1,l2)) -> sum#(l1) -> sum#(app(l1,l2)) -> sum#(l2) sum#(app(l1,l2)) -> sum#(l1) -> sum#(cons(x,l)) -> +#(x,sum(l)) sum#(app(l1,l2)) -> sum#(l1) -> sum#(cons(x,l)) -> sum#(l) sum#(app(l1,l2)) -> sum#(l1) -> sum#(nil()) -> 0#(#()) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(+(x,y),z) -> +#(x,+(y,z)) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(+(x,y),z) -> +#(y,z) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(1(x),1(y)) -> +#(x,y) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(1(x),0(y)) -> +#(x,y) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(0(x),1(y)) -> +#(x,y) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(0(x),0(y)) -> 0#(+(x,y)) sum#(app(l1,l2)) -> +#(sum(l1),sum(l2)) -> +#(0(x),0(y)) -> +#(x,y) app#(cons(x,l1),l2) -> app#(l1,l2) -> app#(cons(x,l1),l2) -> app#(l1,l2) *#(*(x,y),z) -> *#(y,z) -> *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) *#(*(x,y),z) -> *#(y,z) -> *#(x,+(y,z)) -> *#(x,y) *#(*(x,y),z) -> *#(y,z) -> *#(x,+(y,z)) -> *#(x,z) *#(*(x,y),z) -> *#(y,z) -> *#(*(x,y),z) -> *#(x,*(y,z)) *#(*(x,y),z) -> *#(y,z) -> *#(*(x,y),z) -> *#(y,z) *#(*(x,y),z) -> *#(y,z) -> *#(1(x),y) -> +#(0(*(x,y)),y) *#(*(x,y),z) -> *#(y,z) -> *#(1(x),y) -> 0#(*(x,y)) *#(*(x,y),z) -> *#(y,z) -> *#(1(x),y) -> *#(x,y) *#(*(x,y),z) -> *#(y,z) -> *#(0(x),y) -> 0#(*(x,y)) *#(*(x,y),z) -> *#(y,z) -> *#(0(x),y) -> *#(x,y) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(x,+(y,z)) -> *#(x,y) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(x,+(y,z)) -> *#(x,z) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(*(x,y),z) -> *#(x,*(y,z)) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(*(x,y),z) -> *#(y,z) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(1(x),y) -> +#(0(*(x,y)),y) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(1(x),y) -> 0#(*(x,y)) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(1(x),y) -> *#(x,y) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(0(x),y) -> 0#(*(x,y)) *#(*(x,y),z) -> *#(x,*(y,z)) -> *#(0(x),y) -> *#(x,y) *#(1(x),y) -> *#(x,y) -> *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) *#(1(x),y) -> *#(x,y) -> *#(x,+(y,z)) -> *#(x,y) *#(1(x),y) -> *#(x,y) -> *#(x,+(y,z)) -> *#(x,z) *#(1(x),y) -> *#(x,y) -> *#(*(x,y),z) -> *#(x,*(y,z)) *#(1(x),y) -> *#(x,y) -> *#(*(x,y),z) -> *#(y,z) *#(1(x),y) -> *#(x,y) -> *#(1(x),y) -> +#(0(*(x,y)),y) *#(1(x),y) -> *#(x,y) -> *#(1(x),y) -> 0#(*(x,y)) *#(1(x),y) -> *#(x,y) -> *#(1(x),y) -> *#(x,y) *#(1(x),y) -> *#(x,y) -> *#(0(x),y) -> 0#(*(x,y)) *#(1(x),y) -> *#(x,y) -> *#(0(x),y) -> *#(x,y) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(+(x,y),z) -> +#(x,+(y,z)) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(+(x,y),z) -> +#(y,z) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(1(x),1(y)) -> +#(x,y) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(1(x),0(y)) -> +#(x,y) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(0(x),1(y)) -> +#(x,y) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(0(x),0(y)) -> 0#(+(x,y)) *#(1(x),y) -> +#(0(*(x,y)),y) -> +#(0(x),0(y)) -> +#(x,y) *#(0(x),y) -> *#(x,y) -> *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) *#(0(x),y) -> *#(x,y) -> *#(x,+(y,z)) -> *#(x,y) *#(0(x),y) -> *#(x,y) -> *#(x,+(y,z)) -> *#(x,z) *#(0(x),y) -> *#(x,y) -> *#(*(x,y),z) -> *#(x,*(y,z)) *#(0(x),y) -> *#(x,y) -> *#(*(x,y),z) -> *#(y,z) *#(0(x),y) -> *#(x,y) -> *#(1(x),y) -> +#(0(*(x,y)),y) *#(0(x),y) -> *#(x,y) -> *#(1(x),y) -> 0#(*(x,y)) *#(0(x),y) -> *#(x,y) -> *#(1(x),y) -> *#(x,y) *#(0(x),y) -> *#(x,y) -> *#(0(x),y) -> 0#(*(x,y)) *#(0(x),y) -> *#(x,y) -> *#(0(x),y) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) -> *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) *#(x,+(y,z)) -> *#(x,z) -> *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) -> *#(x,+(y,z)) -> *#(x,z) *#(x,+(y,z)) -> *#(x,z) -> *#(*(x,y),z) -> *#(x,*(y,z)) *#(x,+(y,z)) -> *#(x,z) -> *#(*(x,y),z) -> *#(y,z) *#(x,+(y,z)) -> *#(x,z) -> *#(1(x),y) -> +#(0(*(x,y)),y) *#(x,+(y,z)) -> *#(x,z) -> *#(1(x),y) -> 0#(*(x,y)) *#(x,+(y,z)) -> *#(x,z) -> *#(1(x),y) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) -> *#(0(x),y) -> 0#(*(x,y)) *#(x,+(y,z)) -> *#(x,z) -> *#(0(x),y) -> *#(x,y) *#(x,+(y,z)) -> *#(x,y) -> *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) *#(x,+(y,z)) -> *#(x,y) -> *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,y) -> *#(x,+(y,z)) -> *#(x,z) *#(x,+(y,z)) -> *#(x,y) -> *#(*(x,y),z) -> *#(x,*(y,z)) *#(x,+(y,z)) -> *#(x,y) -> *#(*(x,y),z) -> *#(y,z) *#(x,+(y,z)) -> *#(x,y) -> *#(1(x),y) -> +#(0(*(x,y)),y) *#(x,+(y,z)) -> *#(x,y) -> *#(1(x),y) -> 0#(*(x,y)) *#(x,+(y,z)) -> *#(x,y) -> *#(1(x),y) -> *#(x,y) *#(x,+(y,z)) -> *#(x,y) -> *#(0(x),y) -> 0#(*(x,y)) *#(x,+(y,z)) -> *#(x,y) -> *#(0(x),y) -> *#(x,y) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(+(x,y),z) -> +#(x,+(y,z)) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(+(x,y),z) -> +#(y,z) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(1(x),1(y)) -> +#(x,y) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(1(x),0(y)) -> +#(x,y) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(0(x),1(y)) -> +#(x,y) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(0(x),0(y)) -> 0#(+(x,y)) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(y,z) -> +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) SCC Processor: #sccs: 5 #rules: 20 #arcs: 213/961 DPs: app#(cons(x,l1),l2) -> app#(l1,l2) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Subterm Criterion Processor: simple projection: pi(app#) = 0 problem: DPs: TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Qed DPs: sum#(cons(x,l)) -> sum#(l) sum#(app(l1,l2)) -> sum#(l2) sum#(app(l1,l2)) -> sum#(l1) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Subterm Criterion Processor: simple projection: pi(sum#) = 0 problem: DPs: TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Qed DPs: prod#(cons(x,l)) -> prod#(l) prod#(app(l1,l2)) -> prod#(l2) prod#(app(l1,l2)) -> prod#(l1) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Subterm Criterion Processor: simple projection: pi(prod#) = 0 problem: DPs: TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Qed DPs: *#(0(x),y) -> *#(x,y) *#(1(x),y) -> *#(x,y) *#(*(x,y),z) -> *#(y,z) *#(*(x,y),z) -> *#(x,*(y,z)) *#(x,+(y,z)) -> *#(x,z) *#(x,+(y,z)) -> *#(x,y) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Subterm Criterion Processor: simple projection: pi(*#) = 0 problem: DPs: *#(x,+(y,z)) -> *#(x,z) *#(x,+(y,z)) -> *#(x,y) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Subterm Criterion Processor: simple projection: pi(*#) = 1 problem: DPs: TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Qed DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) EDG Processor: DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) graph: +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) -> +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(y,z) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(0(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(0(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(0(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(0(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) Usable Rule Processor: DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) 0(#()) -> #() Semantic Labeling Processor: dimension: 1 usable rules: interpretation: [1](x0) = x0 + 1, [+](x0, x1) = x0 + x1 + 1, [0](x0) = x0, [#] = 0 labeled: +# 1 + usable (for model): +# 0 1 + # argument filtering: pi(#) = [] pi(0) = 0 pi(+) = 0 pi(1) = [] pi(+#) = [] precedence: +# ~ 1 ~ + ~ 0 ~ # problem: DPs: +#(0(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) 0(#()) -> #() Restore Modifier: DPs: +#(0(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Usable Rule Processor: DPs: +#(0(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) 0(#()) -> #() Semantic Labeling Processor: dimension: 1 usable rules: interpretation: [1](x0) = x0 + 1, [+](x0, x1) = x0 + x1, [0](x0) = x0, [#] = 0 labeled: +# + usable (for model): +# 0 1 + # argument filtering: pi(#) = [] pi(0) = 0 pi(+) = 0 pi(1) = 0 pi(+#) = [] precedence: +# ~ 1 ~ + ~ 0 ~ # problem: DPs: +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) 0(#()) -> #() Restore Modifier: DPs: +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) Size-Change Termination Processor: DPs: TRS: 0(#()) -> #() +(x,#()) -> x +(#(),x) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) *(#(),x) -> #() *(0(x),y) -> 0(*(x,y)) *(1(x),y) -> +(0(*(x,y)),y) *(*(x,y),z) -> *(x,*(y,z)) *(x,+(y,z)) -> +(*(x,y),*(x,z)) app(nil(),l) -> l app(cons(x,l1),l2) -> cons(x,app(l1,l2)) sum(nil()) -> 0(#()) sum(cons(x,l)) -> +(x,sum(l)) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) prod(nil()) -> 1(#()) prod(cons(x,l)) -> *(x,prod(l)) prod(app(l1,l2)) -> *(prod(l1),prod(l2)) The DP: +#(0(x),0(y)) -> +#(x,y) has the edges: 0 > 0 1 > 1 The DP: +#(+(x,y),z) -> +#(x,+(y,z)) has the edges: 0 > 0 Qed