YES

The TRS could be proven terminating. The proof took 588 ms.

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (20ms).
 | – Problem 2 was processed with processor SubtermCriterion (1ms).
 | – Problem 3 was processed with processor PolynomialOrderingProcessor (174ms).
 | – Problem 4 was processed with processor SubtermCriterion (1ms).
 | – Problem 5 was processed with processor SubtermCriterion (1ms).

Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

fac#(s(x))p#(s(x))times#(s(x), y)times#(x, y)
plus#(x, s(y))plus#(x, y)times#(s(x), y)plus#(times(x, y), y)
fac#(s(x))times#(fac(p(s(x))), s(x))p#(s(s(x)))p#(s(x))
fac#(s(x))fac#(p(s(x)))

Rewrite Rules

plus(x, 0)xplus(x, s(y))s(plus(x, y))
times(0, y)0times(x, 0)0
times(s(x), y)plus(times(x, y), y)p(s(s(x)))s(p(s(x)))
p(s(0))0fac(s(x))times(fac(p(s(x))), s(x))

Original Signature

Termination of terms over the following signature is verified: plus, 0, s, times, p, fac

Strategy


The following SCCs where found

times#(s(x), y) → times#(x, y)

plus#(x, s(y)) → plus#(x, y)

fac#(s(x)) → fac#(p(s(x)))

p#(s(s(x))) → p#(s(x))

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

p#(s(s(x)))p#(s(x))

Rewrite Rules

plus(x, 0)xplus(x, s(y))s(plus(x, y))
times(0, y)0times(x, 0)0
times(s(x), y)plus(times(x, y), y)p(s(s(x)))s(p(s(x)))
p(s(0))0fac(s(x))times(fac(p(s(x))), s(x))

Original Signature

Termination of terms over the following signature is verified: plus, 0, s, times, p, fac

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

p#(s(s(x)))p#(s(x))

Problem 3: PolynomialOrderingProcessor



Dependency Pair Problem

Dependency Pairs

fac#(s(x))fac#(p(s(x)))

Rewrite Rules

plus(x, 0)xplus(x, s(y))s(plus(x, y))
times(0, y)0times(x, 0)0
times(s(x), y)plus(times(x, y), y)p(s(s(x)))s(p(s(x)))
p(s(0))0fac(s(x))times(fac(p(s(x))), s(x))

Original Signature

Termination of terms over the following signature is verified: plus, 0, s, times, p, fac

Strategy


Polynomial Interpretation

Improved Usable rules

p(s(s(x)))s(p(s(x)))p(s(0))0

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

fac#(s(x))fac#(p(s(x)))

Problem 4: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

plus#(x, s(y))plus#(x, y)

Rewrite Rules

plus(x, 0)xplus(x, s(y))s(plus(x, y))
times(0, y)0times(x, 0)0
times(s(x), y)plus(times(x, y), y)p(s(s(x)))s(p(s(x)))
p(s(0))0fac(s(x))times(fac(p(s(x))), s(x))

Original Signature

Termination of terms over the following signature is verified: plus, 0, s, times, p, fac

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

plus#(x, s(y))plus#(x, y)

Problem 5: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

times#(s(x), y)times#(x, y)

Rewrite Rules

plus(x, 0)xplus(x, s(y))s(plus(x, y))
times(0, y)0times(x, 0)0
times(s(x), y)plus(times(x, y), y)p(s(s(x)))s(p(s(x)))
p(s(0))0fac(s(x))times(fac(p(s(x))), s(x))

Original Signature

Termination of terms over the following signature is verified: plus, 0, s, times, p, fac

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

times#(s(x), y)times#(x, y)