YES Termination Proof

Termination Proof

by ttt2 (version ttt2 1.15)

Input

The rewrite relation of the following TRS is considered.

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

Proof

1 Dependency Pair Transformation

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

1.1 Reduction Pair Processor with Usable Rules

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

1.1.1 Reduction Pair Processor with Usable Rules

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

1.1.1.1 Reduction Pair Processor with Usable Rules

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

1.1.1.1.1 Reduction Pair Processor with Usable Rules

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

1.1.1.1.1.1 Dependency Graph Processor

The dependency pairs are split into 0 components.