/export/starexec/sandbox2/solver/bin/starexec_run_default /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES Problem 1: (VAR l l1 l2 x y z) (RULES *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ) Problem 1: Dependency Pairs Processor: -> Pairs: *#(*(x,y),z) -> *#(x,*(y,z)) *#(*(x,y),z) -> *#(y,z) *#(0(x),y) -> *#(x,y) *#(0(x),y) -> 0#(*(x,y)) *#(1(x),y) -> *#(x,y) *#(1(x),y) -> +#(0(*(x,y)),y) *#(1(x),y) -> 0#(*(x,y)) *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(y,z) +#(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(#)) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> 0#(+(+(x,y),1(#))) APP(cons(x,l1),l2) -> APP(l1,l2) PROD(app(l1,l2)) -> *#(prod(l1),prod(l2)) PROD(app(l1,l2)) -> PROD(l1) PROD(app(l1,l2)) -> PROD(l2) PROD(cons(x,l)) -> *#(x,prod(l)) PROD(cons(x,l)) -> PROD(l) SUM(app(l1,l2)) -> +#(sum(l1),sum(l2)) SUM(app(l1,l2)) -> SUM(l1) SUM(app(l1,l2)) -> SUM(l2) SUM(cons(x,l)) -> +#(x,sum(l)) SUM(cons(x,l)) -> SUM(l) SUM(nil) -> 0#(#) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) Problem 1: SCC Processor: -> Pairs: *#(*(x,y),z) -> *#(x,*(y,z)) *#(*(x,y),z) -> *#(y,z) *#(0(x),y) -> *#(x,y) *#(0(x),y) -> 0#(*(x,y)) *#(1(x),y) -> *#(x,y) *#(1(x),y) -> +#(0(*(x,y)),y) *#(1(x),y) -> 0#(*(x,y)) *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) *#(x,+(y,z)) -> +#(*(x,y),*(x,z)) +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(y,z) +#(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(#)) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> 0#(+(+(x,y),1(#))) APP(cons(x,l1),l2) -> APP(l1,l2) PROD(app(l1,l2)) -> *#(prod(l1),prod(l2)) PROD(app(l1,l2)) -> PROD(l1) PROD(app(l1,l2)) -> PROD(l2) PROD(cons(x,l)) -> *#(x,prod(l)) PROD(cons(x,l)) -> PROD(l) SUM(app(l1,l2)) -> +#(sum(l1),sum(l2)) SUM(app(l1,l2)) -> SUM(l1) SUM(app(l1,l2)) -> SUM(l2) SUM(cons(x,l)) -> +#(x,sum(l)) SUM(cons(x,l)) -> SUM(l) SUM(nil) -> 0#(#) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: APP(cons(x,l1),l2) -> APP(l1,l2) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->->Cycle: ->->-> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(y,z) +#(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(#)) +#(1(x),1(y)) -> +#(x,y) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->->Cycle: ->->-> Pairs: SUM(app(l1,l2)) -> SUM(l1) SUM(app(l1,l2)) -> SUM(l2) SUM(cons(x,l)) -> SUM(l) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->->Cycle: ->->-> Pairs: *#(*(x,y),z) -> *#(x,*(y,z)) *#(*(x,y),z) -> *#(y,z) *#(0(x),y) -> *#(x,y) *#(1(x),y) -> *#(x,y) *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->->Cycle: ->->-> Pairs: PROD(app(l1,l2)) -> PROD(l1) PROD(app(l1,l2)) -> PROD(l2) PROD(cons(x,l)) -> PROD(l) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) The problem is decomposed in 5 subproblems. Problem 1.1: Subterm Processor: -> Pairs: APP(cons(x,l1),l2) -> APP(l1,l2) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Projection: pi(APP) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Reduction Pair Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(y,z) +#(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(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) -> Usable rules: +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [+](X1,X2) = X1 + X2 + 2 [0](X) = X [#] = 0 [1](X) = X + 2 [+#](X1,X2) = 2.X1 + 2.X2 Problem 1.2: SCC Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(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(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(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(#)) +#(1(x),1(y)) -> +#(x,y) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) Problem 1.2: Reduction Pair Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(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(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) -> Usable rules: +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [+](X1,X2) = X1 + X2 [0](X) = X + 1 [#] = 1 [1](X) = X + 2 [+#](X1,X2) = X1 + X2 Problem 1.2: SCC Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) Problem 1.2: Reduction Pair Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) -> Usable rules: +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [+](X1,X2) = X1 + X2 + 1 [0](X) = X + 1 [#] = 0 [1](X) = X + 2 [+#](X1,X2) = 2.X1 + 2.X2 Problem 1.2: SCC Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) Problem 1.2: Reduction Pair Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) -> Usable rules: +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [+](X1,X2) = X1 + X2 [0](X) = X [#] = 2 [1](X) = X + 2 [+#](X1,X2) = 2.X1 + 2.X2 Problem 1.2: SCC Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) Problem 1.2: Reduction Pair Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(+(x,y),1(#)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) -> Usable rules: +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [+](X1,X2) = X1 + X2 [0](X) = X + 1 [#] = 0 [1](X) = X + 1 [+#](X1,X2) = 2.X1 + 2.X2 Problem 1.2: SCC Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(x,y) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) Problem 1.2: Subterm Processor: -> Pairs: +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(x,y) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Projection: pi(+#) = 1 Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.3: Subterm Processor: -> Pairs: SUM(app(l1,l2)) -> SUM(l1) SUM(app(l1,l2)) -> SUM(l2) SUM(cons(x,l)) -> SUM(l) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Projection: pi(SUM) = 1 Problem 1.3: SCC Processor: -> Pairs: Empty -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.4: Subterm Processor: -> Pairs: *#(*(x,y),z) -> *#(x,*(y,z)) *#(*(x,y),z) -> *#(y,z) *#(0(x),y) -> *#(x,y) *#(1(x),y) -> *#(x,y) *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Projection: pi(*#) = 1 Problem 1.4: SCC Processor: -> Pairs: *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) ->->-> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) Problem 1.4: Subterm Processor: -> Pairs: *#(x,+(y,z)) -> *#(x,y) *#(x,+(y,z)) -> *#(x,z) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Projection: pi(*#) = 2 Problem 1.4: SCC Processor: -> Pairs: Empty -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.5: Subterm Processor: -> Pairs: PROD(app(l1,l2)) -> PROD(l1) PROD(app(l1,l2)) -> PROD(l2) PROD(cons(x,l)) -> PROD(l) -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Projection: pi(PROD) = 1 Problem 1.5: SCC Processor: -> Pairs: Empty -> Rules: *(*(x,y),z) -> *(x,*(y,z)) *(0(x),y) -> 0(*(x,y)) *(#,x) -> # *(1(x),y) -> +(0(*(x,y)),y) *(x,+(y,z)) -> +(*(x,y),*(x,z)) +(+(x,y),z) -> +(x,+(y,z)) +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(#,x) -> x +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#))) +(x,#) -> x 0(#) -> # app(cons(x,l1),l2) -> cons(x,app(l1,l2)) app(nil,l) -> l prod(app(l1,l2)) -> *(prod(l1),prod(l2)) prod(cons(x,l)) -> *(x,prod(l)) prod(nil) -> 1(#) sum(app(l1,l2)) -> +(sum(l1),sum(l2)) sum(cons(x,l)) -> +(x,sum(l)) sum(nil) -> 0(#) ->Strongly Connected Components: There is no strongly connected component The problem is finite.