(0) Obligation:

Clauses:

insert(X, void, tree(X, void, void)).
insert(X, tree(X, Left, Right), tree(X, Left, Right)).
insert(X, tree(Y, Left, Right), tree(Y, Left1, Right)) :- ','(less(X, Y), insert(X, Left, Left1)).
insert(X, tree(Y, Left, Right), tree(Y, Left, Right1)) :- ','(less(Y, X), insert(X, Right, Right1)).
less(0, s(X1)).
less(s(X), s(Y)) :- less(X, Y).

Query: insert(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(void) → f3_out1
f3_in(tree(T21, T22, T23)) → f3_out1
f3_in(tree(T45, T46, T47)) → U1(f38_in(T45, T46), tree(T45, T46, T47))
U1(f38_out1(T49, T50), tree(T45, T46, T47)) → f3_out1
f3_in(tree(T171, T172, T173)) → U2(f205_in(T171, T173), tree(T171, T172, T173))
U2(f205_out1, tree(T171, T172, T173)) → f3_out1
f59_in(s(T61)) → f59_out1(0)
f59_in(s(T67)) → U3(f59_in(T67), s(T67))
U3(f59_out1(T68), s(T67)) → f59_out1(s(T68))
f60_in(T77, void) → f60_out1(tree(T77, void, void))
f60_in(T90, tree(T90, T91, T92)) → f60_out1(tree(T90, T91, T92))
f60_in(T113, tree(T114, T115, T116)) → U4(f137_in(T113, T114, T115), T113, tree(T114, T115, T116))
U4(f137_out1(T118), T113, tree(T114, T115, T116)) → f60_out1(tree(T114, T118, T116))
f60_in(T148, tree(T149, T150, T151)) → U5(f167_in(T149, T148, T151), T148, tree(T149, T150, T151))
U5(f167_out1(T153), T148, tree(T149, T150, T151)) → f60_out1(tree(T149, T150, T153))
f141_in(0, s(T127)) → f141_out1
f141_in(s(T132), s(T133)) → U6(f141_in(T132, T133), s(T132), s(T133))
U6(f141_out1, s(T132), s(T133)) → f141_out1
f213_in(0) → f213_out1
f213_in(s(T192)) → U7(f213_in(T192), s(T192))
U7(f213_out1, s(T192)) → f213_out1
f38_in(T45, T46) → U8(f59_in(T45), T45, T46)
U8(f59_out1(T53), T45, T46) → U9(f60_in(T53, T46), T45, T46, T53)
U9(f60_out1(T54), T45, T46, T53) → f38_out1(T53, T54)
f137_in(T113, T114, T115) → U10(f141_in(T113, T114), T113, T114, T115)
U10(f141_out1, T113, T114, T115) → U11(f60_in(T113, T115), T113, T114, T115)
U11(f60_out1(T118), T113, T114, T115) → f137_out1(T118)
f167_in(T149, T148, T151) → U12(f141_in(T149, T148), T149, T148, T151)
U12(f141_out1, T149, T148, T151) → U13(f60_in(T148, T151), T149, T148, T151)
U13(f60_out1(T153), T149, T148, T151) → f167_out1(T153)
f205_in(T171, T173) → U14(f213_in(T171), T171, T173)
U14(f213_out1, T171, T173) → U15(f3_in(T173), T171, T173)
U15(f3_out1, T171, T173) → f205_out1

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(T45, T46, T47)) → U11(f38_in(T45, T46), tree(T45, T46, T47))
F3_IN(tree(T45, T46, T47)) → F38_IN(T45, T46)
F3_IN(tree(T171, T172, T173)) → U21(f205_in(T171, T173), tree(T171, T172, T173))
F3_IN(tree(T171, T172, T173)) → F205_IN(T171, T173)
F59_IN(s(T67)) → U31(f59_in(T67), s(T67))
F59_IN(s(T67)) → F59_IN(T67)
F60_IN(T113, tree(T114, T115, T116)) → U41(f137_in(T113, T114, T115), T113, tree(T114, T115, T116))
F60_IN(T113, tree(T114, T115, T116)) → F137_IN(T113, T114, T115)
F60_IN(T148, tree(T149, T150, T151)) → U51(f167_in(T149, T148, T151), T148, tree(T149, T150, T151))
F60_IN(T148, tree(T149, T150, T151)) → F167_IN(T149, T148, T151)
F141_IN(s(T132), s(T133)) → U61(f141_in(T132, T133), s(T132), s(T133))
F141_IN(s(T132), s(T133)) → F141_IN(T132, T133)
F213_IN(s(T192)) → U71(f213_in(T192), s(T192))
F213_IN(s(T192)) → F213_IN(T192)
F38_IN(T45, T46) → U81(f59_in(T45), T45, T46)
F38_IN(T45, T46) → F59_IN(T45)
U81(f59_out1(T53), T45, T46) → U91(f60_in(T53, T46), T45, T46, T53)
U81(f59_out1(T53), T45, T46) → F60_IN(T53, T46)
F137_IN(T113, T114, T115) → U101(f141_in(T113, T114), T113, T114, T115)
F137_IN(T113, T114, T115) → F141_IN(T113, T114)
U101(f141_out1, T113, T114, T115) → U111(f60_in(T113, T115), T113, T114, T115)
U101(f141_out1, T113, T114, T115) → F60_IN(T113, T115)
F167_IN(T149, T148, T151) → U121(f141_in(T149, T148), T149, T148, T151)
F167_IN(T149, T148, T151) → F141_IN(T149, T148)
U121(f141_out1, T149, T148, T151) → U131(f60_in(T148, T151), T149, T148, T151)
U121(f141_out1, T149, T148, T151) → F60_IN(T148, T151)
F205_IN(T171, T173) → U141(f213_in(T171), T171, T173)
F205_IN(T171, T173) → F213_IN(T171)
U141(f213_out1, T171, T173) → U151(f3_in(T173), T171, T173)
U141(f213_out1, T171, T173) → F3_IN(T173)

The TRS R consists of the following rules:

f3_in(void) → f3_out1
f3_in(tree(T21, T22, T23)) → f3_out1
f3_in(tree(T45, T46, T47)) → U1(f38_in(T45, T46), tree(T45, T46, T47))
U1(f38_out1(T49, T50), tree(T45, T46, T47)) → f3_out1
f3_in(tree(T171, T172, T173)) → U2(f205_in(T171, T173), tree(T171, T172, T173))
U2(f205_out1, tree(T171, T172, T173)) → f3_out1
f59_in(s(T61)) → f59_out1(0)
f59_in(s(T67)) → U3(f59_in(T67), s(T67))
U3(f59_out1(T68), s(T67)) → f59_out1(s(T68))
f60_in(T77, void) → f60_out1(tree(T77, void, void))
f60_in(T90, tree(T90, T91, T92)) → f60_out1(tree(T90, T91, T92))
f60_in(T113, tree(T114, T115, T116)) → U4(f137_in(T113, T114, T115), T113, tree(T114, T115, T116))
U4(f137_out1(T118), T113, tree(T114, T115, T116)) → f60_out1(tree(T114, T118, T116))
f60_in(T148, tree(T149, T150, T151)) → U5(f167_in(T149, T148, T151), T148, tree(T149, T150, T151))
U5(f167_out1(T153), T148, tree(T149, T150, T151)) → f60_out1(tree(T149, T150, T153))
f141_in(0, s(T127)) → f141_out1
f141_in(s(T132), s(T133)) → U6(f141_in(T132, T133), s(T132), s(T133))
U6(f141_out1, s(T132), s(T133)) → f141_out1
f213_in(0) → f213_out1
f213_in(s(T192)) → U7(f213_in(T192), s(T192))
U7(f213_out1, s(T192)) → f213_out1
f38_in(T45, T46) → U8(f59_in(T45), T45, T46)
U8(f59_out1(T53), T45, T46) → U9(f60_in(T53, T46), T45, T46, T53)
U9(f60_out1(T54), T45, T46, T53) → f38_out1(T53, T54)
f137_in(T113, T114, T115) → U10(f141_in(T113, T114), T113, T114, T115)
U10(f141_out1, T113, T114, T115) → U11(f60_in(T113, T115), T113, T114, T115)
U11(f60_out1(T118), T113, T114, T115) → f137_out1(T118)
f167_in(T149, T148, T151) → U12(f141_in(T149, T148), T149, T148, T151)
U12(f141_out1, T149, T148, T151) → U13(f60_in(T148, T151), T149, T148, T151)
U13(f60_out1(T153), T149, T148, T151) → f167_out1(T153)
f205_in(T171, T173) → U14(f213_in(T171), T171, T173)
U14(f213_out1, T171, T173) → U15(f3_in(T173), T171, T173)
U15(f3_out1, T171, T173) → f205_out1

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 5 SCCs with 18 less nodes.

(6) Complex Obligation (AND)

(7) Obligation:

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

F213_IN(s(T192)) → F213_IN(T192)

The TRS R consists of the following rules:

f3_in(void) → f3_out1
f3_in(tree(T21, T22, T23)) → f3_out1
f3_in(tree(T45, T46, T47)) → U1(f38_in(T45, T46), tree(T45, T46, T47))
U1(f38_out1(T49, T50), tree(T45, T46, T47)) → f3_out1
f3_in(tree(T171, T172, T173)) → U2(f205_in(T171, T173), tree(T171, T172, T173))
U2(f205_out1, tree(T171, T172, T173)) → f3_out1
f59_in(s(T61)) → f59_out1(0)
f59_in(s(T67)) → U3(f59_in(T67), s(T67))
U3(f59_out1(T68), s(T67)) → f59_out1(s(T68))
f60_in(T77, void) → f60_out1(tree(T77, void, void))
f60_in(T90, tree(T90, T91, T92)) → f60_out1(tree(T90, T91, T92))
f60_in(T113, tree(T114, T115, T116)) → U4(f137_in(T113, T114, T115), T113, tree(T114, T115, T116))
U4(f137_out1(T118), T113, tree(T114, T115, T116)) → f60_out1(tree(T114, T118, T116))
f60_in(T148, tree(T149, T150, T151)) → U5(f167_in(T149, T148, T151), T148, tree(T149, T150, T151))
U5(f167_out1(T153), T148, tree(T149, T150, T151)) → f60_out1(tree(T149, T150, T153))
f141_in(0, s(T127)) → f141_out1
f141_in(s(T132), s(T133)) → U6(f141_in(T132, T133), s(T132), s(T133))
U6(f141_out1, s(T132), s(T133)) → f141_out1
f213_in(0) → f213_out1
f213_in(s(T192)) → U7(f213_in(T192), s(T192))
U7(f213_out1, s(T192)) → f213_out1
f38_in(T45, T46) → U8(f59_in(T45), T45, T46)
U8(f59_out1(T53), T45, T46) → U9(f60_in(T53, T46), T45, T46, T53)
U9(f60_out1(T54), T45, T46, T53) → f38_out1(T53, T54)
f137_in(T113, T114, T115) → U10(f141_in(T113, T114), T113, T114, T115)
U10(f141_out1, T113, T114, T115) → U11(f60_in(T113, T115), T113, T114, T115)
U11(f60_out1(T118), T113, T114, T115) → f137_out1(T118)
f167_in(T149, T148, T151) → U12(f141_in(T149, T148), T149, T148, T151)
U12(f141_out1, T149, T148, T151) → U13(f60_in(T148, T151), T149, T148, T151)
U13(f60_out1(T153), T149, T148, T151) → f167_out1(T153)
f205_in(T171, T173) → U14(f213_in(T171), T171, T173)
U14(f213_out1, T171, T173) → U15(f3_in(T173), T171, T173)
U15(f3_out1, T171, T173) → f205_out1

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:

F213_IN(s(T192)) → F213_IN(T192)

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:

  • F213_IN(s(T192)) → F213_IN(T192)
    The graph contains the following edges 1 > 1

(11) YES

(12) Obligation:

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

F141_IN(s(T132), s(T133)) → F141_IN(T132, T133)

The TRS R consists of the following rules:

