0 Prolog
↳1 PrologToTRSTransformerProof (⇒, 109 ms)
↳2 QTRS
↳3 DependencyPairsProof (⇔, 0 ms)
↳4 QDP
↳5 DependencyGraphProof (⇔, 0 ms)
↳6 QDP
↳7 QDPOrderProof (⇔, 284 ms)
↳8 QDP
↳9 DependencyGraphProof (⇔, 0 ms)
↳10 QDP
↳11 UsableRulesProof (⇔, 0 ms)
↳12 QDP
↳13 QDPSizeChangeProof (⇔, 0 ms)
↳14 YES
f1_in([]) → f1_out1
f1_in(.(.(T27, T28), T29)) → U1(f37_in(T29, T27, T28), .(.(T27, T28), T29))
U1(f37_out1, .(.(T27, T28), T29)) → f1_out1
f1_in(.(T89, T90)) → U2(f1_in(T90), .(T89, T90))
U2(f1_out1, .(T89, T90)) → f1_out1
f45_in([]) → f45_out1
f45_in(.(.(T59, T60), T61)) → U3(f87_in(T61, T59, T60), .(.(T59, T60), T61))
U3(f87_out1, .(.(T59, T60), T61)) → f45_out1
f45_in(.(T75, T76)) → U4(f45_in(T76), .(T75, T76))
U4(f45_out1, .(T75, T76)) → f45_out1
f37_in(T29, T27, T28) → U5(f45_in(T29), T29, T27, T28)
U5(f45_out1, T29, T27, T28) → U6(f1_in(.(T27, T28)), T29, T27, T28)
U6(f1_out1, T29, T27, T28) → f37_out1
f87_in(T61, T59, T60) → U7(f45_in(T61), T61, T59, T60)
U7(f45_out1, T61, T59, T60) → U8(f1_in(.(T59, T60)), T61, T59, T60)
U8(f1_out1, T61, T59, T60) → f87_out1
F1_IN(.(.(T27, T28), T29)) → U11(f37_in(T29, T27, T28), .(.(T27, T28), T29))
F1_IN(.(.(T27, T28), T29)) → F37_IN(T29, T27, T28)
F1_IN(.(T89, T90)) → U21(f1_in(T90), .(T89, T90))
F1_IN(.(T89, T90)) → F1_IN(T90)
F45_IN(.(.(T59, T60), T61)) → U31(f87_in(T61, T59, T60), .(.(T59, T60), T61))
F45_IN(.(.(T59, T60), T61)) → F87_IN(T61, T59, T60)
F45_IN(.(T75, T76)) → U41(f45_in(T76), .(T75, T76))
F45_IN(.(T75, T76)) → F45_IN(T76)
F37_IN(T29, T27, T28) → U51(f45_in(T29), T29, T27, T28)
F37_IN(T29, T27, T28) → F45_IN(T29)
U51(f45_out1, T29, T27, T28) → U61(f1_in(.(T27, T28)), T29, T27, T28)
U51(f45_out1, T29, T27, T28) → F1_IN(.(T27, T28))
F87_IN(T61, T59, T60) → U71(f45_in(T61), T61, T59, T60)
F87_IN(T61, T59, T60) → F45_IN(T61)
U71(f45_out1, T61, T59, T60) → U81(f1_in(.(T59, T60)), T61, T59, T60)
U71(f45_out1, T61, T59, T60) → F1_IN(.(T59, T60))
f1_in([]) → f1_out1
f1_in(.(.(T27, T28), T29)) → U1(f37_in(T29, T27, T28), .(.(T27, T28), T29))
U1(f37_out1, .(.(T27, T28), T29)) → f1_out1
f1_in(.(T89, T90)) → U2(f1_in(T90), .(T89, T90))
U2(f1_out1, .(T89, T90)) → f1_out1
f45_in([]) → f45_out1
f45_in(.(.(T59, T60), T61)) → U3(f87_in(T61, T59, T60), .(.(T59, T60), T61))
U3(f87_out1, .(.(T59, T60), T61)) → f45_out1
f45_in(.(T75, T76)) → U4(f45_in(T76), .(T75, T76))
U4(f45_out1, .(T75, T76)) → f45_out1
f37_in(T29, T27, T28) → U5(f45_in(T29), T29, T27, T28)
U5(f45_out1, T29, T27, T28) → U6(f1_in(.(T27, T28)), T29, T27, T28)
U6(f1_out1, T29, T27, T28) → f37_out1
f87_in(T61, T59, T60) → U7(f45_in(T61), T61, T59, T60)
U7(f45_out1, T61, T59, T60) → U8(f1_in(.(T59, T60)), T61, T59, T60)
U8(f1_out1, T61, T59, T60) → f87_out1
F1_IN(.(.(T27, T28), T29)) → F37_IN(T29, T27, T28)
F37_IN(T29, T27, T28) → U51(f45_in(T29), T29, T27, T28)
U51(f45_out1, T29, T27, T28) → F1_IN(.(T27, T28))
F1_IN(.(T89, T90)) → F1_IN(T90)
F37_IN(T29, T27, T28) → F45_IN(T29)
F45_IN(.(.(T59, T60), T61)) → F87_IN(T61, T59, T60)
F87_IN(T61, T59, T60) → U71(f45_in(T61), T61, T59, T60)
U71(f45_out1, T61, T59, T60) → F1_IN(.(T59, T60))
F87_IN(T61, T59, T60) → F45_IN(T61)
F45_IN(.(T75, T76)) → F45_IN(T76)
f1_in([]) → f1_out1
f1_in(.(.(T27, T28), T29)) → U1(f37_in(T29, T27, T28), .(.(T27, T28), T29))
U1(f37_out1, .(.(T27, T28), T29)) → f1_out1
f1_in(.(T89, T90)) → U2(f1_in(T90), .(T89, T90))
U2(f1_out1, .(T89, T90)) → f1_out1
f45_in([]) → f45_out1
f45_in(.(.(T59, T60), T61)) → U3(f87_in(T61, T59, T60), .(.(T59, T60), T61))
U3(f87_out1, .(.(T59, T60), T61)) → f45_out1
f45_in(.(T75, T76)) → U4(f45_in(T76), .(T75, T76))
U4(f45_out1, .(T75, T76)) → f45_out1
f37_in(T29, T27, T28) → U5(f45_in(T29), T29, T27, T28)
U5(f45_out1, T29, T27, T28) → U6(f1_in(.(T27, T28)), T29, T27, T28)
U6(f1_out1, T29, T27, T28) → f37_out1
f87_in(T61, T59, T60) → U7(f45_in(T61), T61, T59, T60)
U7(f45_out1, T61, T59, T60) → U8(f1_in(.(T59, T60)), T61, T59, T60)
U8(f1_out1, T61, T59, T60) → f87_out1
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U51(f45_out1, T29, T27, T28) → F1_IN(.(T27, T28))
F37_IN(T29, T27, T28) → F45_IN(T29)
F45_IN(.(.(T59, T60), T61)) → F87_IN(T61, T59, T60)
F87_IN(T61, T59, T60) → U71(f45_in(T61), T61, T59, T60)
U71(f45_out1, T61, T59, T60) → F1_IN(.(T59, T60))
F87_IN(T61, T59, T60) → F45_IN(T61)
F45_IN(.(T75, T76)) → F45_IN(T76)
POL( U51(x1, ..., x4) ) = x2 + 2x3 + 2x4 + 2
POL( U71(x1, ..., x4) ) = 2x2 + 2x3 + 2x4 + 1
POL( f45_in(x1) ) = 0
POL( [] ) = 1
POL( f45_out1 ) = 2
POL( .(x1, x2) ) = x1 + x2 + 1
POL( U3(x1, x2) ) = max{0, -2}
POL( f87_in(x1, ..., x3) ) = x2 + 2x3 + 1
POL( U4(x1, x2) ) = x2 + 2
POL( f1_in(x1) ) = max{0, -2}
POL( U1(x1, x2) ) = max{0, -2}
POL( f37_in(x1, ..., x3) ) = x1 + 2x3 + 1
POL( f37_out1 ) = 0
POL( f1_out1 ) = 0
POL( U5(x1, ..., x4) ) = max{0, x1 + 2x2 + x3 + x4 - 1}
POL( f87_out1 ) = 1
POL( U7(x1, ..., x4) ) = max{0, x2 - 2}
POL( U8(x1, ..., x4) ) = max{0, 2x1 + x2 + x3 + 2x4 - 2}
POL( U2(x1, x2) ) = max{0, -2}
POL( U6(x1, ..., x4) ) = max{0, 2x2 + 2x3 + 2x4 - 2}
POL( F1_IN(x1) ) = max{0, 2x1 - 2}
POL( F37_IN(x1, ..., x3) ) = 2x1 + 2x2 + 2x3 + 2
POL( F45_IN(x1) ) = 2x1
POL( F87_IN(x1, ..., x3) ) = 2x1 + 2x2 + 2x3 + 2
F1_IN(.(.(T27, T28), T29)) → F37_IN(T29, T27, T28)
F37_IN(T29, T27, T28) → U51(f45_in(T29), T29, T27, T28)
F1_IN(.(T89, T90)) → F1_IN(T90)
f1_in([]) → f1_out1
f1_in(.(.(T27, T28), T29)) → U1(f37_in(T29, T27, T28), .(.(T27, T28), T29))
U1(f37_out1, .(.(T27, T28), T29)) → f1_out1
f1_in(.(T89, T90)) → U2(f1_in(T90), .(T89, T90))
U2(f1_out1, .(T89, T90)) → f1_out1
f45_in([]) → f45_out1
f45_in(.(.(T59, T60), T61)) → U3(f87_in(T61, T59, T60), .(.(T59, T60), T61))
U3(f87_out1, .(.(T59, T60), T61)) → f45_out1
f45_in(.(T75, T76)) → U4(f45_in(T76), .(T75, T76))
U4(f45_out1, .(T75, T76)) → f45_out1
f37_in(T29, T27, T28) → U5(f45_in(T29), T29, T27, T28)
U5(f45_out1, T29, T27, T28) → U6(f1_in(.(T27, T28)), T29, T27, T28)
U6(f1_out1, T29, T27, T28) → f37_out1
f87_in(T61, T59, T60) → U7(f45_in(T61), T61, T59, T60)
U7(f45_out1, T61, T59, T60) → U8(f1_in(.(T59, T60)), T61, T59, T60)
U8(f1_out1, T61, T59, T60) → f87_out1
F1_IN(.(T89, T90)) → F1_IN(T90)
f1_in([]) → f1_out1
f1_in(.(.(T27, T28), T29)) → U1(f37_in(T29, T27, T28), .(.(T27, T28), T29))
U1(f37_out1, .(.(T27, T28), T29)) → f1_out1
f1_in(.(T89, T90)) → U2(f1_in(T90), .(T89, T90))
U2(f1_out1, .(T89, T90)) → f1_out1
f45_in([]) → f45_out1
f45_in(.(.(T59, T60), T61)) → U3(f87_in(T61, T59, T60), .(.(T59, T60), T61))
U3(f87_out1, .(.(T59, T60), T61)) → f45_out1
f45_in(.(T75, T76)) → U4(f45_in(T76), .(T75, T76))
U4(f45_out1, .(T75, T76)) → f45_out1
f37_in(T29, T27, T28) → U5(f45_in(T29), T29, T27, T28)
U5(f45_out1, T29, T27, T28) → U6(f1_in(.(T27, T28)), T29, T27, T28)
U6(f1_out1, T29, T27, T28) → f37_out1
f87_in(T61, T59, T60) → U7(f45_in(T61), T61, T59, T60)
U7(f45_out1, T61, T59, T60) → U8(f1_in(.(T59, T60)), T61, T59, T60)
U8(f1_out1, T61, T59, T60) → f87_out1
F1_IN(.(T89, T90)) → F1_IN(T90)
From the DPs we obtained the following set of size-change graphs: