(0) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
geq(X, 0) → true
geq(0, s(Y)) → false
geq(s(X), s(Y)) → geq(X, Y)
div(0, s(Y)) → 0
div(s(X), s(Y)) → if(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
if(true, X, Y) → X
if(false, X, Y) → Y
Q is empty.
(1) DependencyPairsProof (EQUIVALENT transformation)
Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem.
(2) Obligation:
Q DP problem:
The TRS P consists of the following rules:
MINUS(s(X), s(Y)) → MINUS(X, Y)
GEQ(s(X), s(Y)) → GEQ(X, Y)
DIV(s(X), s(Y)) → IF(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
DIV(s(X), s(Y)) → GEQ(X, Y)
DIV(s(X), s(Y)) → DIV(minus(X, Y), s(Y))
DIV(s(X), s(Y)) → MINUS(X, Y)
The TRS R consists of the following rules:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
geq(X, 0) → true
geq(0, s(Y)) → false
geq(s(X), s(Y)) → geq(X, Y)
div(0, s(Y)) → 0
div(s(X), s(Y)) → if(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
if(true, X, Y) → X
if(false, X, Y) → Y
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(3) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 3 less nodes.
(4) Complex Obligation (AND)
(5) Obligation:
Q DP problem:
The TRS P consists of the following rules:
GEQ(s(X), s(Y)) → GEQ(X, Y)
The TRS R consists of the following rules:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
geq(X, 0) → true
geq(0, s(Y)) → false
geq(s(X), s(Y)) → geq(X, Y)
div(0, s(Y)) → 0
div(s(X), s(Y)) → if(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
if(true, X, Y) → X
if(false, X, Y) → Y
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(6) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04].
The following pairs can be oriented strictly and are deleted.
GEQ(s(X), s(Y)) → GEQ(X, Y)
The remaining pairs can at least be oriented weakly.
Used ordering: SCNP Order with the following components:
Level mapping:
Top level AFS:
GEQ(
x0,
x1,
x2) =
GEQ(
x0,
x1,
x2)
Tags:
GEQ has argument tags [2,1,1] and root tag 0
Comparison: DMS
Underlying order for the size change arcs and the rules of R:
Combined order from the following AFS and order.
GEQ(
x1,
x2) =
GEQ
s(
x1) =
s(
x1)
Recursive path order with status [RPO].
Quasi-Precedence:
trivial
Status:
GEQ: []
s1: multiset
The following usable rules [FROCOS05] were oriented:
none
(7) Obligation:
Q DP problem:
P is empty.
The TRS R consists of the following rules:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
geq(X, 0) → true
geq(0, s(Y)) → false
geq(s(X), s(Y)) → geq(X, Y)
div(0, s(Y)) → 0
div(s(X), s(Y)) → if(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
if(true, X, Y) → X
if(false, X, Y) → Y
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(8) PisEmptyProof (EQUIVALENT transformation)
The TRS P is empty. Hence, there is no (P,Q,R) chain.
(9) TRUE
(10) Obligation:
Q DP problem:
The TRS P consists of the following rules:
MINUS(s(X), s(Y)) → MINUS(X, Y)
The TRS R consists of the following rules:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
geq(X, 0) → true
geq(0, s(Y)) → false
geq(s(X), s(Y)) → geq(X, Y)
div(0, s(Y)) → 0
div(s(X), s(Y)) → if(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
if(true, X, Y) → X
if(false, X, Y) → Y
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(11) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04].
The following pairs can be oriented strictly and are deleted.
MINUS(s(X), s(Y)) → MINUS(X, Y)
The remaining pairs can at least be oriented weakly.
Used ordering: SCNP Order with the following components:
Level mapping:
Top level AFS:
MINUS(
x0,
x1,
x2) =
MINUS(
x0,
x1,
x2)
Tags:
MINUS has argument tags [2,1,1] and root tag 0
Comparison: DMS
Underlying order for the size change arcs and the rules of R:
Combined order from the following AFS and order.
MINUS(
x1,
x2) =
MINUS
s(
x1) =
s(
x1)
Recursive path order with status [RPO].
Quasi-Precedence:
trivial
Status:
MINUS: []
s1: multiset
The following usable rules [FROCOS05] were oriented:
none
(12) Obligation:
Q DP problem:
P is empty.
The TRS R consists of the following rules:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
geq(X, 0) → true
geq(0, s(Y)) → false
geq(s(X), s(Y)) → geq(X, Y)
div(0, s(Y)) → 0
div(s(X), s(Y)) → if(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
if(true, X, Y) → X
if(false, X, Y) → Y
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(13) PisEmptyProof (EQUIVALENT transformation)
The TRS P is empty. Hence, there is no (P,Q,R) chain.
(14) TRUE
(15) Obligation:
Q DP problem:
The TRS P consists of the following rules:
DIV(s(X), s(Y)) → DIV(minus(X, Y), s(Y))
The TRS R consists of the following rules:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
geq(X, 0) → true
geq(0, s(Y)) → false
geq(s(X), s(Y)) → geq(X, Y)
div(0, s(Y)) → 0
div(s(X), s(Y)) → if(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
if(true, X, Y) → X
if(false, X, Y) → Y
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(16) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04].
The following pairs can be oriented strictly and are deleted.
DIV(s(X), s(Y)) → DIV(minus(X, Y), s(Y))
The remaining pairs can at least be oriented weakly.
Used ordering: SCNP Order with the following components:
Level mapping:
Top level AFS:
DIV(
x0,
x1,
x2) =
DIV(
x1)
Tags:
DIV has argument tags [3,3,2] and root tag 0
Comparison: MAX
Underlying order for the size change arcs and the rules of R:
Combined order from the following AFS and order.
DIV(
x1,
x2) =
DIV(
x1,
x2)
s(
x1) =
s(
x1)
minus(
x1,
x2) =
minus(
x1)
0 =
0
Recursive path order with status [RPO].
Quasi-Precedence:
s1 > [DIV2, minus1]
0 > [DIV2, minus1]
Status:
DIV2: [2,1]
s1: multiset
minus1: multiset
0: multiset
The following usable rules [FROCOS05] were oriented:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
(17) Obligation:
Q DP problem:
P is empty.
The TRS R consists of the following rules:
minus(0, Y) → 0
minus(s(X), s(Y)) → minus(X, Y)
geq(X, 0) → true
geq(0, s(Y)) → false
geq(s(X), s(Y)) → geq(X, Y)
div(0, s(Y)) → 0
div(s(X), s(Y)) → if(geq(X, Y), s(div(minus(X, Y), s(Y))), 0)
if(true, X, Y) → X
if(false, X, Y) → Y
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(18) PisEmptyProof (EQUIVALENT transformation)
The TRS P is empty. Hence, there is no (P,Q,R) chain.
(19) TRUE