f3_in(void) → f3_out1
f3_in(tree(T21, T22, T23)) → f3_out1
f3_in(tree(T45, T46, T47)) → U1(f38_in(T45, T46), tree(T45, T46, T47))
U1(f38_out1(T49, T50), tree(T45, T46, T47)) → f3_out1
f3_in(tree(T171, T172, T173)) → U2(f205_in(T171, T173), tree(T171, T172, T173))
U2(f205_out1, tree(T171, T172, T173)) → f3_out1
f59_in(s(T61)) → f59_out1(0)
f59_in(s(T67)) → U3(f59_in(T67), s(T67))
U3(f59_out1(T68), s(T67)) → f59_out1(s(T68))
f60_in(T77, void) → f60_out1(tree(T77, void, void))
f60_in(T90, tree(T90, T91, T92)) → f60_out1(tree(T90, T91, T92))
f60_in(T113, tree(T114, T115, T116)) → U4(f137_in(T113, T114, T115), T113, tree(T114, T115, T116))
U4(f137_out1(T118), T113, tree(T114, T115, T116)) → f60_out1(tree(T114, T118, T116))
f60_in(T148, tree(T149, T150, T151)) → U5(f167_in(T149, T148, T151), T148, tree(T149, T150, T151))
U5(f167_out1(T153), T148, tree(T149, T150, T151)) → f60_out1(tree(T149, T150, T153))
f141_in(0, s(T127)) → f141_out1
f141_in(s(T132), s(T133)) → U6(f141_in(T132, T133), s(T132), s(T133))
U6(f141_out1, s(T132), s(T133)) → f141_out1
f213_in(0) → f213_out1
f213_in(s(T192)) → U7(f213_in(T192), s(T192))
U7(f213_out1, s(T192)) → f213_out1
f38_in(T45, T46) → U8(f59_in(T45), T45, T46)
U8(f59_out1(T53), T45, T46) → U9(f60_in(T53, T46), T45, T46, T53)
U9(f60_out1(T54), T45, T46, T53) → f38_out1(T53, T54)
f137_in(T113, T114, T115) → U10(f141_in(T113, T114), T113, T114, T115)
U10(f141_out1, T113, T114, T115) → U11(f60_in(T113, T115), T113, T114, T115)
U11(f60_out1(T118), T113, T114, T115) → f137_out1(T118)
f167_in(T149, T148, T151) → U12(f141_in(T149, T148), T149, T148, T151)
U12(f141_out1, T149, T148, T151) → U13(f60_in(T148, T151), T149, T148, T151)
U13(f60_out1(T153), T149, T148, T151) → f167_out1(T153)
f205_in(T171, T173) → U14(f213_in(T171), T171, T173)
U14(f213_out1, T171, T173) → U15(f3_in(T173), T171, T173)
U15(f3_out1, T171, T173) → f205_out1

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:

F141_IN(s(T132), s(T133)) → F141_IN(T132, T133)

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:

  • F141_IN(s(T132), s(T133)) → F141_IN(T132, T133)
    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:

F60_IN(T113, tree(T114, T115, T116)) → F137_IN(T113, T114, T115)
F137_IN(T113, T114, T115) → U101(f141_in(T113, T114), T113, T114, T115)
U101(f141_out1, T113, T114, T115) → F60_IN(T113, T115)
F60_IN(T148, tree(T149, T150, T151)) → F167_IN(T149, T148, T151)
F167_IN(T149, T148, T151) → U121(f141_in(T149, T148), T149, T148, T151)
U121(f141_out1, T149, T148, T151) → F60_IN(T148, T151)

The TRS R consists of the following rules:

f3_in(void) → f3_out1
f3_in(tree(T21, T22, T23)) → f3_out1
f3_in(tree(T45, T46, T47)) → U1(f38_in(T45, T46), tree(T45, T46, T47))
U1(f38_out1(T49, T50), tree(T45, T46, T47)) → f3_out1
f3_in(tree(T171, T172, T173)) → U2(f205_in(T171, T173), tree(T171, T172, T173))
U2(f205_out1, tree(T171, T172, T173)) → f3_out1
f59_in(s(T61)) → f59_out1(0)
f59_in(s(T67)) → U3(f59_in(T67), s(T67))
U3(f59_out1(T68), s(T67)) → f59_out1(s(T68))
f60_in(T77, void) → f60_out1(tree(T77, void, void))
f60_in(T90, tree(T90, T91, T92)) → f60_out1(tree(T90, T91, T92))
f60_in(T113, tree(T114, T115, T116)) → U4(f137_in(T113, T114, T115), T113, tree(T114, T115, T116))
U4(f137_out1(T118), T113, tree(T114, T115, T116)) → f60_out1(tree(T114, T118, T116))
f60_in(T148, tree(T149, T150, T151)) → U5(f167_in(T149, T148, T151), T148, tree(T149, T150, T151))
U5(f167_out1(T153), T148, tree(T149, T150, T151)) → f60_out1(tree(T149, T150, T153))
f141_in(0, s(T127)) → f141_out1
f141_in(s(T132), s(T133)) → U6(f141_in(T132, T133), s(T132), s(T133))
U6(f141_out1, s(T132), s(T133)) → f141_out1
f213_in(0) → f213_out1
f213_in(s(T192)) → U7(f213_in(T192), s(T192))
U7(f213_out1, s(T192)) → f213_out1
f38_in(T45, T46) → U8(f59_in(T45), T45, T46)
U8(f59_out1(T53), T45, T46) → U9(f60_in(T53, T46), T45, T46, T53)
U9(f60_out1(T54), T45, T46, T53) → f38_out1(T53, T54)
f137_in(T113, T114, T115) → U10(f141_in(T113, T114), T113, T114, T115)
U10(f141_out1, T113, T114, T115) → U11(f60_in(T113, T115), T113, T114, T115)
U11(f60_out1(T118), T113, T114, T115) → f137_out1(T118)
f167_in(T149, T148, T151) → U12(f141_in(T149, T148), T149, T148, T151)
U12(f141_out1, T149, T148, T151) → U13(f60_in(T148, T151), T149, T148, T151)
U13(f60_out1(T153), T149, T148, T151) → f167_out1(T153)
f205_in(T171, T173) → U14(f213_in(T171), T171, T173)
U14(f213_out1, T171, T173) → U15(f3_in(T173), T171, T173)
U15(f3_out1, T171, T173) → f205_out1

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

