YES Problem 1: (VAR x y) (THEORY (AC plus)) (RULES f(plus(x,y)) -> plus(f(x),y) h(a,b) -> h(b,a) h(a,g(g(a))) -> h(g(a),f(a)) h(g(a),a) -> h(a,g(b)) h(g(a),b) -> h(a,g(a)) plus(f(a),g(b)) -> plus(f(b),g(a)) plus(g(x),y) -> g(plus(x,y)) ) Problem 1: Reduction Order Processor: -> Rules: f(plus(x,y)) -> plus(f(x),y) h(a,b) -> h(b,a) h(a,g(g(a))) -> h(g(a),f(a)) h(g(a),a) -> h(a,g(b)) h(g(a),b) -> h(a,g(a)) plus(f(a),g(b)) -> plus(f(b),g(a)) plus(g(x),y) -> g(plus(x,y)) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 2.X [h](X1,X2) = 2.X1 + 2.X2 [plus](X1,X2) = X1 + X2 + 1 [a] = 1 [b] = 1 [g](X) = X + 2 Problem 1: Reduction Order Processor: -> Rules: h(a,b) -> h(b,a) h(a,g(g(a))) -> h(g(a),f(a)) h(g(a),a) -> h(a,g(b)) h(g(a),b) -> h(a,g(a)) plus(f(a),g(b)) -> plus(f(b),g(a)) plus(g(x),y) -> g(plus(x,y)) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = X [h](X1,X2) = 2.X1 + X2 [plus](X1,X2) = X1 + X2 + 1 [a] = 2 [b] = 1 [g](X) = X + 2 Problem 1: Reduction Order Processor: -> Rules: h(a,g(g(a))) -> h(g(a),f(a)) h(g(a),a) -> h(a,g(b)) h(g(a),b) -> h(a,g(a)) plus(f(a),g(b)) -> plus(f(b),g(a)) plus(g(x),y) -> g(plus(x,y)) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 2.X [h](X1,X2) = 2.X1 + 2.X2 [plus](X1,X2) = X1 + X2 [a] = 1 [b] = 1 [g](X) = X + 2 Problem 1: Reduction Order Processor: -> Rules: h(g(a),a) -> h(a,g(b)) h(g(a),b) -> h(a,g(a)) plus(f(a),g(b)) -> plus(f(b),g(a)) plus(g(x),y) -> g(plus(x,y)) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 2.X [h](X1,X2) = 2.X1 + X2 [plus](X1,X2) = X1 + X2 + 2 [a] = 2 [b] = 2 [g](X) = X + 2 Problem 1: Reduction Order Processor: -> Rules: h(g(a),b) -> h(a,g(a)) plus(f(a),g(b)) -> plus(f(b),g(a)) plus(g(x),y) -> g(plus(x,y)) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 2.X [h](X1,X2) = 2.X1 + X2 [plus](X1,X2) = X1 + X2 [a] = 0 [b] = 0 [g](X) = X + 2 Problem 1: Reduction Order Processor: -> Rules: plus(f(a),g(b)) -> plus(f(b),g(a)) plus(g(x),y) -> g(plus(x,y)) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 2.X [h](X1,X2) = 2.X1 + 2.X2 [plus](X1,X2) = X1 + X2 [a] = 2 [b] = 0 [g](X) = X + 2 Problem 1: Dependency Pairs Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(plus(g(x),y),x2) -> PLUS(x,y) PLUS(g(x),y) -> PLUS(x,y) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(plus(x2,x3),x4) -> PLUS(x2,x3) PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) Problem 1: SCC Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(plus(g(x),y),x2) -> PLUS(x,y) PLUS(g(x),y) -> PLUS(x,y) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(plus(x2,x3),x4) -> PLUS(x2,x3) PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(plus(g(x),y),x2) -> PLUS(x,y) PLUS(g(x),y) -> PLUS(x,y) -> FAxioms: plus(plus(x2,x3),x4) -> plus(x2,plus(x3,x4)) plus(x2,x3) -> plus(x3,x2) PLUS(plus(x2,x3),x4) -> PLUS(x2,plus(x3,x4)) PLUS(x2,x3) -> PLUS(x3,x2) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) ->->-> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(plus(x2,x3),x4) -> PLUS(x2,x3) PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) Problem 1: Reduction Pairs Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(plus(g(x),y),x2) -> PLUS(x,y) PLUS(g(x),y) -> PLUS(x,y) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Usable Equations: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> Usable Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(plus(x2,x3),x4) -> PLUS(x2,x3) PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 0 [h](X1,X2) = 0 [plus](X1,X2) = X1 + X2 + 2 [a] = 0 [b] = 0 [g](X) = X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 Problem 1: SCC Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(g(x),y) -> PLUS(x,y) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(plus(x2,x3),x4) -> PLUS(x2,x3) PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(g(x),y) -> PLUS(x,y) -> FAxioms: plus(plus(x2,x3),x4) -> plus(x2,plus(x3,x4)) plus(x2,x3) -> plus(x3,x2) PLUS(plus(x2,x3),x4) -> PLUS(x2,plus(x3,x4)) PLUS(x2,x3) -> PLUS(x3,x2) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) ->->-> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(plus(x2,x3),x4) -> PLUS(x2,x3) PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) Problem 1: Reduction Pairs Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(g(x),y) -> PLUS(x,y) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Usable Equations: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> Usable Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(plus(x2,x3),x4) -> PLUS(x2,x3) PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 0 [h](X1,X2) = 0 [plus](X1,X2) = X1 + X2 + 2 [a] = 0 [b] = 0 [g](X) = X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 Problem 1: SCC Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(g(x),y) -> PLUS(x,y) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(g(x),y) -> PLUS(x,y) -> FAxioms: plus(plus(x2,x3),x4) -> plus(x2,plus(x3,x4)) plus(x2,x3) -> plus(x3,x2) PLUS(plus(x2,x3),x4) -> PLUS(x2,plus(x3,x4)) PLUS(x2,x3) -> PLUS(x3,x2) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) ->->-> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) Problem 1: Reduction Pairs Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) PLUS(g(x),y) -> PLUS(x,y) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Usable Equations: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> Usable Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 0 [h](X1,X2) = 0 [plus](X1,X2) = X1 + X2 + 2 [a] = 0 [b] = 0 [g](X) = X + 2 [PLUS](X1,X2) = 2.X1 + 2.X2 Problem 1: SCC Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) -> FAxioms: plus(plus(x2,x3),x4) -> plus(x2,plus(x3,x4)) plus(x2,x3) -> plus(x3,x2) PLUS(plus(x2,x3),x4) -> PLUS(x2,plus(x3,x4)) PLUS(x2,x3) -> PLUS(x3,x2) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) ->->-> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) Problem 1: Reduction Pairs Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: PLUS(plus(g(x),y),x2) -> PLUS(g(plus(x,y)),x2) -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Usable Equations: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> Usable Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [f](X) = 0 [h](X1,X2) = 0 [plus](X1,X2) = X1 + X2 + 2 [a] = 0 [b] = 0 [g](X) = 2 [PLUS](X1,X2) = 2.X1 + 2.X2 Problem 1: SCC Processor: -> FAxioms: PLUS(plus(x2,x3),x4) = PLUS(x2,plus(x3,x4)) PLUS(x2,x3) = PLUS(x3,x2) -> Pairs: Empty -> EAxioms: plus(plus(x2,x3),x4) = plus(x2,plus(x3,x4)) plus(x2,x3) = plus(x3,x2) -> Rules: plus(g(x),y) -> g(plus(x,y)) -> SRules: PLUS(x2,plus(x3,x4)) -> PLUS(x3,x4) ->Strongly Connected Components: There is no strongly connected component The problem is finite.