Termination w.r.t. Q of the following Term Rewriting System could be proven:
Q restricted rewrite system:
The TRS R consists of the following rules:
div(0, y) → 0
div(x, y) → quot(x, y, y)
quot(0, s(y), z) → 0
quot(s(x), s(y), z) → quot(x, y, z)
quot(x, 0, s(z)) → s(div(x, s(z)))
Q is empty.
↳ QTRS
↳ DependencyPairsProof
Q restricted rewrite system:
The TRS R consists of the following rules:
div(0, y) → 0
div(x, y) → quot(x, y, y)
quot(0, s(y), z) → 0
quot(s(x), s(y), z) → quot(x, y, z)
quot(x, 0, s(z)) → s(div(x, s(z)))
Q is empty.
Using Dependency Pairs [1,15] we result in the following initial DP problem:
Q DP problem:
The TRS P consists of the following rules:
QUOT(x, 0, s(z)) → DIV(x, s(z))
QUOT(s(x), s(y), z) → QUOT(x, y, z)
DIV(x, y) → QUOT(x, y, y)
The TRS R consists of the following rules:
div(0, y) → 0
div(x, y) → quot(x, y, y)
quot(0, s(y), z) → 0
quot(s(x), s(y), z) → quot(x, y, z)
quot(x, 0, s(z)) → s(div(x, s(z)))
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ QDPOrderProof
↳ QDPOrderProof
Q DP problem:
The TRS P consists of the following rules:
QUOT(x, 0, s(z)) → DIV(x, s(z))
QUOT(s(x), s(y), z) → QUOT(x, y, z)
DIV(x, y) → QUOT(x, y, y)
The TRS R consists of the following rules:
div(0, y) → 0
div(x, y) → quot(x, y, y)
quot(0, s(y), z) → 0
quot(s(x), s(y), z) → quot(x, y, z)
quot(x, 0, s(z)) → s(div(x, s(z)))
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [15].
The following pairs can be oriented strictly and are deleted.
QUOT(s(x), s(y), z) → QUOT(x, y, z)
The remaining pairs can at least be oriented weakly.
QUOT(x, 0, s(z)) → DIV(x, s(z))
DIV(x, y) → QUOT(x, y, y)
Used ordering: Polynomial interpretation [25]:
POL(0) = 0
POL(DIV(x1, x2)) = x1
POL(QUOT(x1, x2, x3)) = x1
POL(s(x1)) = 1 + x1
The following usable rules [17] were oriented:
none
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ Instantiation
↳ QDPOrderProof
Q DP problem:
The TRS P consists of the following rules:
QUOT(x, 0, s(z)) → DIV(x, s(z))
DIV(x, y) → QUOT(x, y, y)
The TRS R consists of the following rules:
div(0, y) → 0
div(x, y) → quot(x, y, y)
quot(0, s(y), z) → 0
quot(s(x), s(y), z) → quot(x, y, z)
quot(x, 0, s(z)) → s(div(x, s(z)))
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By instantiating [15] the rule DIV(x, y) → QUOT(x, y, y) we obtained the following new rules:
DIV(y_0, s(y_1)) → QUOT(y_0, s(y_1), s(y_1))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ Instantiation
↳ QDP
↳ DependencyGraphProof
↳ QDPOrderProof
Q DP problem:
The TRS P consists of the following rules:
QUOT(x, 0, s(z)) → DIV(x, s(z))
DIV(y_0, s(y_1)) → QUOT(y_0, s(y_1), s(y_1))
The TRS R consists of the following rules:
div(0, y) → 0
div(x, y) → quot(x, y, y)
quot(0, s(y), z) → 0
quot(s(x), s(y), z) → quot(x, y, z)
quot(x, 0, s(z)) → s(div(x, s(z)))
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 0 SCCs with 2 less nodes.
We use the reduction pair processor [15].
The following pairs can be oriented strictly and are deleted.
QUOT(s(x), s(y), z) → QUOT(x, y, z)
The remaining pairs can at least be oriented weakly.
QUOT(x, 0, s(z)) → DIV(x, s(z))
DIV(x, y) → QUOT(x, y, y)
Used ordering: Matrix interpretation [3]:
Non-tuple symbols:
Tuple symbols:
M( QUOT(x1, ..., x3) ) = | 0 | + | | · | x1 | + | | · | x2 | + | | · | x3 |
M( DIV(x1, x2) ) = | 0 | + | | · | x1 | + | | · | x2 |
Matrix type:
We used a basic matrix type which is not further parametrizeable.
As matrix orders are CE-compatible, we used usable rules w.r.t. argument filtering in the order.
The following usable rules [17] were oriented:
none
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ QDPOrderProof
↳ QDPOrderProof
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
QUOT(x, 0, s(z)) → DIV(x, s(z))
DIV(x, y) → QUOT(x, y, y)
The TRS R consists of the following rules:
div(0, y) → 0
div(x, y) → quot(x, y, y)
quot(0, s(y), z) → 0
quot(s(x), s(y), z) → quot(x, y, z)
quot(x, 0, s(z)) → s(div(x, s(z)))
Q is empty.
We have to consider all minimal (P,Q,R)-chains.