(18) 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:

  • F137_IN(T113, T114, T115) → U101(f141_in(T113, T114), T113, T114, T115)
    The graph contains the following edges 1 >= 2, 2 >= 3, 3 >= 4

  • U101(f141_out1, T113, T114, T115) → F60_IN(T113, T115)
    The graph contains the following edges 2 >= 1, 4 >= 2

  • U121(f141_out1, T149, T148, T151) → F60_IN(T148, T151)
    The graph contains the following edges 3 >= 1, 4 >= 2

  • F60_IN(T113, tree(T114, T115, T116)) → F137_IN(T113, T114, T115)
    The graph contains the following edges 1 >= 1, 2 > 2, 2 > 3

  • F60_IN(T148, tree(T149, T150, T151)) → F167_IN(T149, T148, T151)
    The graph contains the following edges 2 > 1, 1 >= 2, 2 > 3

  • F167_IN(T149, T148, T151) → U121(f141_in(T149, T148), T149, T148, T151)
    The graph contains the following edges 1 >= 2, 2 >= 3, 3 >= 4

(19) YES

(20) Obligation:

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

F59_IN(s(T67)) → F59_IN(T67)

The TRS R consists of the following rules:

f3_in(void) → f3_out1
f3_in(tree(T21, T22, T23)) → f3_out1
f3_in(tree(T45, T46, T47)) → U1(f38_in(T45, T46), tree(T45, T46, T47))
U1(f38_out1(T49, T50), tree(T45, T46, T47)) → f3_out1
f3_in(tree(T171, T172, T173)) → U2(f205_in(T171, T173), tree(T171, T172, T173))
U2(f205_out1, tree(T171, T172, T173)) → f3_out1
f59_in(s(T61)) → f59_out1(0)
f59_in(s(T67)) → U3(f59_in(T67), s(T67))
U3(f59_out1(T68), s(T67)) → f59_out1(s(T68))
f60_in(T77, void) → f60_out1(tree(T77, void, void))
f60_in(T90, tree(T90, T91, T92)) → f60_out1(tree(T90, T91, T92))
f60_in(T113, tree(T114, T115, T116)) → U4(f137_in(T113, T114, T115), T113, tree(T114, T115, T116))
U4(f137_out1(T118), T113, tree(T114, T115, T116)) → f60_out1(tree(T114, T118, T116))
f60_in(T148, tree(T149, T150, T151)) → U5(f167_in(T149, T148, T151), T148, tree(T149, T150, T151))
U5(f167_out1(T153), T148, tree(T149, T150, T151)) → f60_out1(tree(T149, T150, T153))
f141_in(0, s(T127)) → f141_out1
f141_in(s(T132), s(T133)) → U6(f141_in(T132, T133), s(T132), s(T133))
U6(f141_out1, s(T132), s(T133)) → f141_out1
f213_in(0) → f213_out1
f213_in(s(T192)) → U7(f213_in(T192), s(T192))
U7(f213_out1, s(T192)) → f213_out1
f38_in(T45, T46) → U8(f59_in(T45), T45, T46)
U8(f59_out1(T53), T45, T46) → U9(f60_in(T53, T46), T45, T46, T53)
U9(f60_out1(T54), T45, T46, T53) → f38_out1(T53, T54)
f137_in(T113, T114, T115) → U10(f141_in(T113, T114), T113, T114, T115)
U10(f141_out1, T113, T114, T115) → U11(f60_in(T113, T115), T113, T114, T115)
U11(f60_out1(T118), T113, T114, T115) → f137_out1(T118)
f167_in(T149, T148, T151) → U12(f141_in(T149, T148), T149, T148, T151)
U12(f141_out1, T149, T148, T151) → U13(f60_in(T148, T151), T149, T148, T151)
U13(f60_out1(T153), T149, T148, T151) → f167_out1(T153)
f205_in(T171, T173) → U14(f213_in(T171), T171, T173)
U14(f213_out1, T171, T173) → U15(f3_in(T173), T171, T173)
U15(f3_out1, T171, T173) → f205_out1

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

