(0) Obligation:

Clauses:

delete(X, tree(X, void, Right), Right).
delete(X, tree(X, Left, void), Left).
delete(X, tree(X, Left, Right), tree(Y, Left, Right1)) :- delmin(Right, Y, Right1).
delete(X, tree(Y, Left, Right), tree(Y, Left1, Right)) :- ','(less(X, Y), delete(X, Left, Left1)).
delete(X, tree(Y, Left, Right), tree(Y, Left, Right1)) :- ','(less(Y, X), delete(X, Right, Right1)).
delmin(tree(Y, void, Right), Y, Right).
delmin(tree(X, Left, X1), Y, tree(X, Left1, X2)) :- delmin(Left, Y, Left1).
less(0, s(X3)).
less(s(X), s(Y)) :- less(X, Y).

Query: delete(a,g,a)

(1) PrologToTRSTransformerProof (SOUND transformation)

Transformed Prolog program to TRS.

(2) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

f3_in(tree(T12, void, T13)) → f3_out1(T12)
f3_in(tree(T22, T23, void)) → f3_out1(T22)
f3_in(tree(T44, T45, T46)) → U1(f51_in(T46), tree(T44, T45, T46))
U1(f51_out1(T49), tree(T44, T45, T46)) → f3_out1(T44)
f3_in(tree(T110, T111, T112)) → U2(f135_in(T110, T111), tree(T110, T111, T112))
U2(f135_out1(T114), tree(T110, T111, T112)) → f3_out1(T114)
f3_in(tree(T273, T274, T275)) → U3(f230_in(T273, T275), tree(T273, T274, T275))
U3(f230_out1(T277), tree(T273, T274, T275)) → f3_out1(T277)
f51_in(tree(T63, void, T64)) → f51_out1(T63)
f51_in(tree(T77, T78, T79)) → U4(f51_in(T78), tree(T77, T78, T79))
U4(f51_out1(T83), tree(T77, T78, T79)) → f51_out1(T83)
f139_in(s(T126)) → f139_out1(0)
f139_in(s(T132)) → U5(f139_in(T132), s(T132))
U5(f139_out1(T133), s(T132)) → f139_out1(s(T133))
f140_in(T148, tree(T148, void, T149)) → f140_out1
f140_in(T158, tree(T158, T159, void)) → f140_out1
f140_in(T180, tree(T180, T181, T182)) → U6(f51_in(T182), T180, tree(T180, T181, T182))
U6(f51_out1(T185), T180, tree(T180, T181, T182)) → f140_out1
f140_in(T211, tree(T212, T213, T214)) → U7(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
U7(f191_out1, T211, tree(T212, T213, T214)) → f140_out1
f140_in(T248, tree(T249, T250, T251)) → U8(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
U8(f209_out1, T248, tree(T249, T250, T251)) → f140_out1
f193_in(0, s(T225)) → f193_out1
f193_in(s(T230), s(T231)) → U9(f193_in(T230, T231), s(T230), s(T231))
U9(f193_out1, s(T230), s(T231)) → f193_out1
f242_in(0) → f242_out1
f242_in(s(T294)) → U10(f242_in(T294), s(T294))
U10(f242_out1, s(T294)) → f242_out1
f135_in(T110, T111) → U11(f139_in(T110), T110, T111)
U11(f139_out1(T118), T110, T111) → U12(f140_in(T118, T111), T110, T111, T118)
U12(f140_out1, T110, T111, T118) → f135_out1(T118)
f191_in(T211, T212, T213) → U13(f193_in(T211, T212), T211, T212, T213)
U13(f193_out1, T211, T212, T213) → U14(f140_in(T211, T213), T211, T212, T213)
U14(f140_out1, T211, T212, T213) → f191_out1
f209_in(T249, T248, T251) → U15(f193_in(T249, T248), T249, T248, T251)
U15(f193_out1, T249, T248, T251) → U16(f140_in(T248, T251), T249, T248, T251)
U16(f140_out1, T249, T248, T251) → f209_out1
f230_in(T273, T275) → U17(f242_in(T273), T273, T275)
U17(f242_out1, T273, T275) → U18(f3_in(T275), T273, T275)
U18(f3_out1(T281), T273, T275) → f230_out1(T281)

Q is empty.

(3) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem.

(4) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F3_IN(tree(T44, T45, T46)) → U11(f51_in(T46), tree(T44, T45, T46))
F3_IN(tree(T44, T45, T46)) → F51_IN(T46)
F3_IN(tree(T110, T111, T112)) → U21(f135_in(T110, T111), tree(T110, T111, T112))
F3_IN(tree(T110, T111, T112)) → F135_IN(T110, T111)
F3_IN(tree(T273, T274, T275)) → U31(f230_in(T273, T275), tree(T273, T274, T275))
F3_IN(tree(T273, T274, T275)) → F230_IN(T273, T275)
F51_IN(tree(T77, T78, T79)) → U41(f51_in(T78), tree(T77, T78, T79))
F51_IN(tree(T77, T78, T79)) → F51_IN(T78)
F139_IN(s(T132)) → U51(f139_in(T132), s(T132))
F139_IN(s(T132)) → F139_IN(T132)
F140_IN(T180, tree(T180, T181, T182)) → U61(f51_in(T182), T180, tree(T180, T181, T182))
F140_IN(T180, tree(T180, T181, T182)) → F51_IN(T182)
F140_IN(T211, tree(T212, T213, T214)) → U71(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
F140_IN(T211, tree(T212, T213, T214)) → F191_IN(T211, T212, T213)
F140_IN(T248, tree(T249, T250, T251)) → U81(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
F140_IN(T248, tree(T249, T250, T251)) → F209_IN(T249, T248, T251)
F193_IN(s(T230), s(T231)) → U91(f193_in(T230, T231), s(T230), s(T231))
F193_IN(s(T230), s(T231)) → F193_IN(T230, T231)
F242_IN(s(T294)) → U101(f242_in(T294), s(T294))
F242_IN(s(T294)) → F242_IN(T294)
F135_IN(T110, T111) → U111(f139_in(T110), T110, T111)
F135_IN(T110, T111) → F139_IN(T110)
U111(f139_out1(T118), T110, T111) → U121(f140_in(T118, T111), T110, T111, T118)
U111(f139_out1(T118), T110, T111) → F140_IN(T118, T111)
F191_IN(T211, T212, T213) → U131(f193_in(T211, T212), T211, T212, T213)
F191_IN(T211, T212, T213) → F193_IN(T211, T212)
U131(f193_out1, T211, T212, T213) → U141(f140_in(T211, T213), T211, T212, T213)
U131(f193_out1, T211, T212, T213) → F140_IN(T211, T213)
F209_IN(T249, T248, T251) → U151(f193_in(T249, T248), T249, T248, T251)
F209_IN(T249, T248, T251) → F193_IN(T249, T248)
U151(f193_out1, T249, T248, T251) → U161(f140_in(T248, T251), T249, T248, T251)
U151(f193_out1, T249, T248, T251) → F140_IN(T248, T251)
F230_IN(T273, T275) → U171(f242_in(T273), T273, T275)
F230_IN(T273, T275) → F242_IN(T273)
U171(f242_out1, T273, T275) → U181(f3_in(T275), T273, T275)
U171(f242_out1, T273, T275) → F3_IN(T275)

The TRS R consists of the following rules:

f3_in(tree(T12, void, T13)) → f3_out1(T12)
f3_in(tree(T22, T23, void)) → f3_out1(T22)
f3_in(tree(T44, T45, T46)) → U1(f51_in(T46), tree(T44, T45, T46))
U1(f51_out1(T49), tree(T44, T45, T46)) → f3_out1(T44)
f3_in(tree(T110, T111, T112)) → U2(f135_in(T110, T111), tree(T110, T111, T112))
U2(f135_out1(T114), tree(T110, T111, T112)) → f3_out1(T114)
f3_in(tree(T273, T274, T275)) → U3(f230_in(T273, T275), tree(T273, T274, T275))
U3(f230_out1(T277), tree(T273, T274, T275)) → f3_out1(T277)
f51_in(tree(T63, void, T64)) → f51_out1(T63)
f51_in(tree(T77, T78, T79)) → U4(f51_in(T78), tree(T77, T78, T79))
U4(f51_out1(T83), tree(T77, T78, T79)) → f51_out1(T83)
f139_in(s(T126)) → f139_out1(0)
f139_in(s(T132)) → U5(f139_in(T132), s(T132))
U5(f139_out1(T133), s(T132)) → f139_out1(s(T133))
f140_in(T148, tree(T148, void, T149)) → f140_out1
f140_in(T158, tree(T158, T159, void)) → f140_out1
f140_in(T180, tree(T180, T181, T182)) → U6(f51_in(T182), T180, tree(T180, T181, T182))
U6(f51_out1(T185), T180, tree(T180, T181, T182)) → f140_out1
f140_in(T211, tree(T212, T213, T214)) → U7(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
U7(f191_out1, T211, tree(T212, T213, T214)) → f140_out1
f140_in(T248, tree(T249, T250, T251)) → U8(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
U8(f209_out1, T248, tree(T249, T250, T251)) → f140_out1
f193_in(0, s(T225)) → f193_out1
f193_in(s(T230), s(T231)) → U9(f193_in(T230, T231), s(T230), s(T231))
U9(f193_out1, s(T230), s(T231)) → f193_out1
f242_in(0) → f242_out1
f242_in(s(T294)) → U10(f242_in(T294), s(T294))
U10(f242_out1, s(T294)) → f242_out1
f135_in(T110, T111) → U11(f139_in(T110), T110, T111)
U11(f139_out1(T118), T110, T111) → U12(f140_in(T118, T111), T110, T111, T118)
U12(f140_out1, T110, T111, T118) → f135_out1(T118)
f191_in(T211, T212, T213) → U13(f193_in(T211, T212), T211, T212, T213)
U13(f193_out1, T211, T212, T213) → U14(f140_in(T211, T213), T211, T212, T213)
U14(f140_out1, T211, T212, T213) → f191_out1
f209_in(T249, T248, T251) → U15(f193_in(T249, T248), T249, T248, T251)
U15(f193_out1, T249, T248, T251) → U16(f140_in(T248, T251), T249, T248, T251)
U16(f140_out1, T249, T248, T251) → f209_out1
f230_in(T273, T275) → U17(f242_in(T273), T273, T275)
U17(f242_out1, T273, T275) → U18(f3_in(T275), T273, T275)
U18(f3_out1(T281), T273, T275) → f230_out1(T281)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(5) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 6 SCCs with 23 less nodes.

(6) Complex Obligation (AND)

(7) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F242_IN(s(T294)) → F242_IN(T294)

The TRS R consists of the following rules:

f3_in(tree(T12, void, T13)) → f3_out1(T12)
f3_in(tree(T22, T23, void)) → f3_out1(T22)
f3_in(tree(T44, T45, T46)) → U1(f51_in(T46), tree(T44, T45, T46))
U1(f51_out1(T49), tree(T44, T45, T46)) → f3_out1(T44)
f3_in(tree(T110, T111, T112)) → U2(f135_in(T110, T111), tree(T110, T111, T112))
U2(f135_out1(T114), tree(T110, T111, T112)) → f3_out1(T114)
f3_in(tree(T273, T274, T275)) → U3(f230_in(T273, T275), tree(T273, T274, T275))
U3(f230_out1(T277), tree(T273, T274, T275)) → f3_out1(T277)
f51_in(tree(T63, void, T64)) → f51_out1(T63)
f51_in(tree(T77, T78, T79)) → U4(f51_in(T78), tree(T77, T78, T79))
U4(f51_out1(T83), tree(T77, T78, T79)) → f51_out1(T83)
f139_in(s(T126)) → f139_out1(0)
f139_in(s(T132)) → U5(f139_in(T132), s(T132))
U5(f139_out1(T133), s(T132)) → f139_out1(s(T133))
f140_in(T148, tree(T148, void, T149)) → f140_out1
f140_in(T158, tree(T158, T159, void)) → f140_out1
f140_in(T180, tree(T180, T181, T182)) → U6(f51_in(T182), T180, tree(T180, T181, T182))
U6(f51_out1(T185), T180, tree(T180, T181, T182)) → f140_out1
f140_in(T211, tree(T212, T213, T214)) → U7(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
U7(f191_out1, T211, tree(T212, T213, T214)) → f140_out1
f140_in(T248, tree(T249, T250, T251)) → U8(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
U8(f209_out1, T248, tree(T249, T250, T251)) → f140_out1
f193_in(0, s(T225)) → f193_out1
f193_in(s(T230), s(T231)) → U9(f193_in(T230, T231), s(T230), s(T231))
U9(f193_out1, s(T230), s(T231)) → f193_out1
f242_in(0) → f242_out1
f242_in(s(T294)) → U10(f242_in(T294), s(T294))
U10(f242_out1, s(T294)) → f242_out1
f135_in(T110, T111) → U11(f139_in(T110), T110, T111)
U11(f139_out1(T118), T110, T111) → U12(f140_in(T118, T111), T110, T111, T118)
U12(f140_out1, T110, T111, T118) → f135_out1(T118)
f191_in(T211, T212, T213) → U13(f193_in(T211, T212), T211, T212, T213)
U13(f193_out1, T211, T212, T213) → U14(f140_in(T211, T213), T211, T212, T213)
U14(f140_out1, T211, T212, T213) → f191_out1
f209_in(T249, T248, T251) → U15(f193_in(T249, T248), T249, T248, T251)
U15(f193_out1, T249, T248, T251) → U16(f140_in(T248, T251), T249, T248, T251)
U16(f140_out1, T249, T248, T251) → f209_out1
f230_in(T273, T275) → U17(f242_in(T273), T273, T275)
U17(f242_out1, T273, T275) → U18(f3_in(T275), T273, T275)
U18(f3_out1(T281), T273, T275) → f230_out1(T281)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(8) UsableRulesProof (EQUIVALENT transformation)

We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R.

(9) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F242_IN(s(T294)) → F242_IN(T294)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(10) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • F242_IN(s(T294)) → F242_IN(T294)
    The graph contains the following edges 1 > 1

(11) YES

(12) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F193_IN(s(T230), s(T231)) → F193_IN(T230, T231)

The TRS R consists of the following rules:

f3_in(tree(T12, void, T13)) → f3_out1(T12)
f3_in(tree(T22, T23, void)) → f3_out1(T22)
f3_in(tree(T44, T45, T46)) → U1(f51_in(T46), tree(T44, T45, T46))
U1(f51_out1(T49), tree(T44, T45, T46)) → f3_out1(T44)
f3_in(tree(T110, T111, T112)) → U2(f135_in(T110, T111), tree(T110, T111, T112))
U2(f135_out1(T114), tree(T110, T111, T112)) → f3_out1(T114)
f3_in(tree(T273, T274, T275)) → U3(f230_in(T273, T275), tree(T273, T274, T275))
U3(f230_out1(T277), tree(T273, T274, T275)) → f3_out1(T277)
f51_in(tree(T63, void, T64)) → f51_out1(T63)
f51_in(tree(T77, T78, T79)) → U4(f51_in(T78), tree(T77, T78, T79))
U4(f51_out1(T83), tree(T77, T78, T79)) → f51_out1(T83)
f139_in(s(T126)) → f139_out1(0)
f139_in(s(T132)) → U5(f139_in(T132), s(T132))
U5(f139_out1(T133), s(T132)) → f139_out1(s(T133))
f140_in(T148, tree(T148, void, T149)) → f140_out1
f140_in(T158, tree(T158, T159, void)) → f140_out1
f140_in(T180, tree(T180, T181, T182)) → U6(f51_in(T182), T180, tree(T180, T181, T182))
U6(f51_out1(T185), T180, tree(T180, T181, T182)) → f140_out1
f140_in(T211, tree(T212, T213, T214)) → U7(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
U7(f191_out1, T211, tree(T212, T213, T214)) → f140_out1
f140_in(T248, tree(T249, T250, T251)) → U8(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
U8(f209_out1, T248, tree(T249, T250, T251)) → f140_out1
f193_in(0, s(T225)) → f193_out1
f193_in(s(T230), s(T231)) → U9(f193_in(T230, T231), s(T230), s(T231))
U9(f193_out1, s(T230), s(T231)) → f193_out1
f242_in(0) → f242_out1
f242_in(s(T294)) → U10(f242_in(T294), s(T294))
U10(f242_out1, s(T294)) → f242_out1
f135_in(T110, T111) → U11(f139_in(T110), T110, T111)
U11(f139_out1(T118), T110, T111) → U12(f140_in(T118, T111), T110, T111, T118)
U12(f140_out1, T110, T111, T118) → f135_out1(T118)
f191_in(T211, T212, T213) → U13(f193_in(T211, T212), T211, T212, T213)
U13(f193_out1, T211, T212, T213) → U14(f140_in(T211, T213), T211, T212, T213)
U14(f140_out1, T211, T212, T213) → f191_out1
f209_in(T249, T248, T251) → U15(f193_in(T249, T248), T249, T248, T251)
U15(f193_out1, T249, T248, T251) → U16(f140_in(T248, T251), T249, T248, T251)
U16(f140_out1, T249, T248, T251) → f209_out1
f230_in(T273, T275) → U17(f242_in(T273), T273, T275)
U17(f242_out1, T273, T275) → U18(f3_in(T275), T273, T275)
U18(f3_out1(T281), T273, T275) → f230_out1(T281)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(13) UsableRulesProof (EQUIVALENT transformation)

We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R.

(14) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F193_IN(s(T230), s(T231)) → F193_IN(T230, T231)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(15) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • F193_IN(s(T230), s(T231)) → F193_IN(T230, T231)
    The graph contains the following edges 1 > 1, 2 > 2

(16) YES

(17) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F139_IN(s(T132)) → F139_IN(T132)

The TRS R consists of the following rules:

f3_in(tree(T12, void, T13)) → f3_out1(T12)
f3_in(tree(T22, T23, void)) → f3_out1(T22)
f3_in(tree(T44, T45, T46)) → U1(f51_in(T46), tree(T44, T45, T46))
U1(f51_out1(T49), tree(T44, T45, T46)) → f3_out1(T44)
f3_in(tree(T110, T111, T112)) → U2(f135_in(T110, T111), tree(T110, T111, T112))
U2(f135_out1(T114), tree(T110, T111, T112)) → f3_out1(T114)
f3_in(tree(T273, T274, T275)) → U3(f230_in(T273, T275), tree(T273, T274, T275))
U3(f230_out1(T277), tree(T273, T274, T275)) → f3_out1(T277)
f51_in(tree(T63, void, T64)) → f51_out1(T63)
f51_in(tree(T77, T78, T79)) → U4(f51_in(T78), tree(T77, T78, T79))
U4(f51_out1(T83), tree(T77, T78, T79)) → f51_out1(T83)
f139_in(s(T126)) → f139_out1(0)
f139_in(s(T132)) → U5(f139_in(T132), s(T132))
U5(f139_out1(T133), s(T132)) → f139_out1(s(T133))
f140_in(T148, tree(T148, void, T149)) → f140_out1
f140_in(T158, tree(T158, T159, void)) → f140_out1
f140_in(T180, tree(T180, T181, T182)) → U6(f51_in(T182), T180, tree(T180, T181, T182))
U6(f51_out1(T185), T180, tree(T180, T181, T182)) → f140_out1
f140_in(T211, tree(T212, T213, T214)) → U7(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
U7(f191_out1, T211, tree(T212, T213, T214)) → f140_out1
f140_in(T248, tree(T249, T250, T251)) → U8(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
U8(f209_out1, T248, tree(T249, T250, T251)) → f140_out1
f193_in(0, s(T225)) → f193_out1
f193_in(s(T230), s(T231)) → U9(f193_in(T230, T231), s(T230), s(T231))
U9(f193_out1, s(T230), s(T231)) → f193_out1
f242_in(0) → f242_out1
f242_in(s(T294)) → U10(f242_in(T294), s(T294))
U10(f242_out1, s(T294)) → f242_out1
f135_in(T110, T111) → U11(f139_in(T110), T110, T111)
U11(f139_out1(T118), T110, T111) → U12(f140_in(T118, T111), T110, T111, T118)
U12(f140_out1, T110, T111, T118) → f135_out1(T118)
f191_in(T211, T212, T213) → U13(f193_in(T211, T212), T211, T212, T213)
U13(f193_out1, T211, T212, T213) → U14(f140_in(T211, T213), T211, T212, T213)
U14(f140_out1, T211, T212, T213) → f191_out1
f209_in(T249, T248, T251) → U15(f193_in(T249, T248), T249, T248, T251)
U15(f193_out1, T249, T248, T251) → U16(f140_in(T248, T251), T249, T248, T251)
U16(f140_out1, T249, T248, T251) → f209_out1
f230_in(T273, T275) → U17(f242_in(T273), T273, T275)
U17(f242_out1, T273, T275) → U18(f3_in(T275), T273, T275)
U18(f3_out1(T281), T273, T275) → f230_out1(T281)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(18) UsableRulesProof (EQUIVALENT transformation)

We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R.

(19) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F139_IN(s(T132)) → F139_IN(T132)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(20) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • F139_IN(s(T132)) → F139_IN(T132)
    The graph contains the following edges 1 > 1

(21) YES

(22) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F51_IN(tree(T77, T78, T79)) → F51_IN(T78)

The TRS R consists of the following rules:

f3_in(tree(T12, void, T13)) → f3_out1(T12)
f3_in(tree(T22, T23, void)) → f3_out1(T22)
f3_in(tree(T44, T45, T46)) → U1(f51_in(T46), tree(T44, T45, T46))
U1(f51_out1(T49), tree(T44, T45, T46)) → f3_out1(T44)
f3_in(tree(T110, T111, T112)) → U2(f135_in(T110, T111), tree(T110, T111, T112))
U2(f135_out1(T114), tree(T110, T111, T112)) → f3_out1(T114)
f3_in(tree(T273, T274, T275)) → U3(f230_in(T273, T275), tree(T273, T274, T275))
U3(f230_out1(T277), tree(T273, T274, T275)) → f3_out1(T277)
f51_in(tree(T63, void, T64)) → f51_out1(T63)
f51_in(tree(T77, T78, T79)) → U4(f51_in(T78), tree(T77, T78, T79))
U4(f51_out1(T83), tree(T77, T78, T79)) → f51_out1(T83)
f139_in(s(T126)) → f139_out1(0)
f139_in(s(T132)) → U5(f139_in(T132), s(T132))
U5(f139_out1(T133), s(T132)) → f139_out1(s(T133))
f140_in(T148, tree(T148, void, T149)) → f140_out1
f140_in(T158, tree(T158, T159, void)) → f140_out1
f140_in(T180, tree(T180, T181, T182)) → U6(f51_in(T182), T180, tree(T180, T181, T182))
U6(f51_out1(T185), T180, tree(T180, T181, T182)) → f140_out1
f140_in(T211, tree(T212, T213, T214)) → U7(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
U7(f191_out1, T211, tree(T212, T213, T214)) → f140_out1
f140_in(T248, tree(T249, T250, T251)) → U8(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
U8(f209_out1, T248, tree(T249, T250, T251)) → f140_out1
f193_in(0, s(T225)) → f193_out1
f193_in(s(T230), s(T231)) → U9(f193_in(T230, T231), s(T230), s(T231))
U9(f193_out1, s(T230), s(T231)) → f193_out1
f242_in(0) → f242_out1
f242_in(s(T294)) → U10(f242_in(T294), s(T294))
U10(f242_out1, s(T294)) → f242_out1
f135_in(T110, T111) → U11(f139_in(T110), T110, T111)
U11(f139_out1(T118), T110, T111) → U12(f140_in(T118, T111), T110, T111, T118)
U12(f140_out1, T110, T111, T118) → f135_out1(T118)
f191_in(T211, T212, T213) → U13(f193_in(T211, T212), T211, T212, T213)
U13(f193_out1, T211, T212, T213) → U14(f140_in(T211, T213), T211, T212, T213)
U14(f140_out1, T211, T212, T213) → f191_out1
f209_in(T249, T248, T251) → U15(f193_in(T249, T248), T249, T248, T251)
U15(f193_out1, T249, T248, T251) → U16(f140_in(T248, T251), T249, T248, T251)
U16(f140_out1, T249, T248, T251) → f209_out1
f230_in(T273, T275) → U17(f242_in(T273), T273, T275)
U17(f242_out1, T273, T275) → U18(f3_in(T275), T273, T275)
U18(f3_out1(T281), T273, T275) → f230_out1(T281)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(23) UsableRulesProof (EQUIVALENT transformation)

We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R.

(24) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F51_IN(tree(T77, T78, T79)) → F51_IN(T78)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(25) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • F51_IN(tree(T77, T78, T79)) → F51_IN(T78)
    The graph contains the following edges 1 > 1

(26) YES

(27) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F140_IN(T211, tree(T212, T213, T214)) → F191_IN(T211, T212, T213)
F191_IN(T211, T212, T213) → U131(f193_in(T211, T212), T211, T212, T213)
U131(f193_out1, T211, T212, T213) → F140_IN(T211, T213)
F140_IN(T248, tree(T249, T250, T251)) → F209_IN(T249, T248, T251)
F209_IN(T249, T248, T251) → U151(f193_in(T249, T248), T249, T248, T251)
U151(f193_out1, T249, T248, T251) → F140_IN(T248, T251)

The TRS R consists of the following rules:

f3_in(tree(T12, void, T13)) → f3_out1(T12)
f3_in(tree(T22, T23, void)) → f3_out1(T22)
f3_in(tree(T44, T45, T46)) → U1(f51_in(T46), tree(T44, T45, T46))
U1(f51_out1(T49), tree(T44, T45, T46)) → f3_out1(T44)
f3_in(tree(T110, T111, T112)) → U2(f135_in(T110, T111), tree(T110, T111, T112))
U2(f135_out1(T114), tree(T110, T111, T112)) → f3_out1(T114)
f3_in(tree(T273, T274, T275)) → U3(f230_in(T273, T275), tree(T273, T274, T275))
U3(f230_out1(T277), tree(T273, T274, T275)) → f3_out1(T277)
f51_in(tree(T63, void, T64)) → f51_out1(T63)
f51_in(tree(T77, T78, T79)) → U4(f51_in(T78), tree(T77, T78, T79))
U4(f51_out1(T83), tree(T77, T78, T79)) → f51_out1(T83)
f139_in(s(T126)) → f139_out1(0)
f139_in(s(T132)) → U5(f139_in(T132), s(T132))
U5(f139_out1(T133), s(T132)) → f139_out1(s(T133))
f140_in(T148, tree(T148, void, T149)) → f140_out1
f140_in(T158, tree(T158, T159, void)) → f140_out1
f140_in(T180, tree(T180, T181, T182)) → U6(f51_in(T182), T180, tree(T180, T181, T182))
U6(f51_out1(T185), T180, tree(T180, T181, T182)) → f140_out1
f140_in(T211, tree(T212, T213, T214)) → U7(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
U7(f191_out1, T211, tree(T212, T213, T214)) → f140_out1
f140_in(T248, tree(T249, T250, T251)) → U8(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
U8(f209_out1, T248, tree(T249, T250, T251)) → f140_out1
f193_in(0, s(T225)) → f193_out1
f193_in(s(T230), s(T231)) → U9(f193_in(T230, T231), s(T230), s(T231))
U9(f193_out1, s(T230), s(T231)) → f193_out1
f242_in(0) → f242_out1
f242_in(s(T294)) → U10(f242_in(T294), s(T294))
U10(f242_out1, s(T294)) → f242_out1
f135_in(T110, T111) → U11(f139_in(T110), T110, T111)
U11(f139_out1(T118), T110, T111) → U12(f140_in(T118, T111), T110, T111, T118)
U12(f140_out1, T110, T111, T118) → f135_out1(T118)
f191_in(T211, T212, T213) → U13(f193_in(T211, T212), T211, T212, T213)
U13(f193_out1, T211, T212, T213) → U14(f140_in(T211, T213), T211, T212, T213)
U14(f140_out1, T211, T212, T213) → f191_out1
f209_in(T249, T248, T251) → U15(f193_in(T249, T248), T249, T248, T251)
U15(f193_out1, T249, T248, T251) → U16(f140_in(T248, T251), T249, T248, T251)
U16(f140_out1, T249, T248, T251) → f209_out1
f230_in(T273, T275) → U17(f242_in(T273), T273, T275)
U17(f242_out1, T273, T275) → U18(f3_in(T275), T273, T275)
U18(f3_out1(T281), T273, T275) → f230_out1(T281)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(28) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • F191_IN(T211, T212, T213) → U131(f193_in(T211, T212), T211, T212, T213)
    The graph contains the following edges 1 >= 2, 2 >= 3, 3 >= 4

  • U131(f193_out1, T211, T212, T213) → F140_IN(T211, T213)
    The graph contains the following edges 2 >= 1, 4 >= 2

  • U151(f193_out1, T249, T248, T251) → F140_IN(T248, T251)
    The graph contains the following edges 3 >= 1, 4 >= 2

  • F140_IN(T211, tree(T212, T213, T214)) → F191_IN(T211, T212, T213)
    The graph contains the following edges 1 >= 1, 2 > 2, 2 > 3

  • F140_IN(T248, tree(T249, T250, T251)) → F209_IN(T249, T248, T251)
    The graph contains the following edges 2 > 1, 1 >= 2, 2 > 3

  • F209_IN(T249, T248, T251) → U151(f193_in(T249, T248), T249, T248, T251)
    The graph contains the following edges 1 >= 2, 2 >= 3, 3 >= 4

(29) YES

(30) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F3_IN(tree(T273, T274, T275)) → F230_IN(T273, T275)
F230_IN(T273, T275) → U171(f242_in(T273), T273, T275)
U171(f242_out1, T273, T275) → F3_IN(T275)

The TRS R consists of the following rules:

f3_in(tree(T12, void, T13)) → f3_out1(T12)
f3_in(tree(T22, T23, void)) → f3_out1(T22)
f3_in(tree(T44, T45, T46)) → U1(f51_in(T46), tree(T44, T45, T46))
U1(f51_out1(T49), tree(T44, T45, T46)) → f3_out1(T44)
f3_in(tree(T110, T111, T112)) → U2(f135_in(T110, T111), tree(T110, T111, T112))
U2(f135_out1(T114), tree(T110, T111, T112)) → f3_out1(T114)
f3_in(tree(T273, T274, T275)) → U3(f230_in(T273, T275), tree(T273, T274, T275))
U3(f230_out1(T277), tree(T273, T274, T275)) → f3_out1(T277)
f51_in(tree(T63, void, T64)) → f51_out1(T63)
f51_in(tree(T77, T78, T79)) → U4(f51_in(T78), tree(T77, T78, T79))
U4(f51_out1(T83), tree(T77, T78, T79)) → f51_out1(T83)
f139_in(s(T126)) → f139_out1(0)
f139_in(s(T132)) → U5(f139_in(T132), s(T132))
U5(f139_out1(T133), s(T132)) → f139_out1(s(T133))
f140_in(T148, tree(T148, void, T149)) → f140_out1
f140_in(T158, tree(T158, T159, void)) → f140_out1
f140_in(T180, tree(T180, T181, T182)) → U6(f51_in(T182), T180, tree(T180, T181, T182))
U6(f51_out1(T185), T180, tree(T180, T181, T182)) → f140_out1
f140_in(T211, tree(T212, T213, T214)) → U7(f191_in(T211, T212, T213), T211, tree(T212, T213, T214))
U7(f191_out1, T211, tree(T212, T213, T214)) → f140_out1
f140_in(T248, tree(T249, T250, T251)) → U8(f209_in(T249, T248, T251), T248, tree(T249, T250, T251))
U8(f209_out1, T248, tree(T249, T250, T251)) → f140_out1
f193_in(0, s(T225)) → f193_out1
f193_in(s(T230), s(T231)) → U9(f193_in(T230, T231), s(T230), s(T231))
U9(f193_out1, s(T230), s(T231)) → f193_out1
f242_in(0) → f242_out1
f242_in(s(T294)) → U10(f242_in(T294), s(T294))
U10(f242_out1, s(T294)) → f242_out1
f135_in(T110, T111) → U11(f139_in(T110), T110, T111)
U11(f139_out1(T118), T110, T111) → U12(f140_in(T118, T111), T110, T111, T118)
U12(f140_out1, T110, T111, T118) → f135_out1(T118)
f191_in(T211, T212, T213) → U13(f193_in(T211, T212), T211, T212, T213)
U13(f193_out1, T211, T212, T213) → U14(f140_in(T211, T213), T211, T212, T213)
U14(f140_out1, T211, T212, T213) → f191_out1
f209_in(T249, T248, T251) → U15(f193_in(T249, T248), T249, T248, T251)
U15(f193_out1, T249, T248, T251) → U16(f140_in(T248, T251), T249, T248, T251)
U16(f140_out1, T249, T248, T251) → f209_out1
f230_in(T273, T275) → U17(f242_in(T273), T273, T275)
U17(f242_out1, T273, T275) → U18(f3_in(T275), T273, T275)
U18(f3_out1(T281), T273, T275) → f230_out1(T281)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(31) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • F230_IN(T273, T275) → U171(f242_in(T273), T273, T275)
    The graph contains the following edges 1 >= 2, 2 >= 3

  • U171(f242_out1, T273, T275) → F3_IN(T275)
    The graph contains the following edges 3 >= 1

  • F3_IN(tree(T273, T274, T275)) → F230_IN(T273, T275)
    The graph contains the following edges 1 > 1, 1 > 2

(32) YES