YES Termination Proof

Termination Proof

by ttt2 (version ttt2 1.15)

Input

The rewrite relation of the following TRS is considered.

a(b(c(x0))) b(x0)
c(b(b(x0))) a(x0)
c(x0) b(x0)
a(a(x0)) c(b(a(c(x0))))

Proof

1 Rule Removal

Using the linear polynomial interpretation over the arctic semiring over the integers
[b(x1)] = 2 · x1 + -∞
[c(x1)] = 2 · x1 + -∞
[a(x1)] = 6 · x1 + -∞
the rules
c(b(b(x0))) a(x0)
c(x0) b(x0)
a(a(x0)) c(b(a(c(x0))))
remain.

1.1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
c#(b(b(x0))) a#(x0)
a#(a(x0)) c#(x0)
a#(a(x0)) a#(c(x0))
a#(a(x0)) c#(b(a(c(x0))))

1.1.1 Reduction Pair Processor with Usable Rules

Using the linear polynomial interpretation over the arctic semiring over the integers
[a#(x1)] = 5 · x1 + -∞
[b(x1)] = 1 · x1 + 2
[c#(x1)] = 3 · x1 + 8
[c(x1)] = 1 · x1 + 2
[a(x1)] = 3 · x1 + 4
together with the usable rules
c(b(b(x0))) a(x0)
c(x0) b(x0)
a(a(x0)) c(b(a(c(x0))))
(w.r.t. the implicit argument filter of the reduction pair), the pairs
c#(b(b(x0))) a#(x0)
a#(a(x0)) c#(b(a(c(x0))))
remain.

1.1.1.1 Dependency Graph Processor

The dependency pairs are split into 0 components.