(0) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
times(0, y) → 0
times(s(x), y) → plus(y, times(p(s(x)), y))
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
fac(0, x) → x
fac(s(x), y) → fac(p(s(x)), times(s(x), y))
factorial(x) → fac(x, s(0))
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:
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
times(0, y) → 0
times(s(x), y) → plus(y, times(p(s(x)), y))
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
fac(0, x) → x
fac(s(x), y) → fac(p(s(x)), times(s(x), y))
factorial(x) → fac(x, s(0))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(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:
PLUS(s(x), y) → PLUS(p(s(x)), y)
PLUS(s(x), y) → P(s(x))
TIMES(s(x), y) → PLUS(y, times(p(s(x)), y))
TIMES(s(x), y) → TIMES(p(s(x)), y)
TIMES(s(x), y) → P(s(x))
P(s(s(x))) → P(s(x))
FAC(s(x), y) → FAC(p(s(x)), times(s(x), y))
FAC(s(x), y) → P(s(x))
FAC(s(x), y) → TIMES(s(x), y)
FACTORIAL(x) → FAC(x, s(0))
The TRS R consists of the following rules:
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
times(0, y) → 0
times(s(x), y) → plus(y, times(p(s(x)), y))
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
fac(0, x) → x
fac(s(x), y) → fac(p(s(x)), times(s(x), y))
factorial(x) → fac(x, s(0))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(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 4 SCCs with 6 less nodes.
(6) Complex Obligation (AND)
(7) Obligation:
Q DP problem:
The TRS P consists of the following rules:
P(s(s(x))) → P(s(x))
The TRS R consists of the following rules:
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
times(0, y) → 0
times(s(x), y) → plus(y, times(p(s(x)), y))
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
fac(0, x) → x
fac(s(x), y) → fac(p(s(x)), times(s(x), y))
factorial(x) → fac(x, s(0))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(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:
P(s(s(x))) → P(s(x))
R is empty.
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(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].
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(x0)
(11) Obligation:
Q DP problem:
The TRS P consists of the following rules:
P(s(s(x))) → P(s(x))
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:
- P(s(s(x))) → P(s(x))
The graph contains the following edges 1 > 1
(13) YES
(14) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PLUS(s(x), y) → PLUS(p(s(x)), y)
The TRS R consists of the following rules:
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
times(0, y) → 0
times(s(x), y) → plus(y, times(p(s(x)), y))
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
fac(0, x) → x
fac(s(x), y) → fac(p(s(x)), times(s(x), y))
factorial(x) → fac(x, s(0))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(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:
PLUS(s(x), y) → PLUS(p(s(x)), y)
The TRS R consists of the following rules:
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(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].
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
fac(0, x0)
fac(s(x0), x1)
factorial(x0)
(18) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PLUS(s(x), y) → PLUS(p(s(x)), y)
The TRS R consists of the following rules:
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
The set Q consists of the following terms:
p(s(0))
p(s(s(x0)))
We have to consider all minimal (P,Q,R)-chains.
(19) MRRProof (EQUIVALENT transformation)
By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented.
Strictly oriented rules of the TRS R:
p(s(0)) → 0
Used ordering: Polynomial interpretation [POLO]:
POL(0) = 0
POL(PLUS(x1, x2)) = x1 + x2
POL(p(x1)) = x1
POL(s(x1)) = 2 + 2·x1
(20) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PLUS(s(x), y) → PLUS(p(s(x)), y)
The TRS R consists of the following rules:
p(s(s(x))) → s(p(s(x)))
The set Q consists of the following terms:
p(s(0))
p(s(s(x0)))
We have to consider all minimal (P,Q,R)-chains.
(21) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04,JAR06].
The following pairs can be oriented strictly and are deleted.
PLUS(s(x), y) → PLUS(p(s(x)), y)
The remaining pairs can at least be oriented weakly.
Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation:
POL( PLUS(x1, x2) ) = 2x1 + 2 |
POL( p(x1) ) = max{0, x1 - 2} |
The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented:
p(s(s(x))) → s(p(s(x)))
(22) Obligation:
Q DP problem:
P is empty.
The TRS R consists of the following rules:
p(s(s(x))) → s(p(s(x)))
The set Q consists of the following terms:
p(s(0))
p(s(s(x0)))
We have to consider all minimal (P,Q,R)-chains.
(23) PisEmptyProof (EQUIVALENT transformation)
The TRS P is empty. Hence, there is no (P,Q,R) chain.
(24) YES
(25) Obligation:
Q DP problem:
The TRS P consists of the following rules:
TIMES(s(x), y) → TIMES(p(s(x)), y)
The TRS R consists of the following rules:
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
times(0, y) → 0
times(s(x), y) → plus(y, times(p(s(x)), y))
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
fac(0, x) → x
fac(s(x), y) → fac(p(s(x)), times(s(x), y))
factorial(x) → fac(x, s(0))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(x0)
We have to consider all minimal (P,Q,R)-chains.
(26) 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.
(27) Obligation:
Q DP problem:
The TRS P consists of the following rules:
TIMES(s(x), y) → TIMES(p(s(x)), y)
The TRS R consists of the following rules:
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(x0)
We have to consider all minimal (P,Q,R)-chains.
(28) 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].
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
fac(0, x0)
fac(s(x0), x1)
factorial(x0)
(29) Obligation:
Q DP problem:
The TRS P consists of the following rules:
TIMES(s(x), y) → TIMES(p(s(x)), y)
The TRS R consists of the following rules:
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
The set Q consists of the following terms:
p(s(0))
p(s(s(x0)))
We have to consider all minimal (P,Q,R)-chains.
(30) MRRProof (EQUIVALENT transformation)
By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented.
Strictly oriented rules of the TRS R:
p(s(0)) → 0
Used ordering: Polynomial interpretation [POLO]:
POL(0) = 0
POL(TIMES(x1, x2)) = x1 + x2
POL(p(x1)) = x1
POL(s(x1)) = 2 + 2·x1
(31) Obligation:
Q DP problem:
The TRS P consists of the following rules:
TIMES(s(x), y) → TIMES(p(s(x)), y)
The TRS R consists of the following rules:
p(s(s(x))) → s(p(s(x)))
The set Q consists of the following terms:
p(s(0))
p(s(s(x0)))
We have to consider all minimal (P,Q,R)-chains.
(32) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04,JAR06].
The following pairs can be oriented strictly and are deleted.
TIMES(s(x), y) → TIMES(p(s(x)), y)
The remaining pairs can at least be oriented weakly.
Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation:
POL( TIMES(x1, x2) ) = 2x1 + 2 |
POL( p(x1) ) = max{0, x1 - 2} |
The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented:
p(s(s(x))) → s(p(s(x)))
(33) Obligation:
Q DP problem:
P is empty.
The TRS R consists of the following rules:
p(s(s(x))) → s(p(s(x)))
The set Q consists of the following terms:
p(s(0))
p(s(s(x0)))
We have to consider all minimal (P,Q,R)-chains.
(34) PisEmptyProof (EQUIVALENT transformation)
The TRS P is empty. Hence, there is no (P,Q,R) chain.
(35) YES
(36) Obligation:
Q DP problem:
The TRS P consists of the following rules:
FAC(s(x), y) → FAC(p(s(x)), times(s(x), y))
The TRS R consists of the following rules:
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
times(0, y) → 0
times(s(x), y) → plus(y, times(p(s(x)), y))
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
fac(0, x) → x
fac(s(x), y) → fac(p(s(x)), times(s(x), y))
factorial(x) → fac(x, s(0))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(x0)
We have to consider all minimal (P,Q,R)-chains.
(37) 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.
(38) Obligation:
Q DP problem:
The TRS P consists of the following rules:
FAC(s(x), y) → FAC(p(s(x)), times(s(x), y))
The TRS R consists of the following rules:
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
times(s(x), y) → plus(y, times(p(s(x)), y))
times(0, y) → 0
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
fac(0, x0)
fac(s(x0), x1)
factorial(x0)
We have to consider all minimal (P,Q,R)-chains.
(39) 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].
fac(0, x0)
fac(s(x0), x1)
factorial(x0)
(40) Obligation:
Q DP problem:
The TRS P consists of the following rules:
FAC(s(x), y) → FAC(p(s(x)), times(s(x), y))
The TRS R consists of the following rules:
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
times(s(x), y) → plus(y, times(p(s(x)), y))
times(0, y) → 0
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
We have to consider all minimal (P,Q,R)-chains.
(41) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04,JAR06].
The following pairs can be oriented strictly and are deleted.
FAC(s(x), y) → FAC(p(s(x)), times(s(x), y))
The remaining pairs can at least be oriented weakly.
Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation:
POL( FAC(x1, x2) ) = max{0, 2x1 - 2} |
POL( plus(x1, x2) ) = x2 + 2 |
POL( times(x1, x2) ) = x1 + 1 |
POL( p(x1) ) = max{0, x1 - 2} |
The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented:
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
(42) Obligation:
Q DP problem:
P is empty.
The TRS R consists of the following rules:
p(s(0)) → 0
p(s(s(x))) → s(p(s(x)))
times(s(x), y) → plus(y, times(p(s(x)), y))
times(0, y) → 0
plus(0, x) → x
plus(s(x), y) → s(plus(p(s(x)), y))
The set Q consists of the following terms:
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
p(s(0))
p(s(s(x0)))
We have to consider all minimal (P,Q,R)-chains.
(43) PisEmptyProof (EQUIVALENT transformation)
The TRS P is empty. Hence, there is no (P,Q,R) chain.
(44) YES