YES

We show the termination of the TRS R:

  times(x,|0|()) -> |0|()
  times(x,s(y)) -> plus(times(x,y),x)
  plus(x,|0|()) -> x
  plus(|0|(),x) -> x
  plus(x,s(y)) -> s(plus(x,y))
  plus(s(x),y) -> s(plus(x,y))

-- SCC decomposition.

Consider the dependency pair problem (P, R), where P consists of

p1: times#(x,s(y)) -> plus#(times(x,y),x)
p2: times#(x,s(y)) -> times#(x,y)
p3: plus#(x,s(y)) -> plus#(x,y)
p4: plus#(s(x),y) -> plus#(x,y)

and R consists of:

r1: times(x,|0|()) -> |0|()
r2: times(x,s(y)) -> plus(times(x,y),x)
r3: plus(x,|0|()) -> x
r4: plus(|0|(),x) -> x
r5: plus(x,s(y)) -> s(plus(x,y))
r6: plus(s(x),y) -> s(plus(x,y))

The estimated dependency graph contains the following SCCs:

  {p2}
  {p3, p4}


-- Reduction pair.

Consider the dependency pair problem (P, R), where P consists of

p1: times#(x,s(y)) -> times#(x,y)

and R consists of:

r1: times(x,|0|()) -> |0|()
r2: times(x,s(y)) -> plus(times(x,y),x)
r3: plus(x,|0|()) -> x
r4: plus(|0|(),x) -> x
r5: plus(x,s(y)) -> s(plus(x,y))
r6: plus(s(x),y) -> s(plus(x,y))

The set of usable rules consists of

  (no rules)

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. matrix interpretations:
    
      carrier: N^2
      order: standard order
      interpretations:
        times#_A(x1,x2) = ((1,1),(1,1)) x2
        s_A(x1) = ((1,1),(1,1)) x1 + (1,1)
    
    2. matrix interpretations:
    
      carrier: N^2
      order: standard order
      interpretations:
        times#_A(x1,x2) = x2
        s_A(x1) = ((1,1),(1,1)) x1 + (1,1)
    
    3. matrix interpretations:
    
      carrier: N^2
      order: standard order
      interpretations:
        times#_A(x1,x2) = ((1,1),(1,1)) x2
        s_A(x1) = ((1,1),(1,1)) x1 + (1,1)
    

The next rules are strictly ordered:

  p1

We remove them from the problem.  Then no dependency pair remains.

-- Reduction pair.

Consider the dependency pair problem (P, R), where P consists of

p1: plus#(x,s(y)) -> plus#(x,y)
p2: plus#(s(x),y) -> plus#(x,y)

and R consists of:

r1: times(x,|0|()) -> |0|()
r2: times(x,s(y)) -> plus(times(x,y),x)
r3: plus(x,|0|()) -> x
r4: plus(|0|(),x) -> x
r5: plus(x,s(y)) -> s(plus(x,y))
r6: plus(s(x),y) -> s(plus(x,y))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. matrix interpretations:
    
      carrier: N^2
      order: standard order
      interpretations:
        plus#_A(x1,x2) = ((1,1),(1,0)) x1 + ((1,1),(1,1)) x2
        s_A(x1) = ((1,1),(1,1)) x1 + (1,1)
    
    2. matrix interpretations:
    
      carrier: N^2
      order: standard order
      interpretations:
        plus#_A(x1,x2) = ((1,1),(1,1)) x1 + ((1,1),(1,1)) x2
        s_A(x1) = ((1,1),(1,1)) x1 + (1,1)
    
    3. matrix interpretations:
    
      carrier: N^2
      order: standard order
      interpretations:
        plus#_A(x1,x2) = ((1,1),(1,1)) x1 + ((1,0),(1,1)) x2
        s_A(x1) = ((1,1),(0,1)) x1 + (1,1)
    

The next rules are strictly ordered:

  p1, p2
  r1, r2, r3, r4, r5, r6

We remove them from the problem.  Then no dependency pair remains.