R
↳Dependency Pair Analysis
HALF(s(s(x))) -> HALF(x)
BITS(s(x)) -> BITS(half(s(x)))
BITS(s(x)) -> HALF(s(x))
R
↳DPs
→DP Problem 1
↳Forward Instantiation Transformation
→DP Problem 2
↳Nar
HALF(s(s(x))) -> HALF(x)
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
bits(0) -> 0
bits(s(x)) -> s(bits(half(s(x))))
innermost
one new Dependency Pair is created:
HALF(s(s(x))) -> HALF(x)
HALF(s(s(s(s(x''))))) -> HALF(s(s(x'')))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳Forward Instantiation Transformation
→DP Problem 2
↳Nar
HALF(s(s(s(s(x''))))) -> HALF(s(s(x'')))
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
bits(0) -> 0
bits(s(x)) -> s(bits(half(s(x))))
innermost
one new Dependency Pair is created:
HALF(s(s(s(s(x''))))) -> HALF(s(s(x'')))
HALF(s(s(s(s(s(s(x''''))))))) -> HALF(s(s(s(s(x'''')))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳FwdInst
...
→DP Problem 4
↳Polynomial Ordering
→DP Problem 2
↳Nar
HALF(s(s(s(s(s(s(x''''))))))) -> HALF(s(s(s(s(x'''')))))
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
bits(0) -> 0
bits(s(x)) -> s(bits(half(s(x))))
innermost
HALF(s(s(s(s(s(s(x''''))))))) -> HALF(s(s(s(s(x'''')))))
POL(HALF(x1)) = 1 + x1 POL(s(x1)) = 1 + x1
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳FwdInst
...
→DP Problem 5
↳Dependency Graph
→DP Problem 2
↳Nar
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
bits(0) -> 0
bits(s(x)) -> s(bits(half(s(x))))
innermost
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Narrowing Transformation
BITS(s(x)) -> BITS(half(s(x)))
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
bits(0) -> 0
bits(s(x)) -> s(bits(half(s(x))))
innermost
two new Dependency Pairs are created:
BITS(s(x)) -> BITS(half(s(x)))
BITS(s(0)) -> BITS(0)
BITS(s(s(x''))) -> BITS(s(half(x'')))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳Narrowing Transformation
BITS(s(s(x''))) -> BITS(s(half(x'')))
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
bits(0) -> 0
bits(s(x)) -> s(bits(half(s(x))))
innermost
three new Dependency Pairs are created:
BITS(s(s(x''))) -> BITS(s(half(x'')))
BITS(s(s(0))) -> BITS(s(0))
BITS(s(s(s(0)))) -> BITS(s(0))
BITS(s(s(s(s(x'))))) -> BITS(s(s(half(x'))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳Nar
...
→DP Problem 7
↳Polynomial Ordering
BITS(s(s(s(s(x'))))) -> BITS(s(s(half(x'))))
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
bits(0) -> 0
bits(s(x)) -> s(bits(half(s(x))))
innermost
BITS(s(s(s(s(x'))))) -> BITS(s(s(half(x'))))
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
POL(BITS(x1)) = 1 + x1 POL(0) = 0 POL(s(x1)) = 1 + x1 POL(half(x1)) = x1
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳Nar
...
→DP Problem 8
↳Dependency Graph
half(0) -> 0
half(s(0)) -> 0
half(s(s(x))) -> s(half(x))
bits(0) -> 0
bits(s(x)) -> s(bits(half(s(x))))
innermost