(0) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
log(0) → 0
log(s(x)) → s(log(half(s(x))))
Q is empty.
(1) Overlay + Local Confluence (EQUIVALENT transformation)
The TRS is overlay and locally confluent. By [NOC] we can switch to innermost.
(2) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
log(0) → 0
log(s(x)) → s(log(half(s(x))))
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(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:
HALF(x) → IF(ge(x, s(s(0))), x)
HALF(x) → GE(x, s(s(0)))
IF(true, x) → HALF(p(p(x)))
IF(true, x) → P(p(x))
IF(true, x) → P(x)
GE(s(x), s(y)) → GE(x, y)
LOG(s(x)) → LOG(half(s(x)))
LOG(s(x)) → HALF(s(x))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
log(0) → 0
log(s(x)) → s(log(half(s(x))))
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(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 3 SCCs with 4 less nodes.
(6) Complex Obligation (AND)
(7) Obligation:
Q DP problem:
The TRS P consists of the following rules:
GE(s(x), s(y)) → GE(x, y)
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
log(0) → 0
log(s(x)) → s(log(half(s(x))))
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(s(x0))
We have to consider all minimal (P,Q,R)-chains.
(8) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(9) Obligation:
Q DP problem:
The TRS P consists of the following rules:
GE(s(x), s(y)) → GE(x, y)
R is empty.
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(s(x0))
We have to consider all minimal (P,Q,R)-chains.
(10) QReductionProof (EQUIVALENT transformation)
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(s(x0))
(11) Obligation:
Q DP problem:
The TRS P consists of the following rules:
GE(s(x), s(y)) → GE(x, y)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(12) QDPSizeChangeProof (EQUIVALENT transformation)
By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.
From the DPs we obtained the following set of size-change graphs:
- GE(s(x), s(y)) → GE(x, y)
The graph contains the following edges 1 > 1, 2 > 2
(13) YES
(14) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, x) → HALF(p(p(x)))
HALF(x) → IF(ge(x, s(s(0))), x)
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
log(0) → 0
log(s(x)) → s(log(half(s(x))))
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(s(x0))
We have to consider all minimal (P,Q,R)-chains.
(15) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(16) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, x) → HALF(p(p(x)))
HALF(x) → IF(ge(x, s(s(0))), x)
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(s(x0))
We have to consider all minimal (P,Q,R)-chains.
(17) QReductionProof (EQUIVALENT transformation)
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].
half(x0)
if(false, x0)
if(true, x0)
log(0)
log(s(x0))
(18) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, x) → HALF(p(p(x)))
HALF(x) → IF(ge(x, s(s(0))), x)
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(19) Narrowing (EQUIVALENT transformation)
By narrowing [LPAR04] the rule
HALF(
x) →
IF(
ge(
x,
s(
s(
0))),
x) at position [0] we obtained the following new rules [LPAR04]:
HALF(0) → IF(false, 0)
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
(20) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, x) → HALF(p(p(x)))
HALF(0) → IF(false, 0)
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(21) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node.
(22) Obligation:
Q DP problem:
The TRS P consists of the following rules:
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
IF(true, x) → HALF(p(p(x)))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(23) Narrowing (EQUIVALENT transformation)
By narrowing [LPAR04] the rule
IF(
true,
x) →
HALF(
p(
p(
x))) at position [0] we obtained the following new rules [LPAR04]:
IF(true, 0) → HALF(p(0))
IF(true, s(x0)) → HALF(p(x0))
(24) Obligation:
Q DP problem:
The TRS P consists of the following rules:
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
IF(true, 0) → HALF(p(0))
IF(true, s(x0)) → HALF(p(x0))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(25) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node.
(26) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(x0)) → HALF(p(x0))
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(27) Narrowing (EQUIVALENT transformation)
By narrowing [LPAR04] the rule
IF(
true,
s(
x0)) →
HALF(
p(
x0)) at position [0] we obtained the following new rules [LPAR04]:
IF(true, s(0)) → HALF(0)
IF(true, s(s(x0))) → HALF(x0)
(28) Obligation:
Q DP problem:
The TRS P consists of the following rules:
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
IF(true, s(0)) → HALF(0)
IF(true, s(s(x0))) → HALF(x0)
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(29) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node.
(30) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(x0))) → HALF(x0)
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
p(0) → 0
p(s(x)) → x
The set Q consists of the following terms:
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(31) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(32) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(x0))) → HALF(x0)
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
The set Q consists of the following terms:
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(33) QReductionProof (EQUIVALENT transformation)
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].
p(0)
p(s(x0))
(34) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(x0))) → HALF(x0)
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
The set Q consists of the following terms:
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(35) ForwardInstantiation (EQUIVALENT transformation)
By forward instantiating [JAR06] the rule
IF(
true,
s(
s(
x0))) →
HALF(
x0) we obtained the following new rules [LPAR04]:
IF(true, s(s(s(y_0)))) → HALF(s(y_0))
(36) Obligation:
Q DP problem:
The TRS P consists of the following rules:
HALF(s(x0)) → IF(ge(x0, s(0)), s(x0))
IF(true, s(s(s(y_0)))) → HALF(s(y_0))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
The set Q consists of the following terms:
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(37) ForwardInstantiation (EQUIVALENT transformation)
By forward instantiating [JAR06] the rule
HALF(
s(
x0)) →
IF(
ge(
x0,
s(
0)),
s(
x0)) we obtained the following new rules [LPAR04]:
HALF(s(s(s(y_1)))) → IF(ge(s(s(y_1)), s(0)), s(s(s(y_1))))
(38) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(s(y_0)))) → HALF(s(y_0))
HALF(s(s(s(y_1)))) → IF(ge(s(s(y_1)), s(0)), s(s(s(y_1))))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
The set Q consists of the following terms:
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(39) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
HALF(
s(
s(
s(
y_1)))) →
IF(
ge(
s(
s(
y_1)),
s(
0)),
s(
s(
s(
y_1)))) at position [0] we obtained the following new rules [LPAR04]:
HALF(s(s(s(y_1)))) → IF(ge(s(y_1), 0), s(s(s(y_1))))
(40) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(s(y_0)))) → HALF(s(y_0))
HALF(s(s(s(y_1)))) → IF(ge(s(y_1), 0), s(s(s(y_1))))
The TRS R consists of the following rules:
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
ge(x, 0) → true
The set Q consists of the following terms:
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(41) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(42) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(s(y_0)))) → HALF(s(y_0))
HALF(s(s(s(y_1)))) → IF(ge(s(y_1), 0), s(s(s(y_1))))
The TRS R consists of the following rules:
ge(x, 0) → true
The set Q consists of the following terms:
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(43) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
HALF(
s(
s(
s(
y_1)))) →
IF(
ge(
s(
y_1),
0),
s(
s(
s(
y_1)))) at position [0] we obtained the following new rules [LPAR04]:
HALF(s(s(s(y_1)))) → IF(true, s(s(s(y_1))))
(44) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(s(y_0)))) → HALF(s(y_0))
HALF(s(s(s(y_1)))) → IF(true, s(s(s(y_1))))
The TRS R consists of the following rules:
ge(x, 0) → true
The set Q consists of the following terms:
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(45) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(46) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(s(y_0)))) → HALF(s(y_0))
HALF(s(s(s(y_1)))) → IF(true, s(s(s(y_1))))
R is empty.
The set Q consists of the following terms:
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(47) QReductionProof (EQUIVALENT transformation)
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
(48) Obligation:
Q DP problem:
The TRS P consists of the following rules:
IF(true, s(s(s(y_0)))) → HALF(s(y_0))
HALF(s(s(s(y_1)))) → IF(true, s(s(s(y_1))))
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(49) QDPSizeChangeProof (EQUIVALENT transformation)
By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.
From the DPs we obtained the following set of size-change graphs:
- HALF(s(s(s(y_1)))) → IF(true, s(s(s(y_1))))
The graph contains the following edges 1 >= 2
- IF(true, s(s(s(y_0)))) → HALF(s(y_0))
The graph contains the following edges 2 > 1
(50) YES
(51) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(x)) → LOG(half(s(x)))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
log(0) → 0
log(s(x)) → s(log(half(s(x))))
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(s(x0))
We have to consider all minimal (P,Q,R)-chains.
(52) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(53) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(x)) → LOG(half(s(x)))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
log(0)
log(s(x0))
We have to consider all minimal (P,Q,R)-chains.
(54) QReductionProof (EQUIVALENT transformation)
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].
log(0)
log(s(x0))
(55) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(x)) → LOG(half(s(x)))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(56) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
x)) →
LOG(
half(
s(
x))) at position [0] we obtained the following new rules [LPAR04]:
LOG(s(x)) → LOG(if(ge(s(x), s(s(0))), s(x)))
(57) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(x)) → LOG(if(ge(s(x), s(s(0))), s(x)))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(58) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
x)) →
LOG(
if(
ge(
s(
x),
s(
s(
0))),
s(
x))) at position [0,0] we obtained the following new rules [LPAR04]:
LOG(s(x)) → LOG(if(ge(x, s(0)), s(x)))
(59) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(x)) → LOG(if(ge(x, s(0)), s(x)))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(60) Narrowing (EQUIVALENT transformation)
By narrowing [LPAR04] the rule
LOG(
s(
x)) →
LOG(
if(
ge(
x,
s(
0)),
s(
x))) at position [0] we obtained the following new rules [LPAR04]:
LOG(s(0)) → LOG(if(false, s(0)))
LOG(s(s(x0))) → LOG(if(ge(x0, 0), s(s(x0))))
(61) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(0)) → LOG(if(false, s(0)))
LOG(s(s(x0))) → LOG(if(ge(x0, 0), s(s(x0))))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(62) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node.
(63) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(if(ge(x0, 0), s(s(x0))))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(64) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
s(
x0))) →
LOG(
if(
ge(
x0,
0),
s(
s(
x0)))) at position [0,0] we obtained the following new rules [LPAR04]:
LOG(s(s(x0))) → LOG(if(true, s(s(x0))))
(65) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(if(true, s(s(x0))))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(66) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
s(
x0))) →
LOG(
if(
true,
s(
s(
x0)))) at position [0] we obtained the following new rules [LPAR04]:
LOG(s(s(x0))) → LOG(s(half(p(p(s(s(x0)))))))
(67) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(s(half(p(p(s(s(x0)))))))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(68) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
s(
x0))) →
LOG(
s(
half(
p(
p(
s(
s(
x0))))))) at position [0,0] we obtained the following new rules [LPAR04]:
LOG(s(s(x0))) → LOG(s(if(ge(p(p(s(s(x0)))), s(s(0))), p(p(s(s(x0)))))))
(69) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(s(if(ge(p(p(s(s(x0)))), s(s(0))), p(p(s(s(x0)))))))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(70) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
s(
x0))) →
LOG(
s(
if(
ge(
p(
p(
s(
s(
x0)))),
s(
s(
0))),
p(
p(
s(
s(
x0))))))) at position [0,0,0,0,0] we obtained the following new rules [LPAR04]:
LOG(s(s(x0))) → LOG(s(if(ge(p(s(x0)), s(s(0))), p(p(s(s(x0)))))))
(71) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(s(if(ge(p(s(x0)), s(s(0))), p(p(s(s(x0)))))))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(72) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
s(
x0))) →
LOG(
s(
if(
ge(
p(
s(
x0)),
s(
s(
0))),
p(
p(
s(
s(
x0))))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]:
LOG(s(s(x0))) → LOG(s(if(ge(x0, s(s(0))), p(p(s(s(x0)))))))
(73) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(s(if(ge(x0, s(s(0))), p(p(s(s(x0)))))))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(74) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
s(
x0))) →
LOG(
s(
if(
ge(
x0,
s(
s(
0))),
p(
p(
s(
s(
x0))))))) at position [0,0,1,0] we obtained the following new rules [LPAR04]:
LOG(s(s(x0))) → LOG(s(if(ge(x0, s(s(0))), p(s(x0)))))
(75) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(s(if(ge(x0, s(s(0))), p(s(x0)))))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(76) Rewriting (EQUIVALENT transformation)
By rewriting [LPAR04] the rule
LOG(
s(
s(
x0))) →
LOG(
s(
if(
ge(
x0,
s(
s(
0))),
p(
s(
x0))))) at position [0,0,1] we obtained the following new rules [LPAR04]:
LOG(s(s(x0))) → LOG(s(if(ge(x0, s(s(0))), x0)))
(77) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(s(if(ge(x0, s(s(0))), x0)))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
The set Q consists of the following terms:
half(x0)
if(false, x0)
if(true, x0)
p(0)
p(s(x0))
ge(x0, 0)
ge(0, s(x0))
ge(s(x0), s(x1))
We have to consider all minimal (P,Q,R)-chains.
(78) MNOCProof (EQUIVALENT transformation)
We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set.
(79) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(s(if(ge(x0, s(s(0))), x0)))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
Q is empty.
We have to consider all (P,Q,R)-chains.
(80) MNOCProof (EQUIVALENT transformation)
We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set.
(81) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOG(s(s(x0))) → LOG(s(if(ge(x0, s(s(0))), x0)))
The TRS R consists of the following rules:
half(x) → if(ge(x, s(s(0))), x)
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
if(false, x) → 0
if(true, x) → s(half(p(p(x))))
p(0) → 0
p(s(x)) → x
ge(x, 0) → true
Q is empty.
We have to consider all (P,Q,R)-chains.