0 QTRS
↳1 Overlay + Local Confluence (⇔)
↳2 QTRS
↳3 DependencyPairsProof (⇔)
↳4 QDP
↳5 DependencyGraphProof (⇔)
↳6 QDP
↳7 QDPOrderProof (⇔)
↳8 QDP
↳9 PisEmptyProof (⇔)
↳10 TRUE
prime(0) → false
prime(s(0)) → false
prime(s(s(x))) → prime1(s(s(x)), s(x))
prime1(x, 0) → false
prime1(x, s(0)) → true
prime1(x, s(s(y))) → and(not(divp(s(s(y)), x)), prime1(x, s(y)))
divp(x, y) → =(rem(x, y), 0)
prime(0) → false
prime(s(0)) → false
prime(s(s(x))) → prime1(s(s(x)), s(x))
prime1(x, 0) → false
prime1(x, s(0)) → true
prime1(x, s(s(y))) → and(not(divp(s(s(y)), x)), prime1(x, s(y)))
divp(x, y) → =(rem(x, y), 0)
prime(0)
prime(s(0))
prime(s(s(x0)))
prime1(x0, 0)
prime1(x0, s(0))
prime1(x0, s(s(x1)))
divp(x0, x1)
PRIME(s(s(x))) → PRIME1(s(s(x)), s(x))
PRIME1(x, s(s(y))) → DIVP(s(s(y)), x)
PRIME1(x, s(s(y))) → PRIME1(x, s(y))
prime(0) → false
prime(s(0)) → false
prime(s(s(x))) → prime1(s(s(x)), s(x))
prime1(x, 0) → false
prime1(x, s(0)) → true
prime1(x, s(s(y))) → and(not(divp(s(s(y)), x)), prime1(x, s(y)))
divp(x, y) → =(rem(x, y), 0)
prime(0)
prime(s(0))
prime(s(s(x0)))
prime1(x0, 0)
prime1(x0, s(0))
prime1(x0, s(s(x1)))
divp(x0, x1)
PRIME1(x, s(s(y))) → PRIME1(x, s(y))
prime(0) → false
prime(s(0)) → false
prime(s(s(x))) → prime1(s(s(x)), s(x))
prime1(x, 0) → false
prime1(x, s(0)) → true
prime1(x, s(s(y))) → and(not(divp(s(s(y)), x)), prime1(x, s(y)))
divp(x, y) → =(rem(x, y), 0)
prime(0)
prime(s(0))
prime(s(s(x0)))
prime1(x0, 0)
prime1(x0, s(0))
prime1(x0, s(s(x1)))
divp(x0, x1)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PRIME1(x, s(s(y))) → PRIME1(x, s(y))
prime1 > s1 > true > [0, false]
prime1 > s1 > and > [0, false]
rem2 > [0, false]
prime(0) → false
prime(s(0)) → false
prime(s(s(x))) → prime1(s(s(x)), s(x))
prime1(x, 0) → false
prime1(x, s(0)) → true
prime1(x, s(s(y))) → and(not(divp(s(s(y)), x)), prime1(x, s(y)))
divp(x, y) → =(rem(x, y), 0)
prime(0) → false
prime(s(0)) → false
prime(s(s(x))) → prime1(s(s(x)), s(x))
prime1(x, 0) → false
prime1(x, s(0)) → true
prime1(x, s(s(y))) → and(not(divp(s(s(y)), x)), prime1(x, s(y)))
divp(x, y) → =(rem(x, y), 0)
prime(0)
prime(s(0))
prime(s(s(x0)))
prime1(x0, 0)
prime1(x0, s(0))
prime1(x0, s(s(x1)))
divp(x0, x1)