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
↳Remaining Obligation(s)
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)))