YES

We show the termination of the TRS R:

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

-- SCC decomposition.

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

p1: times#(x,plus(y,s(z))) -> plus#(times(x,plus(y,times(s(z),|0|()))),times(x,s(z)))
p2: times#(x,plus(y,s(z))) -> times#(x,plus(y,times(s(z),|0|())))
p3: times#(x,plus(y,s(z))) -> plus#(y,times(s(z),|0|()))
p4: times#(x,plus(y,s(z))) -> times#(s(z),|0|())
p5: times#(x,plus(y,s(z))) -> times#(x,s(z))
p6: times#(x,s(y)) -> plus#(times(x,y),x)
p7: times#(x,s(y)) -> times#(x,y)
p8: plus#(x,s(y)) -> plus#(x,y)

and R consists of:

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

The estimated dependency graph contains the following SCCs:

  {p2, p5, p7}
  {p8}


-- Reduction pair.

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

p1: times#(x,s(y)) -> times#(x,y)
p2: times#(x,plus(y,s(z))) -> times#(x,s(z))
p3: times#(x,plus(y,s(z))) -> times#(x,plus(y,times(s(z),|0|())))

and R consists of:

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

The set of usable rules consists of

  r2, r4, r5

Take the reduction pair:

  lexicographic path order with precedence:
  
    precedence:
    
      times# > plus > s > times > |0|
    
    argument filter:
  
      pi(times#) = [2]
      pi(s) = [1]
      pi(plus) = [1, 2]
      pi(times) = 2
      pi(|0|) = []

The next rules are strictly ordered:

  p1, p2, p3

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)

and R consists of:

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

The set of usable rules consists of

  (no rules)

Take the reduction pair:

  lexicographic path order with precedence:
  
    precedence:
    
      s > plus#
    
    argument filter:
  
      pi(plus#) = 2
      pi(s) = [1]

The next rules are strictly ordered:

  p1

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