YES
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
L(f(s(s(y)), f(z, w))) → L(f(s(0), f(y, f(s(z), w))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
↳ QTRS
↳ DependencyPairsProof
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
L(f(s(s(y)), f(z, w))) → L(f(s(0), f(y, f(s(z), w))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
L1(f(s(s(y)), f(z, w))) → F(s(z), w)
L1(f(s(s(y)), f(z, w))) → F(y, f(s(z), w))
F(x, f(s(s(y)), nil)) → F(s(0), nil)
F(x, f(s(s(y)), f(z, w))) → F(s(z), w)
F(x, f(s(s(y)), nil)) → F(s(x), f(y, f(s(0), nil)))
L1(f(s(s(y)), f(z, w))) → L1(f(s(0), f(y, f(s(z), w))))
F(x, f(s(s(y)), f(z, w))) → F(s(x), f(y, f(s(z), w)))
F(x, f(s(s(y)), f(z, w))) → F(y, f(s(z), w))
L1(f(s(s(y)), f(z, w))) → F(s(0), f(y, f(s(z), w)))
F(x, f(s(s(y)), nil)) → F(y, f(s(0), nil))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
L(f(s(s(y)), f(z, w))) → L(f(s(0), f(y, f(s(z), w))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
L1(f(s(s(y)), f(z, w))) → F(s(z), w)
L1(f(s(s(y)), f(z, w))) → F(y, f(s(z), w))
F(x, f(s(s(y)), nil)) → F(s(0), nil)
F(x, f(s(s(y)), f(z, w))) → F(s(z), w)
F(x, f(s(s(y)), nil)) → F(s(x), f(y, f(s(0), nil)))
L1(f(s(s(y)), f(z, w))) → L1(f(s(0), f(y, f(s(z), w))))
F(x, f(s(s(y)), f(z, w))) → F(s(x), f(y, f(s(z), w)))
F(x, f(s(s(y)), f(z, w))) → F(y, f(s(z), w))
L1(f(s(s(y)), f(z, w))) → F(s(0), f(y, f(s(z), w)))
F(x, f(s(s(y)), nil)) → F(y, f(s(0), nil))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
L(f(s(s(y)), f(z, w))) → L(f(s(0), f(y, f(s(z), w))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
F(x, f(s(s(y)), f(z, w))) → F(s(z), w)
F(x, f(s(s(y)), nil)) → F(s(x), f(y, f(s(0), nil)))
F(x, f(s(s(y)), f(z, w))) → F(s(x), f(y, f(s(z), w)))
F(x, f(s(s(y)), f(z, w))) → F(y, f(s(z), w))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
L(f(s(s(y)), f(z, w))) → L(f(s(0), f(y, f(s(z), w))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ RuleRemovalProof
↳ QDP
F(x, f(s(s(y)), f(z, w))) → F(s(z), w)
F(x, f(s(s(y)), f(z, w))) → F(s(x), f(y, f(s(z), w)))
F(x, f(s(s(y)), nil)) → F(s(x), f(y, f(s(0), nil)))
F(x, f(s(s(y)), f(z, w))) → F(y, f(s(z), w))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
F(x, f(s(s(y)), f(z, w))) → F(s(z), w)
F(x, f(s(s(y)), f(z, w))) → F(s(x), f(y, f(s(z), w)))
F(x, f(s(s(y)), nil)) → F(s(x), f(y, f(s(0), nil)))
F(x, f(s(s(y)), f(z, w))) → F(y, f(s(z), w))
POL(0) = 0
POL(F(x1, x2)) = x1 + 2·x2
POL(f(x1, x2)) = 2·x1 + x2
POL(nil) = 0
POL(s(x1)) = 1 + x1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ RuleRemovalProof
↳ QDP
↳ PisEmptyProof
↳ QDP
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
L1(f(s(s(y)), f(z, w))) → L1(f(s(0), f(y, f(s(z), w))))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
L(f(s(s(y)), f(z, w))) → L(f(s(0), f(y, f(s(z), w))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Narrowing
L1(f(s(s(y)), f(z, w))) → L1(f(s(0), f(y, f(s(z), w))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
L1(f(s(s(y0)), f(y1, f(s(s(x1)), f(x2, x3))))) → L1(f(s(0), f(y0, f(s(s(y1)), f(x1, f(s(x2), x3))))))
L1(f(s(s(x0)), f(s(x1), f(x2, x3)))) → L1(f(s(0), f(s(x0), f(x1, f(s(x2), x3)))))
L1(f(s(s(x0)), f(s(x1), nil))) → L1(f(s(0), f(s(x0), f(x1, f(s(0), nil)))))
L1(f(s(s(y0)), f(y1, f(s(s(x1)), nil)))) → L1(f(s(0), f(y0, f(s(s(y1)), f(x1, f(s(0), nil))))))
L1(f(s(s(s(s(x1)))), f(y1, x3))) → L1(f(s(s(0)), f(x1, f(s(s(y1)), x3))))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
L1(f(s(s(y0)), f(y1, f(s(s(x1)), f(x2, x3))))) → L1(f(s(0), f(y0, f(s(s(y1)), f(x1, f(s(x2), x3))))))
L1(f(s(s(x0)), f(s(x1), nil))) → L1(f(s(0), f(s(x0), f(x1, f(s(0), nil)))))
L1(f(s(s(x0)), f(s(x1), f(x2, x3)))) → L1(f(s(0), f(s(x0), f(x1, f(s(x2), x3)))))
L1(f(s(s(s(s(x1)))), f(y1, x3))) → L1(f(s(s(0)), f(x1, f(s(s(y1)), x3))))
L1(f(s(s(y0)), f(y1, f(s(s(x1)), nil)))) → L1(f(s(0), f(y0, f(s(s(y1)), f(x1, f(s(0), nil))))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ QDPOrderProof
L1(f(s(s(y0)), f(y1, f(s(s(x1)), f(x2, x3))))) → L1(f(s(0), f(y0, f(s(s(y1)), f(x1, f(s(x2), x3))))))
L1(f(s(s(x0)), f(s(x1), f(x2, x3)))) → L1(f(s(0), f(s(x0), f(x1, f(s(x2), x3)))))
L1(f(s(s(s(s(x1)))), f(y1, x3))) → L1(f(s(s(0)), f(x1, f(s(s(y1)), x3))))
L1(f(s(s(y0)), f(y1, f(s(s(x1)), nil)))) → L1(f(s(0), f(y0, f(s(s(y1)), f(x1, f(s(0), nil))))))
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
L1(f(s(s(y0)), f(y1, f(s(s(x1)), f(x2, x3))))) → L1(f(s(0), f(y0, f(s(s(y1)), f(x1, f(s(x2), x3))))))
L1(f(s(s(x0)), f(s(x1), f(x2, x3)))) → L1(f(s(0), f(s(x0), f(x1, f(s(x2), x3)))))
L1(f(s(s(s(s(x1)))), f(y1, x3))) → L1(f(s(s(0)), f(x1, f(s(s(y1)), x3))))
L1(f(s(s(y0)), f(y1, f(s(s(x1)), nil)))) → L1(f(s(0), f(y0, f(s(s(y1)), f(x1, f(s(0), nil))))))
POL( s(x1) ) = x1 + 2
POL( 0 ) = max{0, -1}
POL( nil ) = 1
POL( f(x1, x2) ) = max{0, x1 + x2 - 1}
POL( L1(x1) ) = max{0, x1 - 1}
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
f(x, f(s(s(y)), nil)) → f(s(x), f(y, f(s(0), nil)))
f(x, f(s(s(y)), f(z, w))) → f(s(x), f(y, f(s(z), w)))