YES Termination proof of AG_#3.54_rand.trs

(0) Obligation:

Relative term rewrite system:
The relative TRS consists of the following R rules:

f(g(x)) → g(f(f(x)))
f(h(x)) → h(g(x))
f'(s(x), y, y) → f'(y, x, s(x))

The relative TRS consists of the following S rules:

rand(x) → rand(s(x))
rand(x) → x

(1) RelTRSRRRProof (EQUIVALENT transformation)

We used the following monotonic ordering for rule removal:
Matrix interpretation [MATRO] to (N^2, +, *, >=, >) :

POL(f(x1)) =
/2\
\0/
+
/12\
\01/
·x1

POL(g(x1)) =
/2\
\3/
+
/10\
\02/
·x1

POL(h(x1)) =
/1\
\1/
+
/20\
\00/
·x1

POL(f'(x1, x2, x3)) =
/0\
\3/
+
/21\
\10/
·x1 +
/11\
\10/
·x2 +
/10\
\00/
·x3

POL(s(x1)) =
/0\
\0/
+
/10\
\01/
·x1

POL(rand(x1)) =
/3\
\3/
+
/20\
\02/
·x1
With this ordering the following rules can be removed [MATRO] because they are oriented strictly:
Rules from R:

f(g(x)) → g(f(f(x)))
Rules from S:

rand(x) → x


(2) Obligation:

Relative term rewrite system:
The relative TRS consists of the following R rules:

f(h(x)) → h(g(x))
f'(s(x), y, y) → f'(y, x, s(x))

The relative TRS consists of the following S rules:

rand(x) → rand(s(x))

(3) RelTRSRRRProof (EQUIVALENT transformation)

We used the following monotonic ordering for rule removal:
Matrix interpretation [MATRO] to (N^2, +, *, >=, >) :

POL(f(x1)) =
/0\
\0/
+
/11\
\10/
·x1

POL(h(x1)) =
/1\
\0/
+
/10\
\01/
·x1

POL(g(x1)) =
/0\
\0/
+
/10\
\00/
·x1

POL(f'(x1, x2, x3)) =
/0\
\1/
+
/11\
\10/
·x1 +
/11\
\00/
·x2 +
/10\
\10/
·x3

POL(s(x1)) =
/0\
\1/
+
/10\
\11/
·x1

POL(rand(x1)) =
/1\
\1/
+
/10\
\00/
·x1
With this ordering the following rules can be removed [MATRO] because they are oriented strictly:
Rules from R:

f'(s(x), y, y) → f'(y, x, s(x))
Rules from S:
none


(4) Obligation:

Relative term rewrite system:
The relative TRS consists of the following R rules:

f(h(x)) → h(g(x))

The relative TRS consists of the following S rules:

rand(x) → rand(s(x))

(5) RelTRSRRRProof (EQUIVALENT transformation)

We used the following monotonic ordering for rule removal:
Polynomial interpretation [POLO]:

POL(f(x1)) = 1 + x1   
POL(g(x1)) = x1   
POL(h(x1)) = x1   
POL(rand(x1)) = x1   
POL(s(x1)) = x1   
With this ordering the following rules can be removed [MATRO] because they are oriented strictly:
Rules from R:

f(h(x)) → h(g(x))
Rules from S:
none


(6) Obligation:

Relative term rewrite system:
R is empty.
The relative TRS consists of the following S rules:

rand(x) → rand(s(x))

(7) RIsEmptyProof (EQUIVALENT transformation)

The TRS R is empty. Hence, termination is trivially proven.

(8) YES