(0) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
cond1(true, x, y) → cond2(gr(x, 0), x, y)
cond2(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), p(x), y)
cond2(false, x, y) → cond3(gr(y, 0), x, y)
cond3(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, p(y))
cond3(false, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
or(false, false) → false
or(true, x) → true
or(x, true) → true
p(0) → 0
p(s(x)) → x
Q is empty.
(1) AAECC Innermost (EQUIVALENT transformation)
We have applied [NOC,AAECCNOC] to switch to innermost. The TRS R 1 is
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
or(false, false) → false
or(true, x) → true
or(x, true) → true
p(0) → 0
p(s(x)) → x
The TRS R 2 is
cond1(true, x, y) → cond2(gr(x, 0), x, y)
cond2(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), p(x), y)
cond2(false, x, y) → cond3(gr(y, 0), x, y)
cond3(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, p(y))
cond3(false, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, y)
The signature Sigma is {
cond1,
cond2,
cond3}
(2) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
cond1(true, x, y) → cond2(gr(x, 0), x, y)
cond2(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), p(x), y)
cond2(false, x, y) → cond3(gr(y, 0), x, y)
cond3(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, p(y))
cond3(false, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
or(false, false) → false
or(true, x) → true
or(x, true) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
cond3(true, x0, x1)
cond3(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
or(false, false)
or(true, x0)
or(x0, true)
p(0)
p(s(x0))
(3) DependencyPairsProof (EQUIVALENT transformation)
Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem.
(4) Obligation:
Q DP problem:
The TRS P consists of the following rules:
COND1(true, x, y) → COND2(gr(x, 0), x, y)
COND1(true, x, y) → GR(x, 0)
COND2(true, x, y) → COND1(or(gr(x, 0), gr(y, 0)), p(x), y)
COND2(true, x, y) → OR(gr(x, 0), gr(y, 0))
COND2(true, x, y) → GR(x, 0)
COND2(true, x, y) → GR(y, 0)
COND2(true, x, y) → P(x)
COND2(false, x, y) → COND3(gr(y, 0), x, y)
COND2(false, x, y) → GR(y, 0)
COND3(true, x, y) → COND1(or(gr(x, 0), gr(y, 0)), x, p(y))
COND3(true, x, y) → OR(gr(x, 0), gr(y, 0))
COND3(true, x, y) → GR(x, 0)
COND3(true, x, y) → GR(y, 0)
COND3(true, x, y) → P(y)
COND3(false, x, y) → COND1(or(gr(x, 0), gr(y, 0)), x, y)
COND3(false, x, y) → OR(gr(x, 0), gr(y, 0))
COND3(false, x, y) → GR(x, 0)
COND3(false, x, y) → GR(y, 0)
GR(s(x), s(y)) → GR(x, y)
The TRS R consists of the following rules:
cond1(true, x, y) → cond2(gr(x, 0), x, y)
cond2(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), p(x), y)
cond2(false, x, y) → cond3(gr(y, 0), x, y)
cond3(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, p(y))
cond3(false, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
or(false, false) → false
or(true, x) → true
or(x, true) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
cond3(true, x0, x1)
cond3(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
or(false, false)
or(true, x0)
or(x0, true)
p(0)
p(s(x0))
We have to consider all minimal (P,Q,R)-chains.
(5) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 13 less nodes.
(6) Complex Obligation (AND)
(7) Obligation:
Q DP problem:
The TRS P consists of the following rules:
GR(s(x), s(y)) → GR(x, y)
The TRS R consists of the following rules:
cond1(true, x, y) → cond2(gr(x, 0), x, y)
cond2(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), p(x), y)
cond2(false, x, y) → cond3(gr(y, 0), x, y)
cond3(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, p(y))
cond3(false, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
or(false, false) → false
or(true, x) → true
or(x, true) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
cond3(true, x0, x1)
cond3(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
or(false, false)
or(true, x0)
or(x0, true)
p(0)
p(s(x0))
We have to consider all minimal (P,Q,R)-chains.
(8) Obligation:
Q DP problem:
The TRS P consists of the following rules:
COND2(true, x, y) → COND1(or(gr(x, 0), gr(y, 0)), p(x), y)
COND1(true, x, y) → COND2(gr(x, 0), x, y)
COND2(false, x, y) → COND3(gr(y, 0), x, y)
COND3(true, x, y) → COND1(or(gr(x, 0), gr(y, 0)), x, p(y))
COND3(false, x, y) → COND1(or(gr(x, 0), gr(y, 0)), x, y)
The TRS R consists of the following rules:
cond1(true, x, y) → cond2(gr(x, 0), x, y)
cond2(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), p(x), y)
cond2(false, x, y) → cond3(gr(y, 0), x, y)
cond3(true, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, p(y))
cond3(false, x, y) → cond1(or(gr(x, 0), gr(y, 0)), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
or(false, false) → false
or(true, x) → true
or(x, true) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
cond3(true, x0, x1)
cond3(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
or(false, false)
or(true, x0)
or(x0, true)
p(0)
p(s(x0))
We have to consider all minimal (P,Q,R)-chains.