0 Prolog
↳1 PrologToTRSTransformerProof (⇒, 57 ms)
↳2 QTRS
↳3 DependencyPairsProof (⇔, 0 ms)
↳4 QDP
↳5 DependencyGraphProof (⇔, 2 ms)
↳6 AND
↳7 QDP
↳8 UsableRulesProof (⇔, 0 ms)
↳9 QDP
↳10 QDPSizeChangeProof (⇔, 0 ms)
↳11 YES
↳12 QDP
↳13 UsableRulesProof (⇔, 0 ms)
↳14 QDP
↳15 QDPSizeChangeProof (⇔, 0 ms)
↳16 YES
↳17 QDP
↳18 QDPOrderProof (⇔, 245 ms)
↳19 QDP
↳20 QDPOrderProof (⇔, 448 ms)
↳21 QDP
↳22 DependencyGraphProof (⇔, 0 ms)
↳23 QDP
↳24 UsableRulesProof (⇔, 0 ms)
↳25 QDP
↳26 UsableRulesReductionPairsProof (⇔, 0 ms)
↳27 QDP
↳28 DependencyGraphProof (⇔, 0 ms)
↳29 TRUE
f1_in(.(T6, [])) → f1_out1
f1_in(.(s(s(T19)), .(T20, T21))) → U1(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
U1(f46_out1(X24), .(s(s(T19)), .(T20, T21))) → f1_out1
f1_in(.(0, T66)) → U2(f1_in(T66), .(0, T66))
U2(f1_out1, .(0, T66)) → f1_out1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
f46_in(T19, T20, T21) → U5(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U5(f1_out1, T19, T20, T21) → U6(f53_in(T19, T20, T21), T19, T20, T21)
U6(f53_out1(X24), T19, T20, T21) → f46_out1(X24)
f53_in(T19, T20, T21) → U7(f58_in(T19, T20), T19, T20, T21)
U7(f58_out1(T28), T19, T20, T21) → U8(f1_in(.(T28, T21)), T19, T20, T21, T28)
U8(f1_out1, T19, T20, T21, T28) → f53_out1(T28)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
F1_IN(.(s(s(T19)), .(T20, T21))) → U11(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
F1_IN(.(s(s(T19)), .(T20, T21))) → F46_IN(T19, T20, T21)
F1_IN(.(0, T66)) → U21(f1_in(T66), .(0, T66))
F1_IN(.(0, T66)) → F1_IN(T66)
F58_IN(T40, s(T41)) → U31(f82_in(T40, T41), T40, s(T41))
F58_IN(T40, s(T41)) → F82_IN(T40, T41)
F89_IN(T58, s(T59)) → U41(f89_in(T58, T59), T58, s(T59))
F89_IN(T58, s(T59)) → F89_IN(T58, T59)
F46_IN(T19, T20, T21) → U51(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
F46_IN(T19, T20, T21) → F1_IN(.(T19, .(T20, T21)))
U51(f1_out1, T19, T20, T21) → U61(f53_in(T19, T20, T21), T19, T20, T21)
U51(f1_out1, T19, T20, T21) → F53_IN(T19, T20, T21)
F53_IN(T19, T20, T21) → U71(f58_in(T19, T20), T19, T20, T21)
F53_IN(T19, T20, T21) → F58_IN(T19, T20)
U71(f58_out1(T28), T19, T20, T21) → U81(f1_in(.(T28, T21)), T19, T20, T21, T28)
U71(f58_out1(T28), T19, T20, T21) → F1_IN(.(T28, T21))
F82_IN(T40, T41) → U91(f58_in(T40, T41), T40, T41)
F82_IN(T40, T41) → F58_IN(T40, T41)
U91(f58_out1(T44), T40, T41) → U101(f89_in(T44, T40), T40, T41, T44)
U91(f58_out1(T44), T40, T41) → F89_IN(T44, T40)
f1_in(.(T6, [])) → f1_out1
f1_in(.(s(s(T19)), .(T20, T21))) → U1(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
U1(f46_out1(X24), .(s(s(T19)), .(T20, T21))) → f1_out1
f1_in(.(0, T66)) → U2(f1_in(T66), .(0, T66))
U2(f1_out1, .(0, T66)) → f1_out1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
f46_in(T19, T20, T21) → U5(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U5(f1_out1, T19, T20, T21) → U6(f53_in(T19, T20, T21), T19, T20, T21)
U6(f53_out1(X24), T19, T20, T21) → f46_out1(X24)
f53_in(T19, T20, T21) → U7(f58_in(T19, T20), T19, T20, T21)
U7(f58_out1(T28), T19, T20, T21) → U8(f1_in(.(T28, T21)), T19, T20, T21, T28)
U8(f1_out1, T19, T20, T21, T28) → f53_out1(T28)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
F89_IN(T58, s(T59)) → F89_IN(T58, T59)
f1_in(.(T6, [])) → f1_out1
f1_in(.(s(s(T19)), .(T20, T21))) → U1(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
U1(f46_out1(X24), .(s(s(T19)), .(T20, T21))) → f1_out1
f1_in(.(0, T66)) → U2(f1_in(T66), .(0, T66))
U2(f1_out1, .(0, T66)) → f1_out1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
f46_in(T19, T20, T21) → U5(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U5(f1_out1, T19, T20, T21) → U6(f53_in(T19, T20, T21), T19, T20, T21)
U6(f53_out1(X24), T19, T20, T21) → f46_out1(X24)
f53_in(T19, T20, T21) → U7(f58_in(T19, T20), T19, T20, T21)
U7(f58_out1(T28), T19, T20, T21) → U8(f1_in(.(T28, T21)), T19, T20, T21, T28)
U8(f1_out1, T19, T20, T21, T28) → f53_out1(T28)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
F89_IN(T58, s(T59)) → F89_IN(T58, T59)
From the DPs we obtained the following set of size-change graphs:
F58_IN(T40, s(T41)) → F82_IN(T40, T41)
F82_IN(T40, T41) → F58_IN(T40, T41)
f1_in(.(T6, [])) → f1_out1
f1_in(.(s(s(T19)), .(T20, T21))) → U1(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
U1(f46_out1(X24), .(s(s(T19)), .(T20, T21))) → f1_out1
f1_in(.(0, T66)) → U2(f1_in(T66), .(0, T66))
U2(f1_out1, .(0, T66)) → f1_out1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
f46_in(T19, T20, T21) → U5(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U5(f1_out1, T19, T20, T21) → U6(f53_in(T19, T20, T21), T19, T20, T21)
U6(f53_out1(X24), T19, T20, T21) → f46_out1(X24)
f53_in(T19, T20, T21) → U7(f58_in(T19, T20), T19, T20, T21)
U7(f58_out1(T28), T19, T20, T21) → U8(f1_in(.(T28, T21)), T19, T20, T21, T28)
U8(f1_out1, T19, T20, T21, T28) → f53_out1(T28)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
F58_IN(T40, s(T41)) → F82_IN(T40, T41)
F82_IN(T40, T41) → F58_IN(T40, T41)
From the DPs we obtained the following set of size-change graphs:
F1_IN(.(s(s(T19)), .(T20, T21))) → F46_IN(T19, T20, T21)
F46_IN(T19, T20, T21) → U51(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U51(f1_out1, T19, T20, T21) → F53_IN(T19, T20, T21)
F53_IN(T19, T20, T21) → U71(f58_in(T19, T20), T19, T20, T21)
U71(f58_out1(T28), T19, T20, T21) → F1_IN(.(T28, T21))
F1_IN(.(0, T66)) → F1_IN(T66)
F46_IN(T19, T20, T21) → F1_IN(.(T19, .(T20, T21)))
f1_in(.(T6, [])) → f1_out1
f1_in(.(s(s(T19)), .(T20, T21))) → U1(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
U1(f46_out1(X24), .(s(s(T19)), .(T20, T21))) → f1_out1
f1_in(.(0, T66)) → U2(f1_in(T66), .(0, T66))
U2(f1_out1, .(0, T66)) → f1_out1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
f46_in(T19, T20, T21) → U5(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U5(f1_out1, T19, T20, T21) → U6(f53_in(T19, T20, T21), T19, T20, T21)
U6(f53_out1(X24), T19, T20, T21) → f46_out1(X24)
f53_in(T19, T20, T21) → U7(f58_in(T19, T20), T19, T20, T21)
U7(f58_out1(T28), T19, T20, T21) → U8(f1_in(.(T28, T21)), T19, T20, T21, T28)
U8(f1_out1, T19, T20, T21, T28) → f53_out1(T28)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
F1_IN(.(0, T66)) → F1_IN(T66)
POL(.(x1, x2)) = x1 + x2
POL(0) = 1
POL(F1_IN(x1)) = x1
POL(F46_IN(x1, x2, x3)) = x1 + x2 + x3
POL(F53_IN(x1, x2, x3)) = x2 + x3
POL(U1(x1, x2)) = 0
POL(U10(x1, x2, x3, x4)) = x1
POL(U2(x1, x2)) = 0
POL(U3(x1, x2, x3)) = x1
POL(U4(x1, x2, x3)) = x1
POL(U5(x1, x2, x3, x4)) = 1
POL(U51(x1, x2, x3, x4)) = x3 + x4
POL(U6(x1, x2, x3, x4)) = 1
POL(U7(x1, x2, x3, x4)) = 0
POL(U71(x1, x2, x3, x4)) = x1 + x4
POL(U8(x1, x2, x3, x4, x5)) = 0
POL(U9(x1, x2, x3)) = x1
POL([]) = 0
POL(f1_in(x1)) = 0
POL(f1_out1) = 0
POL(f46_in(x1, x2, x3)) = 1 + x3
POL(f46_out1(x1)) = 0
POL(f53_in(x1, x2, x3)) = 1
POL(f53_out1(x1)) = 0
POL(f58_in(x1, x2)) = x2
POL(f58_out1(x1)) = x1
POL(f82_in(x1, x2)) = x2
POL(f82_out1(x1, x2)) = x2
POL(f89_in(x1, x2)) = x1
POL(f89_out1(x1)) = x1
POL(s(x1)) = x1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
F1_IN(.(s(s(T19)), .(T20, T21))) → F46_IN(T19, T20, T21)
F46_IN(T19, T20, T21) → U51(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U51(f1_out1, T19, T20, T21) → F53_IN(T19, T20, T21)
F53_IN(T19, T20, T21) → U71(f58_in(T19, T20), T19, T20, T21)
U71(f58_out1(T28), T19, T20, T21) → F1_IN(.(T28, T21))
F46_IN(T19, T20, T21) → F1_IN(.(T19, .(T20, T21)))
f1_in(.(T6, [])) → f1_out1
f1_in(.(s(s(T19)), .(T20, T21))) → U1(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
U1(f46_out1(X24), .(s(s(T19)), .(T20, T21))) → f1_out1
f1_in(.(0, T66)) → U2(f1_in(T66), .(0, T66))
U2(f1_out1, .(0, T66)) → f1_out1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
f46_in(T19, T20, T21) → U5(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U5(f1_out1, T19, T20, T21) → U6(f53_in(T19, T20, T21), T19, T20, T21)
U6(f53_out1(X24), T19, T20, T21) → f46_out1(X24)
f53_in(T19, T20, T21) → U7(f58_in(T19, T20), T19, T20, T21)
U7(f58_out1(T28), T19, T20, T21) → U8(f1_in(.(T28, T21)), T19, T20, T21, T28)
U8(f1_out1, T19, T20, T21, T28) → f53_out1(T28)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U71(f58_out1(T28), T19, T20, T21) → F1_IN(.(T28, T21))
POL( U51(x1, ..., x4) ) = 2x4 + 2
POL( f1_in(x1) ) = max{0, -2}
POL( .(x1, x2) ) = x2 + 1
POL( s(x1) ) = 0
POL( U1(x1, x2) ) = max{0, 2x1 - 1}
POL( f46_in(x1, ..., x3) ) = x2 + x3
POL( 0 ) = 2
POL( U2(x1, x2) ) = max{0, -1}
POL( U71(x1, ..., x4) ) = 2x4 + 2
POL( U7(x1, ..., x4) ) = 2x2 + x3 + x4 + 2
POL( f58_in(x1, x2) ) = 2x1
POL( f58_out1(x1) ) = max{0, 2x1 - 2}
POL( U3(x1, ..., x3) ) = max{0, x1 - 2}
POL( f82_in(x1, x2) ) = x1 + x2 + 1
POL( f46_out1(x1) ) = 2x1
POL( f1_out1 ) = 0
POL( U5(x1, ..., x4) ) = max{0, x1 + 2x3 + 2x4 - 2}
POL( U8(x1, ..., x5) ) = max{0, 2x1 - 2}
POL( [] ) = 2
POL( U6(x1, ..., x4) ) = 2x1 + x2 + 2x3 + x4
POL( f53_in(x1, ..., x3) ) = 2x1 + x2 + 2x3
POL( f53_out1(x1) ) = 2
POL( f82_out1(x1, x2) ) = 2x1 + x2 + 2
POL( U9(x1, ..., x3) ) = max{0, 2x1 + 2x2 + 2x3 - 1}
POL( U10(x1, ..., x4) ) = max{0, -2}
POL( f89_in(x1, x2) ) = 2x1 + x2
POL( f89_out1(x1) ) = max{0, 2x1 - 2}
POL( U4(x1, ..., x3) ) = max{0, 2x1 + x2 - 2}
POL( F1_IN(x1) ) = max{0, 2x1 - 2}
POL( F46_IN(x1, ..., x3) ) = 2x3 + 2
POL( F53_IN(x1, ..., x3) ) = 2x3 + 2
F1_IN(.(s(s(T19)), .(T20, T21))) → F46_IN(T19, T20, T21)
F46_IN(T19, T20, T21) → U51(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U51(f1_out1, T19, T20, T21) → F53_IN(T19, T20, T21)
F53_IN(T19, T20, T21) → U71(f58_in(T19, T20), T19, T20, T21)
F46_IN(T19, T20, T21) → F1_IN(.(T19, .(T20, T21)))
f1_in(.(T6, [])) → f1_out1
f1_in(.(s(s(T19)), .(T20, T21))) → U1(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
U1(f46_out1(X24), .(s(s(T19)), .(T20, T21))) → f1_out1
f1_in(.(0, T66)) → U2(f1_in(T66), .(0, T66))
U2(f1_out1, .(0, T66)) → f1_out1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
f46_in(T19, T20, T21) → U5(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U5(f1_out1, T19, T20, T21) → U6(f53_in(T19, T20, T21), T19, T20, T21)
U6(f53_out1(X24), T19, T20, T21) → f46_out1(X24)
f53_in(T19, T20, T21) → U7(f58_in(T19, T20), T19, T20, T21)
U7(f58_out1(T28), T19, T20, T21) → U8(f1_in(.(T28, T21)), T19, T20, T21, T28)
U8(f1_out1, T19, T20, T21, T28) → f53_out1(T28)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
F46_IN(T19, T20, T21) → F1_IN(.(T19, .(T20, T21)))
F1_IN(.(s(s(T19)), .(T20, T21))) → F46_IN(T19, T20, T21)
f1_in(.(T6, [])) → f1_out1
f1_in(.(s(s(T19)), .(T20, T21))) → U1(f46_in(T19, T20, T21), .(s(s(T19)), .(T20, T21)))
U1(f46_out1(X24), .(s(s(T19)), .(T20, T21))) → f1_out1
f1_in(.(0, T66)) → U2(f1_in(T66), .(0, T66))
U2(f1_out1, .(0, T66)) → f1_out1
f58_in(T35, 0) → f58_out1(0)
f58_in(T40, s(T41)) → U3(f82_in(T40, T41), T40, s(T41))
U3(f82_out1(X50, X51), T40, s(T41)) → f58_out1(X51)
f89_in(T53, 0) → f89_out1(T53)
f89_in(T58, s(T59)) → U4(f89_in(T58, T59), T58, s(T59))
U4(f89_out1(X74), T58, s(T59)) → f89_out1(s(X74))
f46_in(T19, T20, T21) → U5(f1_in(.(T19, .(T20, T21))), T19, T20, T21)
U5(f1_out1, T19, T20, T21) → U6(f53_in(T19, T20, T21), T19, T20, T21)
U6(f53_out1(X24), T19, T20, T21) → f46_out1(X24)
f53_in(T19, T20, T21) → U7(f58_in(T19, T20), T19, T20, T21)
U7(f58_out1(T28), T19, T20, T21) → U8(f1_in(.(T28, T21)), T19, T20, T21, T28)
U8(f1_out1, T19, T20, T21, T28) → f53_out1(T28)
f82_in(T40, T41) → U9(f58_in(T40, T41), T40, T41)
U9(f58_out1(T44), T40, T41) → U10(f89_in(T44, T40), T40, T41, T44)
U10(f89_out1(X51), T40, T41, T44) → f82_out1(T44, X51)
F46_IN(T19, T20, T21) → F1_IN(.(T19, .(T20, T21)))
F1_IN(.(s(s(T19)), .(T20, T21))) → F46_IN(T19, T20, T21)
No rules are removed from R.
F1_IN(.(s(s(T19)), .(T20, T21))) → F46_IN(T19, T20, T21)
POL(.(x1, x2)) = x1 + x2
POL(F1_IN(x1)) = x1
POL(F46_IN(x1, x2, x3)) = x1 + x2 + x3
POL(s(x1)) = 2·x1
F46_IN(T19, T20, T21) → F1_IN(.(T19, .(T20, T21)))