(21) 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.

(22) Obligation:

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

F59_IN(s(T67)) → F59_IN(T67)

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

(23) 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:

  • F59_IN(s(T67)) → F59_IN(T67)
    The graph contains the following edges 1 > 1

(24) YES

(25) Obligation:

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

F3_IN(tree(T171, T172, T173)) → F205_IN(T171, T173)
F205_IN(T171, T173) → U141(f213_in(T171), T171, T173)
U141(f213_out1, T171, T173) → F3_IN(T173)

The TRS R consists of the following rules:

f3_in(void) → f3_out1
f3_in(tree(T21, T22, T23)) → f3_out1
f3_in(tree(T45, T46, T47)) → U1(f38_in(T45, T46), tree(T45, T46, T47))
U1(f38_out1(T49, T50), tree(T45, T46, T47)) → f3_out1
f3_in(tree(T171, T172, T173)) → U2(f205_in(T171, T173), tree(T171, T172, T173))
U2(f205_out1, tree(T171, T172, T173)) → f3_out1
f59_in(s(T61)) → f59_out1(0)
f59_in(s(T67)) → U3(f59_in(T67), s(T67))
U3(f59_out1(T68), s(T67)) → f59_out1(s(T68))
f60_in(T77, void) → f60_out1(tree(T77, void, void))
f60_in(T90, tree(T90, T91, T92)) → f60_out1(tree(T90, T91, T92))
f60_in(T113, tree(T114, T115, T116)) → U4(f137_in(T113, T114, T115), T113, tree(T114, T115, T116))
U4(f137_out1(T118), T113, tree(T114, T115, T116)) → f60_out1(tree(T114, T118, T116))
f60_in(T148, tree(T149, T150, T151)) → U5(f167_in(T149, T148, T151), T148, tree(T149, T150, T151))
U5(f167_out1(T153), T148, tree(T149, T150, T151)) → f60_out1(tree(T149, T150, T153))
f141_in(0, s(T127)) → f141_out1
f141_in(s(T132), s(T133)) → U6(f141_in(T132, T133), s(T132), s(T133))
U6(f141_out1, s(T132), s(T133)) → f141_out1
f213_in(0) → f213_out1
f213_in(s(T192)) → U7(f213_in(T192), s(T192))
U7(f213_out1, s(T192)) → f213_out1
f38_in(T45, T46) → U8(f59_in(T45), T45, T46)
U8(f59_out1(T53), T45, T46) → U9(f60_in(T53, T46), T45, T46, T53)
U9(f60_out1(T54), T45, T46, T53) → f38_out1(T53, T54)
f137_in(T113, T114, T115) → U10(f141_in(T113, T114), T113, T114, T115)
U10(f141_out1, T113, T114, T115) → U11(f60_in(T113, T115), T113, T114, T115)
U11(f60_out1(T118), T113, T114, T115) → f137_out1(T118)
f167_in(T149, T148, T151) → U12(f141_in(T149, T148), T149, T148, T151)
U12(f141_out1, T149, T148, T151) → U13(f60_in(T148, T151), T149, T148, T151)
U13(f60_out1(T153), T149, T148, T151) → f167_out1(T153)
f205_in(T171, T173) → U14(f213_in(T171), T171, T173)
U14(f213_out1, T171, T173) → U15(f3_in(T173), T171, T173)
U15(f3_out1, T171, T173) → f205_out1

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

(26) 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:

  • F205_IN(T171, T173) → U141(f213_in(T171), T171, T173)
    The graph contains the following edges 1 >= 2, 2 >= 3

  • U141(f213_out1, T171, T173) → F3_IN(T173)
    The graph contains the following edges 3 >= 1

  • F3_IN(tree(T171, T172, T173)) → F205_IN(T171, T173)
    The graph contains the following edges 1 > 1, 1 > 2

(27) YES