R
↳Dependency Pair Analysis
FAC(s(x)) -> FAC(p(s(x)))
FAC(s(x)) -> P(s(x))
P(s(s(x))) -> P(s(x))
R
↳DPs
→DP Problem 1
↳Polynomial Ordering
→DP Problem 2
↳Nar
P(s(s(x))) -> P(s(x))
fac(s(x)) -> *(fac(p(s(x))), s(x))
p(s(0)) -> 0
p(s(s(x))) -> s(p(s(x)))
P(s(s(x))) -> P(s(x))
POL(P(x1)) = 1 + x1 POL(s(x1)) = 1 + x1
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 3
↳Dependency Graph
→DP Problem 2
↳Nar
fac(s(x)) -> *(fac(p(s(x))), s(x))
p(s(0)) -> 0
p(s(s(x))) -> s(p(s(x)))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Narrowing Transformation
FAC(s(x)) -> FAC(p(s(x)))
fac(s(x)) -> *(fac(p(s(x))), s(x))
p(s(0)) -> 0
p(s(s(x))) -> s(p(s(x)))
two new Dependency Pairs are created:
FAC(s(x)) -> FAC(p(s(x)))
FAC(s(0)) -> FAC(0)
FAC(s(s(x''))) -> FAC(s(p(s(x''))))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Narrowing Transformation
FAC(s(s(x''))) -> FAC(s(p(s(x''))))
fac(s(x)) -> *(fac(p(s(x))), s(x))
p(s(0)) -> 0
p(s(s(x))) -> s(p(s(x)))
two new Dependency Pairs are created:
FAC(s(s(x''))) -> FAC(s(p(s(x''))))
FAC(s(s(0))) -> FAC(s(0))
FAC(s(s(s(x')))) -> FAC(s(s(p(s(x')))))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 5
↳Narrowing Transformation
FAC(s(s(s(x')))) -> FAC(s(s(p(s(x')))))
fac(s(x)) -> *(fac(p(s(x))), s(x))
p(s(0)) -> 0
p(s(s(x))) -> s(p(s(x)))
two new Dependency Pairs are created:
FAC(s(s(s(x')))) -> FAC(s(s(p(s(x')))))
FAC(s(s(s(0)))) -> FAC(s(s(0)))
FAC(s(s(s(s(x''))))) -> FAC(s(s(s(p(s(x''))))))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 6
↳Narrowing Transformation
FAC(s(s(s(s(x''))))) -> FAC(s(s(s(p(s(x''))))))
fac(s(x)) -> *(fac(p(s(x))), s(x))
p(s(0)) -> 0
p(s(s(x))) -> s(p(s(x)))
two new Dependency Pairs are created:
FAC(s(s(s(s(x''))))) -> FAC(s(s(s(p(s(x''))))))
FAC(s(s(s(s(0))))) -> FAC(s(s(s(0))))
FAC(s(s(s(s(s(x')))))) -> FAC(s(s(s(s(p(s(x')))))))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 7
↳Narrowing Transformation
FAC(s(s(s(s(s(x')))))) -> FAC(s(s(s(s(p(s(x')))))))
fac(s(x)) -> *(fac(p(s(x))), s(x))
p(s(0)) -> 0
p(s(s(x))) -> s(p(s(x)))
two new Dependency Pairs are created:
FAC(s(s(s(s(s(x')))))) -> FAC(s(s(s(s(p(s(x')))))))
FAC(s(s(s(s(s(0)))))) -> FAC(s(s(s(s(0)))))
FAC(s(s(s(s(s(s(x''))))))) -> FAC(s(s(s(s(s(p(s(x''))))))))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 8
↳Remaining Obligation(s)
FAC(s(s(s(s(s(s(x''))))))) -> FAC(s(s(s(s(s(p(s(x''))))))))
fac(s(x)) -> *(fac(p(s(x))), s(x))
p(s(0)) -> 0
p(s(s(x))) -> s(p(s(x)))