0 QTRS
↳1 Overlay + Local Confluence (⇔)
↳2 QTRS
↳3 DependencyPairsProof (⇔)
↳4 QDP
↳5 DependencyGraphProof (⇔)
↳6 AND
↳7 QDP
↳8 UsableRulesProof (⇔)
↳9 QDP
↳10 QReductionProof (⇔)
↳11 QDP
↳12 QDPSizeChangeProof (⇔)
↳13 TRUE
↳14 QDP
↳15 UsableRulesProof (⇔)
↳16 QDP
↳17 QReductionProof (⇔)
↳18 QDP
↳19 Instantiation (⇔)
↳20 QDP
↳21 NonInfProof (⇔)
↳22 AND
↳23 QDP
↳24 Instantiation (⇔)
↳25 QDP
↳26 NonInfProof (⇔)
↳27 AND
↳28 QDP
↳29 DependencyGraphProof (⇔)
↳30 TRUE
↳31 QDP
↳32 DependencyGraphProof (⇔)
↳33 TRUE
↳34 QDP
↳35 DependencyGraphProof (⇔)
↳36 TRUE
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
quot(x, 0) → quotZeroErro
quot(x, s(y)) → quotIter(x, s(y), 0, 0, 0)
quotIter(x, s(y), z, u, v) → if(le(x, z), x, s(y), z, u, v)
if(true, x, y, z, u, v) → v
if(false, x, y, z, u, v) → if2(le(y, s(u)), x, y, s(z), s(u), v)
if2(false, x, y, z, u, v) → quotIter(x, y, z, u, v)
if2(true, x, y, z, u, v) → quotIter(x, y, z, 0, s(v))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
quot(x, 0) → quotZeroErro
quot(x, s(y)) → quotIter(x, s(y), 0, 0, 0)
quotIter(x, s(y), z, u, v) → if(le(x, z), x, s(y), z, u, v)
if(true, x, y, z, u, v) → v
if(false, x, y, z, u, v) → if2(le(y, s(u)), x, y, s(z), s(u), v)
if2(false, x, y, z, u, v) → quotIter(x, y, z, u, v)
if2(true, x, y, z, u, v) → quotIter(x, y, z, 0, s(v))
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
quot(x0, 0)
quot(x0, s(x1))
quotIter(x0, s(x1), x2, x3, x4)
if(true, x0, x1, x2, x3, x4)
if(false, x0, x1, x2, x3, x4)
if2(false, x0, x1, x2, x3, x4)
if2(true, x0, x1, x2, x3, x4)
LE(s(x), s(y)) → LE(x, y)
QUOT(x, s(y)) → QUOTITER(x, s(y), 0, 0, 0)
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
QUOTITER(x, s(y), z, u, v) → LE(x, z)
IF(false, x, y, z, u, v) → IF2(le(y, s(u)), x, y, s(z), s(u), v)
IF(false, x, y, z, u, v) → LE(y, s(u))
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
IF2(true, x, y, z, u, v) → QUOTITER(x, y, z, 0, s(v))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
quot(x, 0) → quotZeroErro
quot(x, s(y)) → quotIter(x, s(y), 0, 0, 0)
quotIter(x, s(y), z, u, v) → if(le(x, z), x, s(y), z, u, v)
if(true, x, y, z, u, v) → v
if(false, x, y, z, u, v) → if2(le(y, s(u)), x, y, s(z), s(u), v)
if2(false, x, y, z, u, v) → quotIter(x, y, z, u, v)
if2(true, x, y, z, u, v) → quotIter(x, y, z, 0, s(v))
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
quot(x0, 0)
quot(x0, s(x1))
quotIter(x0, s(x1), x2, x3, x4)
if(true, x0, x1, x2, x3, x4)
if(false, x0, x1, x2, x3, x4)
if2(false, x0, x1, x2, x3, x4)
if2(true, x0, x1, x2, x3, x4)
LE(s(x), s(y)) → LE(x, y)
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
quot(x, 0) → quotZeroErro
quot(x, s(y)) → quotIter(x, s(y), 0, 0, 0)
quotIter(x, s(y), z, u, v) → if(le(x, z), x, s(y), z, u, v)
if(true, x, y, z, u, v) → v
if(false, x, y, z, u, v) → if2(le(y, s(u)), x, y, s(z), s(u), v)
if2(false, x, y, z, u, v) → quotIter(x, y, z, u, v)
if2(true, x, y, z, u, v) → quotIter(x, y, z, 0, s(v))
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
quot(x0, 0)
quot(x0, s(x1))
quotIter(x0, s(x1), x2, x3, x4)
if(true, x0, x1, x2, x3, x4)
if(false, x0, x1, x2, x3, x4)
if2(false, x0, x1, x2, x3, x4)
if2(true, x0, x1, x2, x3, x4)
LE(s(x), s(y)) → LE(x, y)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
quot(x0, 0)
quot(x0, s(x1))
quotIter(x0, s(x1), x2, x3, x4)
if(true, x0, x1, x2, x3, x4)
if(false, x0, x1, x2, x3, x4)
if2(false, x0, x1, x2, x3, x4)
if2(true, x0, x1, x2, x3, x4)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
quot(x0, 0)
quot(x0, s(x1))
quotIter(x0, s(x1), x2, x3, x4)
if(true, x0, x1, x2, x3, x4)
if(false, x0, x1, x2, x3, x4)
if2(false, x0, x1, x2, x3, x4)
if2(true, x0, x1, x2, x3, x4)
LE(s(x), s(y)) → LE(x, y)
From the DPs we obtained the following set of size-change graphs:
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF(false, x, y, z, u, v) → IF2(le(y, s(u)), x, y, s(z), s(u), v)
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
IF2(true, x, y, z, u, v) → QUOTITER(x, y, z, 0, s(v))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
quot(x, 0) → quotZeroErro
quot(x, s(y)) → quotIter(x, s(y), 0, 0, 0)
quotIter(x, s(y), z, u, v) → if(le(x, z), x, s(y), z, u, v)
if(true, x, y, z, u, v) → v
if(false, x, y, z, u, v) → if2(le(y, s(u)), x, y, s(z), s(u), v)
if2(false, x, y, z, u, v) → quotIter(x, y, z, u, v)
if2(true, x, y, z, u, v) → quotIter(x, y, z, 0, s(v))
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
quot(x0, 0)
quot(x0, s(x1))
quotIter(x0, s(x1), x2, x3, x4)
if(true, x0, x1, x2, x3, x4)
if(false, x0, x1, x2, x3, x4)
if2(false, x0, x1, x2, x3, x4)
if2(true, x0, x1, x2, x3, x4)
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF(false, x, y, z, u, v) → IF2(le(y, s(u)), x, y, s(z), s(u), v)
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
IF2(true, x, y, z, u, v) → QUOTITER(x, y, z, 0, s(v))
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
quot(x0, 0)
quot(x0, s(x1))
quotIter(x0, s(x1), x2, x3, x4)
if(true, x0, x1, x2, x3, x4)
if(false, x0, x1, x2, x3, x4)
if2(false, x0, x1, x2, x3, x4)
if2(true, x0, x1, x2, x3, x4)
quot(x0, 0)
quot(x0, s(x1))
quotIter(x0, s(x1), x2, x3, x4)
if(true, x0, x1, x2, x3, x4)
if(false, x0, x1, x2, x3, x4)
if2(false, x0, x1, x2, x3, x4)
if2(true, x0, x1, x2, x3, x4)
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF(false, x, y, z, u, v) → IF2(le(y, s(u)), x, y, s(z), s(u), v)
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
IF2(true, x, y, z, u, v) → QUOTITER(x, y, z, 0, s(v))
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
IF(false, z0, s(z1), z2, z3, z4) → IF2(le(s(z1), s(z3)), z0, s(z1), s(z2), s(z3), z4)
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
IF2(true, x, y, z, u, v) → QUOTITER(x, y, z, 0, s(v))
IF(false, z0, s(z1), z2, z3, z4) → IF2(le(s(z1), s(z3)), z0, s(z1), s(z2), s(z3), z4)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
(1) (QUOTITER(x10, x11, x12, x13, x14)=QUOTITER(x15, s(x16), x17, x18, x19) ⇒ QUOTITER(x15, s(x16), x17, x18, x19)≥IF(le(x15, x17), x15, s(x16), x17, x18, x19))
(2) (QUOTITER(x10, s(x16), x12, x13, x14)≥IF(le(x10, x12), x10, s(x16), x12, x13, x14))
(3) (QUOTITER(x20, x21, x22, 0, s(x24))=QUOTITER(x25, s(x26), x27, x28, x29) ⇒ QUOTITER(x25, s(x26), x27, x28, x29)≥IF(le(x25, x27), x25, s(x26), x27, x28, x29))
(4) (QUOTITER(x20, s(x26), x22, 0, s(x24))≥IF(le(x20, x22), x20, s(x26), x22, 0, s(x24)))
(5) (IF(le(x30, x32), x30, s(x31), x32, x33, x34)=IF(false, x35, x36, x37, x38, x39) ⇒ IF(false, x35, x36, x37, x38, x39)≥IF2(le(x36, s(x38)), x35, x36, s(x37), s(x38), x39))
(6) (le(x30, x32)=false ⇒ IF(false, x30, s(x31), x32, x33, x34)≥IF2(le(s(x31), s(x33)), x30, s(x31), s(x32), s(x33), x34))
(7) (le(x107, x106)=false∧(∀x108,x109,x110:le(x107, x106)=false ⇒ IF(false, x107, s(x108), x106, x109, x110)≥IF2(le(s(x108), s(x109)), x107, s(x108), s(x106), s(x109), x110)) ⇒ IF(false, s(x107), s(x31), s(x106), x33, x34)≥IF2(le(s(x31), s(x33)), s(x107), s(x31), s(s(x106)), s(x33), x34))
(8) (false=false ⇒ IF(false, s(x111), s(x31), 0, x33, x34)≥IF2(le(s(x31), s(x33)), s(x111), s(x31), s(0), s(x33), x34))
(9) (IF(false, x107, s(x31), x106, x33, x34)≥IF2(le(s(x31), s(x33)), x107, s(x31), s(x106), s(x33), x34) ⇒ IF(false, s(x107), s(x31), s(x106), x33, x34)≥IF2(le(s(x31), s(x33)), s(x107), s(x31), s(s(x106)), s(x33), x34))
(10) (IF(false, s(x111), s(x31), 0, x33, x34)≥IF2(le(s(x31), s(x33)), s(x111), s(x31), s(0), s(x33), x34))
(11) (IF2(le(x61, s(x63)), x60, x61, s(x62), s(x63), x64)=IF2(false, x65, x66, x67, x68, x69) ⇒ IF2(false, x65, x66, x67, x68, x69)≥QUOTITER(x65, x66, x67, x68, x69))
(12) (s(x63)=x112∧le(x61, x112)=false ⇒ IF2(false, x60, x61, s(x62), s(x63), x64)≥QUOTITER(x60, x61, s(x62), s(x63), x64))
(13) (le(x115, x114)=false∧s(x63)=s(x114)∧(∀x116,x117,x118,x119:le(x115, x114)=false∧s(x116)=x114 ⇒ IF2(false, x117, x115, s(x118), s(x116), x119)≥QUOTITER(x117, x115, s(x118), s(x116), x119)) ⇒ IF2(false, x60, s(x115), s(x62), s(x63), x64)≥QUOTITER(x60, s(x115), s(x62), s(x63), x64))
(14) (false=false∧s(x63)=0 ⇒ IF2(false, x60, s(x120), s(x62), s(x63), x64)≥QUOTITER(x60, s(x120), s(x62), s(x63), x64))
(15) (le(x115, x114)=false ⇒ IF2(false, x60, s(x115), s(x62), s(x114), x64)≥QUOTITER(x60, s(x115), s(x62), s(x114), x64))
(16) (le(x123, x122)=false∧(∀x124,x125,x126:le(x123, x122)=false ⇒ IF2(false, x124, s(x123), s(x125), s(x122), x126)≥QUOTITER(x124, s(x123), s(x125), s(x122), x126)) ⇒ IF2(false, x60, s(s(x123)), s(x62), s(s(x122)), x64)≥QUOTITER(x60, s(s(x123)), s(x62), s(s(x122)), x64))
(17) (false=false ⇒ IF2(false, x60, s(s(x127)), s(x62), s(0), x64)≥QUOTITER(x60, s(s(x127)), s(x62), s(0), x64))
(18) (IF2(false, x60, s(x123), s(x62), s(x122), x64)≥QUOTITER(x60, s(x123), s(x62), s(x122), x64) ⇒ IF2(false, x60, s(s(x123)), s(x62), s(s(x122)), x64)≥QUOTITER(x60, s(s(x123)), s(x62), s(s(x122)), x64))
(19) (IF2(false, x60, s(s(x127)), s(x62), s(0), x64)≥QUOTITER(x60, s(s(x127)), s(x62), s(0), x64))
(20) (IF2(le(x86, s(x88)), x85, x86, s(x87), s(x88), x89)=IF2(true, x90, x91, x92, x93, x94) ⇒ IF2(true, x90, x91, x92, x93, x94)≥QUOTITER(x90, x91, x92, 0, s(x94)))
(21) (s(x88)=x128∧le(x86, x128)=true ⇒ IF2(true, x85, x86, s(x87), s(x88), x89)≥QUOTITER(x85, x86, s(x87), 0, s(x89)))
(22) (true=true∧s(x88)=x129 ⇒ IF2(true, x85, 0, s(x87), s(x88), x89)≥QUOTITER(x85, 0, s(x87), 0, s(x89)))
(23) (le(x131, x130)=true∧s(x88)=s(x130)∧(∀x132,x133,x134,x135:le(x131, x130)=true∧s(x132)=x130 ⇒ IF2(true, x133, x131, s(x134), s(x132), x135)≥QUOTITER(x133, x131, s(x134), 0, s(x135))) ⇒ IF2(true, x85, s(x131), s(x87), s(x88), x89)≥QUOTITER(x85, s(x131), s(x87), 0, s(x89)))
(24) (IF2(true, x85, 0, s(x87), s(x88), x89)≥QUOTITER(x85, 0, s(x87), 0, s(x89)))
(25) (le(x131, x130)=true ⇒ IF2(true, x85, s(x131), s(x87), s(x130), x89)≥QUOTITER(x85, s(x131), s(x87), 0, s(x89)))
(26) (true=true ⇒ IF2(true, x85, s(0), s(x87), s(x137), x89)≥QUOTITER(x85, s(0), s(x87), 0, s(x89)))
(27) (le(x139, x138)=true∧(∀x140,x141,x142:le(x139, x138)=true ⇒ IF2(true, x140, s(x139), s(x141), s(x138), x142)≥QUOTITER(x140, s(x139), s(x141), 0, s(x142))) ⇒ IF2(true, x85, s(s(x139)), s(x87), s(s(x138)), x89)≥QUOTITER(x85, s(s(x139)), s(x87), 0, s(x89)))
(28) (IF2(true, x85, s(0), s(x87), s(x137), x89)≥QUOTITER(x85, s(0), s(x87), 0, s(x89)))
(29) (IF2(true, x85, s(x139), s(x87), s(x138), x89)≥QUOTITER(x85, s(x139), s(x87), 0, s(x89)) ⇒ IF2(true, x85, s(s(x139)), s(x87), s(s(x138)), x89)≥QUOTITER(x85, s(s(x139)), s(x87), 0, s(x89)))
POL(0) = 0
POL(IF(x1, x2, x3, x4, x5, x6)) = -1 - x1 + x2 - x4 + x5
POL(IF2(x1, x2, x3, x4, x5, x6)) = -1 - x1 + x2 - x4 + x5
POL(QUOTITER(x1, x2, x3, x4, x5)) = -1 + x1 - x3 + x4
POL(c) = -1
POL(false) = 0
POL(le(x1, x2)) = 0
POL(s(x1)) = 1 + x1
POL(true) = 0
The following pairs are in Pbound:
IF2(true, x, y, z, u, v) → QUOTITER(x, y, z, 0, s(v))
The following rules are usable:
IF(false, x, y, z, u, v) → IF2(le(y, s(u)), x, y, s(z), s(u), v)
false → le(s(x), 0)
le(x, y) → le(s(x), s(y))
true → le(0, y)
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF(false, x, y, z, u, v) → IF2(le(y, s(u)), x, y, s(z), s(u), v)
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
IF(false, z0, s(z1), z2, z3, z4) → IF2(le(s(z1), s(z3)), z0, s(z1), s(z2), s(z3), z4)
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
IF(false, z0, s(z1), z2, z3, z4) → IF2(le(s(z1), s(z3)), z0, s(z1), s(z2), s(z3), z4)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
(1) (QUOTITER(x10, x11, x12, x13, x14)=QUOTITER(x15, s(x16), x17, x18, x19) ⇒ QUOTITER(x15, s(x16), x17, x18, x19)≥IF(le(x15, x17), x15, s(x16), x17, x18, x19))
(2) (QUOTITER(x10, s(x16), x12, x13, x14)≥IF(le(x10, x12), x10, s(x16), x12, x13, x14))
(3) (IF(le(x30, x32), x30, s(x31), x32, x33, x34)=IF(false, x35, x36, x37, x38, x39) ⇒ IF(false, x35, x36, x37, x38, x39)≥IF2(le(x36, s(x38)), x35, x36, s(x37), s(x38), x39))
(4) (le(x30, x32)=false ⇒ IF(false, x30, s(x31), x32, x33, x34)≥IF2(le(s(x31), s(x33)), x30, s(x31), s(x32), s(x33), x34))
(5) (le(x107, x106)=false∧(∀x108,x109,x110:le(x107, x106)=false ⇒ IF(false, x107, s(x108), x106, x109, x110)≥IF2(le(s(x108), s(x109)), x107, s(x108), s(x106), s(x109), x110)) ⇒ IF(false, s(x107), s(x31), s(x106), x33, x34)≥IF2(le(s(x31), s(x33)), s(x107), s(x31), s(s(x106)), s(x33), x34))
(6) (false=false ⇒ IF(false, s(x111), s(x31), 0, x33, x34)≥IF2(le(s(x31), s(x33)), s(x111), s(x31), s(0), s(x33), x34))
(7) (IF(false, x107, s(x31), x106, x33, x34)≥IF2(le(s(x31), s(x33)), x107, s(x31), s(x106), s(x33), x34) ⇒ IF(false, s(x107), s(x31), s(x106), x33, x34)≥IF2(le(s(x31), s(x33)), s(x107), s(x31), s(s(x106)), s(x33), x34))
(8) (IF(false, s(x111), s(x31), 0, x33, x34)≥IF2(le(s(x31), s(x33)), s(x111), s(x31), s(0), s(x33), x34))
(9) (IF2(le(x61, s(x63)), x60, x61, s(x62), s(x63), x64)=IF2(false, x65, x66, x67, x68, x69) ⇒ IF2(false, x65, x66, x67, x68, x69)≥QUOTITER(x65, x66, x67, x68, x69))
(10) (s(x63)=x112∧le(x61, x112)=false ⇒ IF2(false, x60, x61, s(x62), s(x63), x64)≥QUOTITER(x60, x61, s(x62), s(x63), x64))
(11) (le(x115, x114)=false∧s(x63)=s(x114)∧(∀x116,x117,x118,x119:le(x115, x114)=false∧s(x116)=x114 ⇒ IF2(false, x117, x115, s(x118), s(x116), x119)≥QUOTITER(x117, x115, s(x118), s(x116), x119)) ⇒ IF2(false, x60, s(x115), s(x62), s(x63), x64)≥QUOTITER(x60, s(x115), s(x62), s(x63), x64))
(12) (false=false∧s(x63)=0 ⇒ IF2(false, x60, s(x120), s(x62), s(x63), x64)≥QUOTITER(x60, s(x120), s(x62), s(x63), x64))
(13) (le(x115, x114)=false ⇒ IF2(false, x60, s(x115), s(x62), s(x114), x64)≥QUOTITER(x60, s(x115), s(x62), s(x114), x64))
(14) (le(x123, x122)=false∧(∀x124,x125,x126:le(x123, x122)=false ⇒ IF2(false, x124, s(x123), s(x125), s(x122), x126)≥QUOTITER(x124, s(x123), s(x125), s(x122), x126)) ⇒ IF2(false, x60, s(s(x123)), s(x62), s(s(x122)), x64)≥QUOTITER(x60, s(s(x123)), s(x62), s(s(x122)), x64))
(15) (false=false ⇒ IF2(false, x60, s(s(x127)), s(x62), s(0), x64)≥QUOTITER(x60, s(s(x127)), s(x62), s(0), x64))
(16) (IF2(false, x60, s(x123), s(x62), s(x122), x64)≥QUOTITER(x60, s(x123), s(x62), s(x122), x64) ⇒ IF2(false, x60, s(s(x123)), s(x62), s(s(x122)), x64)≥QUOTITER(x60, s(s(x123)), s(x62), s(s(x122)), x64))
(17) (IF2(false, x60, s(s(x127)), s(x62), s(0), x64)≥QUOTITER(x60, s(s(x127)), s(x62), s(0), x64))
POL(0) = 0
POL(IF(x1, x2, x3, x4, x5, x6)) = -1 - x1 + x3 - x5
POL(IF2(x1, x2, x3, x4, x5, x6)) = -1 - x1 + x3 - x5
POL(QUOTITER(x1, x2, x3, x4, x5)) = -1 + x2 - x4
POL(c) = -1
POL(false) = 0
POL(le(x1, x2)) = 0
POL(s(x1)) = 1 + x1
POL(true) = 1
The following pairs are in Pbound:
IF(false, x, y, z, u, v) → IF2(le(y, s(u)), x, y, s(z), s(u), v)
The following rules are usable:
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
false → le(s(x), 0)
le(x, y) → le(s(x), s(y))
true → le(0, y)
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF(false, x, y, z, u, v) → IF2(le(y, s(u)), x, y, s(z), s(u), v)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
QUOTITER(x, s(y), z, u, v) → IF(le(x, z), x, s(y), z, u, v)
IF2(false, x, y, z, u, v) → QUOTITER(x, y, z, u, v)
IF2(true, x, y, z, u, v) → QUOTITER(x, y, z, 0, s(v))
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))