(0) Obligation:

Clauses:

search_tree(void).
search_tree(T) :- search_tree(T, X1, X2).
search_tree(tree(X, void, void), X, X).
search_tree(tree(X, void, Right), X, Max) :- ','(search_tree(Right, Min, Max), less(X, Min)).
search_tree(tree(X, Left, void), Min, X) :- ','(search_tree(Left, Min, Max), less(Max, X)).
search_tree(tree(X, Left, Right), Min1, Max2) :- ','(search_tree(Left, Min1, Max1), ','(less(Max1, X), ','(search_tree(Right, Min2, Max2), less(X, Min2)))).
less(0, s(X3)).
less(s(X), s(Y)) :- less(X, Y).

Queries:

search_tree(g).

(1) PrologToPrologProblemTransformerProof (SOUND transformation)

Built Prolog problem from termination graph.

(2) Obligation:

Clauses:

p21(T18, X51, X52, T17) :- search_tree23(T18, X51, X52).
p21(T18, T21, T22, T17) :- ','(search_tree23(T18, T21, T22), less24(T17, T21)).
search_tree23(tree(T29, void, void), T29, T29).
search_tree23(tree(T38, void, T39), T38, X88) :- p21(T39, X87, X88, T38).
search_tree23(tree(T50, T51, void), X116, T50) :- p37(T51, X116, X115, T50).
search_tree23(tree(T66, T67, T68), X149, X150) :- p41(T67, X149, X147, T66, T68, X148, X150).
less24(0, s(T87)).
less24(s(T92), s(T93)) :- less24(T92, T93).
p37(T51, X116, X115, T50) :- search_tree23(T51, X116, X115).
p37(T51, T54, T55, T50) :- ','(search_tree23(T51, T54, T55), less24(T55, T50)).
p41(T67, X149, X147, T66, T68, X148, X150) :- search_tree23(T67, X149, X147).
p41(T67, T71, T72, T66, T68, X148, X150) :- ','(search_tree23(T67, T71, T72), less24(T72, T66)).
p41(T67, T71, T72, T66, T68, X148, X150) :- ','(search_tree23(T67, T71, T72), ','(less24(T72, T66), p21(T68, X148, X150, T66))).
search_tree1(void).
search_tree1(tree(T8, void, void)).
search_tree1(tree(T17, void, T18)) :- p21(T18, X51, X52, T17).
search_tree1(tree(T104, T105, void)) :- p37(T105, X206, X205, T104).
search_tree1(tree(T114, T115, T116)) :- p41(T115, X235, X233, T114, T116, X234, X236).

Queries:

search_tree1(g).

(3) PrologToPiTRSProof (SOUND transformation)

We use the technique of [LOPSTR]. With regard to the inferred argument filtering the predicates were used in the following modes:
search_tree1_in: (b)
p21_in: (b,f,f,b)
search_tree23_in: (b,f,f)
p37_in: (b,f,f,b)
p41_in: (b,f,f,b,b,f,f)
less24_in: (f,b) (b,b)
Transforming Prolog into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:

search_tree1_in_g(void) → search_tree1_out_g(void)
search_tree1_in_g(tree(T8, void, void)) → search_tree1_out_g(tree(T8, void, void))
search_tree1_in_g(tree(T17, void, T18)) → U15_g(T17, T18, p21_in_gaag(T18, X51, X52, T17))
p21_in_gaag(T18, X51, X52, T17) → U1_gaag(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
search_tree23_in_gaa(tree(T29, void, void), T29, T29) → search_tree23_out_gaa(tree(T29, void, void), T29, T29)
search_tree23_in_gaa(tree(T38, void, T39), T38, X88) → U4_gaa(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
p21_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
search_tree23_in_gaa(tree(T50, T51, void), X116, T50) → U5_gaa(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
p37_in_gaag(T51, X116, X115, T50) → U8_gaag(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
search_tree23_in_gaa(tree(T66, T67, T68), X149, X150) → U6_gaa(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150) → U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_out_gaa(T67, X149, X147)) → p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)
p41_in_gaaggaa(T67, T71, T72, T66, T68, X148, X150) → U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
less24_in_ag(0, s(T87)) → less24_out_ag(0, s(T87))
less24_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, less24_in_ag(T92, T93))
U7_ag(T92, T93, less24_out_ag(T92, T93)) → less24_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_out_gaag(T68, X148, X150, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U6_gaa(T66, T67, T68, X149, X150, p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)) → search_tree23_out_gaa(tree(T66, T67, T68), X149, X150)
U8_gaag(T51, X116, X115, T50, search_tree23_out_gaa(T51, X116, X115)) → p37_out_gaag(T51, X116, X115, T50)
p37_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, less24_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, less24_out_ag(T55, T50)) → p37_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X116, p37_out_gaag(T51, X116, X115, T50)) → search_tree23_out_gaa(tree(T50, T51, void), X116, T50)
U2_gaag(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, less24_in_gg(T17, T21))
less24_in_gg(0, s(T87)) → less24_out_gg(0, s(T87))
less24_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, less24_in_gg(T92, T93))
U7_gg(T92, T93, less24_out_gg(T92, T93)) → less24_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, less24_out_gg(T17, T21)) → p21_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X88, p21_out_gaag(T39, X87, X88, T38)) → search_tree23_out_gaa(tree(T38, void, T39), T38, X88)
U1_gaag(T18, X51, X52, T17, search_tree23_out_gaa(T18, X51, X52)) → p21_out_gaag(T18, X51, X52, T17)
U15_g(T17, T18, p21_out_gaag(T18, X51, X52, T17)) → search_tree1_out_g(tree(T17, void, T18))
search_tree1_in_g(tree(T104, T105, void)) → U16_g(T104, T105, p37_in_gaag(T105, X206, X205, T104))
U16_g(T104, T105, p37_out_gaag(T105, X206, X205, T104)) → search_tree1_out_g(tree(T104, T105, void))
search_tree1_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
U17_g(T114, T115, T116, p41_out_gaaggaa(T115, X235, X233, T114, T116, X234, X236)) → search_tree1_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_tree1_in_g(x1)  =  search_tree1_in_g(x1)
void  =  void
search_tree1_out_g(x1)  =  search_tree1_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
p21_in_gaag(x1, x2, x3, x4)  =  p21_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_tree23_in_gaa(x1, x2, x3)  =  search_tree23_in_gaa(x1)
search_tree23_out_gaa(x1, x2, x3)  =  search_tree23_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
p37_in_gaag(x1, x2, x3, x4)  =  p37_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
p41_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
p41_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
less24_in_gg(x1, x2)  =  less24_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
less24_out_gg(x1, x2)  =  less24_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
p21_out_gaag(x1, x2, x3, x4)  =  p21_out_gaag(x2)
less24_in_ag(x1, x2)  =  less24_in_ag(x2)
less24_out_ag(x1, x2)  =  less24_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
p37_out_gaag(x1, x2, x3, x4)  =  p37_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)

Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog

(4) Obligation:

Pi-finite rewrite system:
The TRS R consists of the following rules:

search_tree1_in_g(void) → search_tree1_out_g(void)
search_tree1_in_g(tree(T8, void, void)) → search_tree1_out_g(tree(T8, void, void))
search_tree1_in_g(tree(T17, void, T18)) → U15_g(T17, T18, p21_in_gaag(T18, X51, X52, T17))
p21_in_gaag(T18, X51, X52, T17) → U1_gaag(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
search_tree23_in_gaa(tree(T29, void, void), T29, T29) → search_tree23_out_gaa(tree(T29, void, void), T29, T29)
search_tree23_in_gaa(tree(T38, void, T39), T38, X88) → U4_gaa(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
p21_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
search_tree23_in_gaa(tree(T50, T51, void), X116, T50) → U5_gaa(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
p37_in_gaag(T51, X116, X115, T50) → U8_gaag(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
search_tree23_in_gaa(tree(T66, T67, T68), X149, X150) → U6_gaa(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150) → U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_out_gaa(T67, X149, X147)) → p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)
p41_in_gaaggaa(T67, T71, T72, T66, T68, X148, X150) → U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
less24_in_ag(0, s(T87)) → less24_out_ag(0, s(T87))
less24_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, less24_in_ag(T92, T93))
U7_ag(T92, T93, less24_out_ag(T92, T93)) → less24_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_out_gaag(T68, X148, X150, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U6_gaa(T66, T67, T68, X149, X150, p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)) → search_tree23_out_gaa(tree(T66, T67, T68), X149, X150)
U8_gaag(T51, X116, X115, T50, search_tree23_out_gaa(T51, X116, X115)) → p37_out_gaag(T51, X116, X115, T50)
p37_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, less24_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, less24_out_ag(T55, T50)) → p37_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X116, p37_out_gaag(T51, X116, X115, T50)) → search_tree23_out_gaa(tree(T50, T51, void), X116, T50)
U2_gaag(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, less24_in_gg(T17, T21))
less24_in_gg(0, s(T87)) → less24_out_gg(0, s(T87))
less24_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, less24_in_gg(T92, T93))
U7_gg(T92, T93, less24_out_gg(T92, T93)) → less24_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, less24_out_gg(T17, T21)) → p21_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X88, p21_out_gaag(T39, X87, X88, T38)) → search_tree23_out_gaa(tree(T38, void, T39), T38, X88)
U1_gaag(T18, X51, X52, T17, search_tree23_out_gaa(T18, X51, X52)) → p21_out_gaag(T18, X51, X52, T17)
U15_g(T17, T18, p21_out_gaag(T18, X51, X52, T17)) → search_tree1_out_g(tree(T17, void, T18))
search_tree1_in_g(tree(T104, T105, void)) → U16_g(T104, T105, p37_in_gaag(T105, X206, X205, T104))
U16_g(T104, T105, p37_out_gaag(T105, X206, X205, T104)) → search_tree1_out_g(tree(T104, T105, void))
search_tree1_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
U17_g(T114, T115, T116, p41_out_gaaggaa(T115, X235, X233, T114, T116, X234, X236)) → search_tree1_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_tree1_in_g(x1)  =  search_tree1_in_g(x1)
void  =  void
search_tree1_out_g(x1)  =  search_tree1_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
p21_in_gaag(x1, x2, x3, x4)  =  p21_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_tree23_in_gaa(x1, x2, x3)  =  search_tree23_in_gaa(x1)
search_tree23_out_gaa(x1, x2, x3)  =  search_tree23_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
p37_in_gaag(x1, x2, x3, x4)  =  p37_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
p41_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
p41_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
less24_in_gg(x1, x2)  =  less24_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
less24_out_gg(x1, x2)  =  less24_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
p21_out_gaag(x1, x2, x3, x4)  =  p21_out_gaag(x2)
less24_in_ag(x1, x2)  =  less24_in_ag(x2)
less24_out_ag(x1, x2)  =  less24_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
p37_out_gaag(x1, x2, x3, x4)  =  p37_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)

(5) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem:
Pi DP problem:
The TRS P consists of the following rules:

SEARCH_TREE1_IN_G(tree(T17, void, T18)) → U15_G(T17, T18, p21_in_gaag(T18, X51, X52, T17))
SEARCH_TREE1_IN_G(tree(T17, void, T18)) → P21_IN_GAAG(T18, X51, X52, T17)
P21_IN_GAAG(T18, X51, X52, T17) → U1_GAAG(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
P21_IN_GAAG(T18, X51, X52, T17) → SEARCH_TREE23_IN_GAA(T18, X51, X52)
SEARCH_TREE23_IN_GAA(tree(T38, void, T39), T38, X88) → U4_GAA(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
SEARCH_TREE23_IN_GAA(tree(T38, void, T39), T38, X88) → P21_IN_GAAG(T39, X87, X88, T38)
P21_IN_GAAG(T18, T21, T22, T17) → U2_GAAG(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
SEARCH_TREE23_IN_GAA(tree(T50, T51, void), X116, T50) → U5_GAA(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
SEARCH_TREE23_IN_GAA(tree(T50, T51, void), X116, T50) → P37_IN_GAAG(T51, X116, X115, T50)
P37_IN_GAAG(T51, X116, X115, T50) → U8_GAAG(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
P37_IN_GAAG(T51, X116, X115, T50) → SEARCH_TREE23_IN_GAA(T51, X116, X115)
SEARCH_TREE23_IN_GAA(tree(T66, T67, T68), X149, X150) → U6_GAA(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
SEARCH_TREE23_IN_GAA(tree(T66, T67, T68), X149, X150) → P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150)
P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150) → U11_GAAGGAA(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150) → SEARCH_TREE23_IN_GAA(T67, X149, X147)
P41_IN_GAAGGAA(T67, T71, T72, T66, T68, X148, X150) → U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → LESS24_IN_AG(T72, T66)
LESS24_IN_AG(s(T92), s(T93)) → U7_AG(T92, T93, less24_in_ag(T92, T93))
LESS24_IN_AG(s(T92), s(T93)) → LESS24_IN_AG(T92, T93)
U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → P21_IN_GAAG(T68, X148, X150, T66)
P37_IN_GAAG(T51, T54, T55, T50) → U9_GAAG(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_GAAG(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_GAAG(T51, T54, T55, T50, less24_in_ag(T55, T50))
U9_GAAG(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → LESS24_IN_AG(T55, T50)
U2_GAAG(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_GAAG(T18, T21, T22, T17, less24_in_gg(T17, T21))
U2_GAAG(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → LESS24_IN_GG(T17, T21)
LESS24_IN_GG(s(T92), s(T93)) → U7_GG(T92, T93, less24_in_gg(T92, T93))
LESS24_IN_GG(s(T92), s(T93)) → LESS24_IN_GG(T92, T93)
SEARCH_TREE1_IN_G(tree(T104, T105, void)) → U16_G(T104, T105, p37_in_gaag(T105, X206, X205, T104))
SEARCH_TREE1_IN_G(tree(T104, T105, void)) → P37_IN_GAAG(T105, X206, X205, T104)
SEARCH_TREE1_IN_G(tree(T114, T115, T116)) → U17_G(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
SEARCH_TREE1_IN_G(tree(T114, T115, T116)) → P41_IN_GAAGGAA(T115, X235, X233, T114, T116, X234, X236)

The TRS R consists of the following rules:

search_tree1_in_g(void) → search_tree1_out_g(void)
search_tree1_in_g(tree(T8, void, void)) → search_tree1_out_g(tree(T8, void, void))
search_tree1_in_g(tree(T17, void, T18)) → U15_g(T17, T18, p21_in_gaag(T18, X51, X52, T17))
p21_in_gaag(T18, X51, X52, T17) → U1_gaag(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
search_tree23_in_gaa(tree(T29, void, void), T29, T29) → search_tree23_out_gaa(tree(T29, void, void), T29, T29)
search_tree23_in_gaa(tree(T38, void, T39), T38, X88) → U4_gaa(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
p21_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
search_tree23_in_gaa(tree(T50, T51, void), X116, T50) → U5_gaa(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
p37_in_gaag(T51, X116, X115, T50) → U8_gaag(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
search_tree23_in_gaa(tree(T66, T67, T68), X149, X150) → U6_gaa(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150) → U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_out_gaa(T67, X149, X147)) → p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)
p41_in_gaaggaa(T67, T71, T72, T66, T68, X148, X150) → U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
less24_in_ag(0, s(T87)) → less24_out_ag(0, s(T87))
less24_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, less24_in_ag(T92, T93))
U7_ag(T92, T93, less24_out_ag(T92, T93)) → less24_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_out_gaag(T68, X148, X150, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U6_gaa(T66, T67, T68, X149, X150, p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)) → search_tree23_out_gaa(tree(T66, T67, T68), X149, X150)
U8_gaag(T51, X116, X115, T50, search_tree23_out_gaa(T51, X116, X115)) → p37_out_gaag(T51, X116, X115, T50)
p37_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, less24_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, less24_out_ag(T55, T50)) → p37_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X116, p37_out_gaag(T51, X116, X115, T50)) → search_tree23_out_gaa(tree(T50, T51, void), X116, T50)
U2_gaag(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, less24_in_gg(T17, T21))
less24_in_gg(0, s(T87)) → less24_out_gg(0, s(T87))
less24_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, less24_in_gg(T92, T93))
U7_gg(T92, T93, less24_out_gg(T92, T93)) → less24_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, less24_out_gg(T17, T21)) → p21_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X88, p21_out_gaag(T39, X87, X88, T38)) → search_tree23_out_gaa(tree(T38, void, T39), T38, X88)
U1_gaag(T18, X51, X52, T17, search_tree23_out_gaa(T18, X51, X52)) → p21_out_gaag(T18, X51, X52, T17)
U15_g(T17, T18, p21_out_gaag(T18, X51, X52, T17)) → search_tree1_out_g(tree(T17, void, T18))
search_tree1_in_g(tree(T104, T105, void)) → U16_g(T104, T105, p37_in_gaag(T105, X206, X205, T104))
U16_g(T104, T105, p37_out_gaag(T105, X206, X205, T104)) → search_tree1_out_g(tree(T104, T105, void))
search_tree1_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
U17_g(T114, T115, T116, p41_out_gaaggaa(T115, X235, X233, T114, T116, X234, X236)) → search_tree1_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_tree1_in_g(x1)  =  search_tree1_in_g(x1)
void  =  void
search_tree1_out_g(x1)  =  search_tree1_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
p21_in_gaag(x1, x2, x3, x4)  =  p21_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_tree23_in_gaa(x1, x2, x3)  =  search_tree23_in_gaa(x1)
search_tree23_out_gaa(x1, x2, x3)  =  search_tree23_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
p37_in_gaag(x1, x2, x3, x4)  =  p37_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
p41_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
p41_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
less24_in_gg(x1, x2)  =  less24_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
less24_out_gg(x1, x2)  =  less24_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
p21_out_gaag(x1, x2, x3, x4)  =  p21_out_gaag(x2)
less24_in_ag(x1, x2)  =  less24_in_ag(x2)
less24_out_ag(x1, x2)  =  less24_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
p37_out_gaag(x1, x2, x3, x4)  =  p37_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
SEARCH_TREE1_IN_G(x1)  =  SEARCH_TREE1_IN_G(x1)
U15_G(x1, x2, x3)  =  U15_G(x3)
P21_IN_GAAG(x1, x2, x3, x4)  =  P21_IN_GAAG(x1, x4)
U1_GAAG(x1, x2, x3, x4, x5)  =  U1_GAAG(x5)
SEARCH_TREE23_IN_GAA(x1, x2, x3)  =  SEARCH_TREE23_IN_GAA(x1)
U4_GAA(x1, x2, x3, x4)  =  U4_GAA(x1, x4)
U2_GAAG(x1, x2, x3, x4, x5)  =  U2_GAAG(x4, x5)
U5_GAA(x1, x2, x3, x4)  =  U5_GAA(x4)
P37_IN_GAAG(x1, x2, x3, x4)  =  P37_IN_GAAG(x1, x4)
U8_GAAG(x1, x2, x3, x4, x5)  =  U8_GAAG(x5)
U6_GAA(x1, x2, x3, x4, x5, x6)  =  U6_GAA(x6)
P41_IN_GAAGGAA(x1, x2, x3, x4, x5, x6, x7)  =  P41_IN_GAAGGAA(x1, x4, x5)
U11_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_GAAGGAA(x8)
U12_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_GAAGGAA(x4, x5, x8)
U13_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_GAAGGAA(x2, x4, x5, x8)
LESS24_IN_AG(x1, x2)  =  LESS24_IN_AG(x2)
U7_AG(x1, x2, x3)  =  U7_AG(x3)
U14_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_GAAGGAA(x2, x8)
U9_GAAG(x1, x2, x3, x4, x5)  =  U9_GAAG(x4, x5)
U10_GAAG(x1, x2, x3, x4, x5)  =  U10_GAAG(x2, x5)
U3_GAAG(x1, x2, x3, x4, x5)  =  U3_GAAG(x2, x5)
LESS24_IN_GG(x1, x2)  =  LESS24_IN_GG(x1, x2)
U7_GG(x1, x2, x3)  =  U7_GG(x3)
U16_G(x1, x2, x3)  =  U16_G(x3)
U17_G(x1, x2, x3, x4)  =  U17_G(x4)

We have to consider all (P,R,Pi)-chains

(6) Obligation:

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

SEARCH_TREE1_IN_G(tree(T17, void, T18)) → U15_G(T17, T18, p21_in_gaag(T18, X51, X52, T17))
SEARCH_TREE1_IN_G(tree(T17, void, T18)) → P21_IN_GAAG(T18, X51, X52, T17)
P21_IN_GAAG(T18, X51, X52, T17) → U1_GAAG(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
P21_IN_GAAG(T18, X51, X52, T17) → SEARCH_TREE23_IN_GAA(T18, X51, X52)
SEARCH_TREE23_IN_GAA(tree(T38, void, T39), T38, X88) → U4_GAA(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
SEARCH_TREE23_IN_GAA(tree(T38, void, T39), T38, X88) → P21_IN_GAAG(T39, X87, X88, T38)
P21_IN_GAAG(T18, T21, T22, T17) → U2_GAAG(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
SEARCH_TREE23_IN_GAA(tree(T50, T51, void), X116, T50) → U5_GAA(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
SEARCH_TREE23_IN_GAA(tree(T50, T51, void), X116, T50) → P37_IN_GAAG(T51, X116, X115, T50)
P37_IN_GAAG(T51, X116, X115, T50) → U8_GAAG(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
P37_IN_GAAG(T51, X116, X115, T50) → SEARCH_TREE23_IN_GAA(T51, X116, X115)
SEARCH_TREE23_IN_GAA(tree(T66, T67, T68), X149, X150) → U6_GAA(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
SEARCH_TREE23_IN_GAA(tree(T66, T67, T68), X149, X150) → P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150)
P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150) → U11_GAAGGAA(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150) → SEARCH_TREE23_IN_GAA(T67, X149, X147)
P41_IN_GAAGGAA(T67, T71, T72, T66, T68, X148, X150) → U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → LESS24_IN_AG(T72, T66)
LESS24_IN_AG(s(T92), s(T93)) → U7_AG(T92, T93, less24_in_ag(T92, T93))
LESS24_IN_AG(s(T92), s(T93)) → LESS24_IN_AG(T92, T93)
U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → P21_IN_GAAG(T68, X148, X150, T66)
P37_IN_GAAG(T51, T54, T55, T50) → U9_GAAG(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_GAAG(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_GAAG(T51, T54, T55, T50, less24_in_ag(T55, T50))
U9_GAAG(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → LESS24_IN_AG(T55, T50)
U2_GAAG(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_GAAG(T18, T21, T22, T17, less24_in_gg(T17, T21))
U2_GAAG(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → LESS24_IN_GG(T17, T21)
LESS24_IN_GG(s(T92), s(T93)) → U7_GG(T92, T93, less24_in_gg(T92, T93))
LESS24_IN_GG(s(T92), s(T93)) → LESS24_IN_GG(T92, T93)
SEARCH_TREE1_IN_G(tree(T104, T105, void)) → U16_G(T104, T105, p37_in_gaag(T105, X206, X205, T104))
SEARCH_TREE1_IN_G(tree(T104, T105, void)) → P37_IN_GAAG(T105, X206, X205, T104)
SEARCH_TREE1_IN_G(tree(T114, T115, T116)) → U17_G(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
SEARCH_TREE1_IN_G(tree(T114, T115, T116)) → P41_IN_GAAGGAA(T115, X235, X233, T114, T116, X234, X236)

The TRS R consists of the following rules:

search_tree1_in_g(void) → search_tree1_out_g(void)
search_tree1_in_g(tree(T8, void, void)) → search_tree1_out_g(tree(T8, void, void))
search_tree1_in_g(tree(T17, void, T18)) → U15_g(T17, T18, p21_in_gaag(T18, X51, X52, T17))
p21_in_gaag(T18, X51, X52, T17) → U1_gaag(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
search_tree23_in_gaa(tree(T29, void, void), T29, T29) → search_tree23_out_gaa(tree(T29, void, void), T29, T29)
search_tree23_in_gaa(tree(T38, void, T39), T38, X88) → U4_gaa(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
p21_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
search_tree23_in_gaa(tree(T50, T51, void), X116, T50) → U5_gaa(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
p37_in_gaag(T51, X116, X115, T50) → U8_gaag(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
search_tree23_in_gaa(tree(T66, T67, T68), X149, X150) → U6_gaa(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150) → U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_out_gaa(T67, X149, X147)) → p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)
p41_in_gaaggaa(T67, T71, T72, T66, T68, X148, X150) → U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
less24_in_ag(0, s(T87)) → less24_out_ag(0, s(T87))
less24_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, less24_in_ag(T92, T93))
U7_ag(T92, T93, less24_out_ag(T92, T93)) → less24_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_out_gaag(T68, X148, X150, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U6_gaa(T66, T67, T68, X149, X150, p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)) → search_tree23_out_gaa(tree(T66, T67, T68), X149, X150)
U8_gaag(T51, X116, X115, T50, search_tree23_out_gaa(T51, X116, X115)) → p37_out_gaag(T51, X116, X115, T50)
p37_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, less24_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, less24_out_ag(T55, T50)) → p37_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X116, p37_out_gaag(T51, X116, X115, T50)) → search_tree23_out_gaa(tree(T50, T51, void), X116, T50)
U2_gaag(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, less24_in_gg(T17, T21))
less24_in_gg(0, s(T87)) → less24_out_gg(0, s(T87))
less24_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, less24_in_gg(T92, T93))
U7_gg(T92, T93, less24_out_gg(T92, T93)) → less24_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, less24_out_gg(T17, T21)) → p21_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X88, p21_out_gaag(T39, X87, X88, T38)) → search_tree23_out_gaa(tree(T38, void, T39), T38, X88)
U1_gaag(T18, X51, X52, T17, search_tree23_out_gaa(T18, X51, X52)) → p21_out_gaag(T18, X51, X52, T17)
U15_g(T17, T18, p21_out_gaag(T18, X51, X52, T17)) → search_tree1_out_g(tree(T17, void, T18))
search_tree1_in_g(tree(T104, T105, void)) → U16_g(T104, T105, p37_in_gaag(T105, X206, X205, T104))
U16_g(T104, T105, p37_out_gaag(T105, X206, X205, T104)) → search_tree1_out_g(tree(T104, T105, void))
search_tree1_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
U17_g(T114, T115, T116, p41_out_gaaggaa(T115, X235, X233, T114, T116, X234, X236)) → search_tree1_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_tree1_in_g(x1)  =  search_tree1_in_g(x1)
void  =  void
search_tree1_out_g(x1)  =  search_tree1_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
p21_in_gaag(x1, x2, x3, x4)  =  p21_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_tree23_in_gaa(x1, x2, x3)  =  search_tree23_in_gaa(x1)
search_tree23_out_gaa(x1, x2, x3)  =  search_tree23_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
p37_in_gaag(x1, x2, x3, x4)  =  p37_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
p41_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
p41_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
less24_in_gg(x1, x2)  =  less24_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
less24_out_gg(x1, x2)  =  less24_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
p21_out_gaag(x1, x2, x3, x4)  =  p21_out_gaag(x2)
less24_in_ag(x1, x2)  =  less24_in_ag(x2)
less24_out_ag(x1, x2)  =  less24_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
p37_out_gaag(x1, x2, x3, x4)  =  p37_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
SEARCH_TREE1_IN_G(x1)  =  SEARCH_TREE1_IN_G(x1)
U15_G(x1, x2, x3)  =  U15_G(x3)
P21_IN_GAAG(x1, x2, x3, x4)  =  P21_IN_GAAG(x1, x4)
U1_GAAG(x1, x2, x3, x4, x5)  =  U1_GAAG(x5)
SEARCH_TREE23_IN_GAA(x1, x2, x3)  =  SEARCH_TREE23_IN_GAA(x1)
U4_GAA(x1, x2, x3, x4)  =  U4_GAA(x1, x4)
U2_GAAG(x1, x2, x3, x4, x5)  =  U2_GAAG(x4, x5)
U5_GAA(x1, x2, x3, x4)  =  U5_GAA(x4)
P37_IN_GAAG(x1, x2, x3, x4)  =  P37_IN_GAAG(x1, x4)
U8_GAAG(x1, x2, x3, x4, x5)  =  U8_GAAG(x5)
U6_GAA(x1, x2, x3, x4, x5, x6)  =  U6_GAA(x6)
P41_IN_GAAGGAA(x1, x2, x3, x4, x5, x6, x7)  =  P41_IN_GAAGGAA(x1, x4, x5)
U11_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_GAAGGAA(x8)
U12_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_GAAGGAA(x4, x5, x8)
U13_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_GAAGGAA(x2, x4, x5, x8)
LESS24_IN_AG(x1, x2)  =  LESS24_IN_AG(x2)
U7_AG(x1, x2, x3)  =  U7_AG(x3)
U14_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_GAAGGAA(x2, x8)
U9_GAAG(x1, x2, x3, x4, x5)  =  U9_GAAG(x4, x5)
U10_GAAG(x1, x2, x3, x4, x5)  =  U10_GAAG(x2, x5)
U3_GAAG(x1, x2, x3, x4, x5)  =  U3_GAAG(x2, x5)
LESS24_IN_GG(x1, x2)  =  LESS24_IN_GG(x1, x2)
U7_GG(x1, x2, x3)  =  U7_GG(x3)
U16_G(x1, x2, x3)  =  U16_G(x3)
U17_G(x1, x2, x3, x4)  =  U17_G(x4)

We have to consider all (P,R,Pi)-chains

(7) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 22 less nodes.

(8) Complex Obligation (AND)

(9) Obligation:

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

LESS24_IN_GG(s(T92), s(T93)) → LESS24_IN_GG(T92, T93)

The TRS R consists of the following rules:

search_tree1_in_g(void) → search_tree1_out_g(void)
search_tree1_in_g(tree(T8, void, void)) → search_tree1_out_g(tree(T8, void, void))
search_tree1_in_g(tree(T17, void, T18)) → U15_g(T17, T18, p21_in_gaag(T18, X51, X52, T17))
p21_in_gaag(T18, X51, X52, T17) → U1_gaag(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
search_tree23_in_gaa(tree(T29, void, void), T29, T29) → search_tree23_out_gaa(tree(T29, void, void), T29, T29)
search_tree23_in_gaa(tree(T38, void, T39), T38, X88) → U4_gaa(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
p21_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
search_tree23_in_gaa(tree(T50, T51, void), X116, T50) → U5_gaa(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
p37_in_gaag(T51, X116, X115, T50) → U8_gaag(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
search_tree23_in_gaa(tree(T66, T67, T68), X149, X150) → U6_gaa(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150) → U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_out_gaa(T67, X149, X147)) → p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)
p41_in_gaaggaa(T67, T71, T72, T66, T68, X148, X150) → U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
less24_in_ag(0, s(T87)) → less24_out_ag(0, s(T87))
less24_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, less24_in_ag(T92, T93))
U7_ag(T92, T93, less24_out_ag(T92, T93)) → less24_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_out_gaag(T68, X148, X150, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U6_gaa(T66, T67, T68, X149, X150, p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)) → search_tree23_out_gaa(tree(T66, T67, T68), X149, X150)
U8_gaag(T51, X116, X115, T50, search_tree23_out_gaa(T51, X116, X115)) → p37_out_gaag(T51, X116, X115, T50)
p37_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, less24_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, less24_out_ag(T55, T50)) → p37_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X116, p37_out_gaag(T51, X116, X115, T50)) → search_tree23_out_gaa(tree(T50, T51, void), X116, T50)
U2_gaag(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, less24_in_gg(T17, T21))
less24_in_gg(0, s(T87)) → less24_out_gg(0, s(T87))
less24_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, less24_in_gg(T92, T93))
U7_gg(T92, T93, less24_out_gg(T92, T93)) → less24_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, less24_out_gg(T17, T21)) → p21_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X88, p21_out_gaag(T39, X87, X88, T38)) → search_tree23_out_gaa(tree(T38, void, T39), T38, X88)
U1_gaag(T18, X51, X52, T17, search_tree23_out_gaa(T18, X51, X52)) → p21_out_gaag(T18, X51, X52, T17)
U15_g(T17, T18, p21_out_gaag(T18, X51, X52, T17)) → search_tree1_out_g(tree(T17, void, T18))
search_tree1_in_g(tree(T104, T105, void)) → U16_g(T104, T105, p37_in_gaag(T105, X206, X205, T104))
U16_g(T104, T105, p37_out_gaag(T105, X206, X205, T104)) → search_tree1_out_g(tree(T104, T105, void))
search_tree1_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
U17_g(T114, T115, T116, p41_out_gaaggaa(T115, X235, X233, T114, T116, X234, X236)) → search_tree1_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_tree1_in_g(x1)  =  search_tree1_in_g(x1)
void  =  void
search_tree1_out_g(x1)  =  search_tree1_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
p21_in_gaag(x1, x2, x3, x4)  =  p21_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_tree23_in_gaa(x1, x2, x3)  =  search_tree23_in_gaa(x1)
search_tree23_out_gaa(x1, x2, x3)  =  search_tree23_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
p37_in_gaag(x1, x2, x3, x4)  =  p37_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
p41_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
p41_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
less24_in_gg(x1, x2)  =  less24_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
less24_out_gg(x1, x2)  =  less24_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
p21_out_gaag(x1, x2, x3, x4)  =  p21_out_gaag(x2)
less24_in_ag(x1, x2)  =  less24_in_ag(x2)
less24_out_ag(x1, x2)  =  less24_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
p37_out_gaag(x1, x2, x3, x4)  =  p37_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
LESS24_IN_GG(x1, x2)  =  LESS24_IN_GG(x1, x2)

We have to consider all (P,R,Pi)-chains

(10) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(11) Obligation:

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

LESS24_IN_GG(s(T92), s(T93)) → LESS24_IN_GG(T92, T93)

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

(12) PiDPToQDPProof (EQUIVALENT transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(13) Obligation:

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

LESS24_IN_GG(s(T92), s(T93)) → LESS24_IN_GG(T92, T93)

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

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

  • LESS24_IN_GG(s(T92), s(T93)) → LESS24_IN_GG(T92, T93)
    The graph contains the following edges 1 > 1, 2 > 2

(15) YES

(16) Obligation:

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

LESS24_IN_AG(s(T92), s(T93)) → LESS24_IN_AG(T92, T93)

The TRS R consists of the following rules:

search_tree1_in_g(void) → search_tree1_out_g(void)
search_tree1_in_g(tree(T8, void, void)) → search_tree1_out_g(tree(T8, void, void))
search_tree1_in_g(tree(T17, void, T18)) → U15_g(T17, T18, p21_in_gaag(T18, X51, X52, T17))
p21_in_gaag(T18, X51, X52, T17) → U1_gaag(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
search_tree23_in_gaa(tree(T29, void, void), T29, T29) → search_tree23_out_gaa(tree(T29, void, void), T29, T29)
search_tree23_in_gaa(tree(T38, void, T39), T38, X88) → U4_gaa(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
p21_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
search_tree23_in_gaa(tree(T50, T51, void), X116, T50) → U5_gaa(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
p37_in_gaag(T51, X116, X115, T50) → U8_gaag(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
search_tree23_in_gaa(tree(T66, T67, T68), X149, X150) → U6_gaa(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150) → U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_out_gaa(T67, X149, X147)) → p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)
p41_in_gaaggaa(T67, T71, T72, T66, T68, X148, X150) → U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
less24_in_ag(0, s(T87)) → less24_out_ag(0, s(T87))
less24_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, less24_in_ag(T92, T93))
U7_ag(T92, T93, less24_out_ag(T92, T93)) → less24_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_out_gaag(T68, X148, X150, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U6_gaa(T66, T67, T68, X149, X150, p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)) → search_tree23_out_gaa(tree(T66, T67, T68), X149, X150)
U8_gaag(T51, X116, X115, T50, search_tree23_out_gaa(T51, X116, X115)) → p37_out_gaag(T51, X116, X115, T50)
p37_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, less24_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, less24_out_ag(T55, T50)) → p37_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X116, p37_out_gaag(T51, X116, X115, T50)) → search_tree23_out_gaa(tree(T50, T51, void), X116, T50)
U2_gaag(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, less24_in_gg(T17, T21))
less24_in_gg(0, s(T87)) → less24_out_gg(0, s(T87))
less24_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, less24_in_gg(T92, T93))
U7_gg(T92, T93, less24_out_gg(T92, T93)) → less24_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, less24_out_gg(T17, T21)) → p21_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X88, p21_out_gaag(T39, X87, X88, T38)) → search_tree23_out_gaa(tree(T38, void, T39), T38, X88)
U1_gaag(T18, X51, X52, T17, search_tree23_out_gaa(T18, X51, X52)) → p21_out_gaag(T18, X51, X52, T17)
U15_g(T17, T18, p21_out_gaag(T18, X51, X52, T17)) → search_tree1_out_g(tree(T17, void, T18))
search_tree1_in_g(tree(T104, T105, void)) → U16_g(T104, T105, p37_in_gaag(T105, X206, X205, T104))
U16_g(T104, T105, p37_out_gaag(T105, X206, X205, T104)) → search_tree1_out_g(tree(T104, T105, void))
search_tree1_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
U17_g(T114, T115, T116, p41_out_gaaggaa(T115, X235, X233, T114, T116, X234, X236)) → search_tree1_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_tree1_in_g(x1)  =  search_tree1_in_g(x1)
void  =  void
search_tree1_out_g(x1)  =  search_tree1_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
p21_in_gaag(x1, x2, x3, x4)  =  p21_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_tree23_in_gaa(x1, x2, x3)  =  search_tree23_in_gaa(x1)
search_tree23_out_gaa(x1, x2, x3)  =  search_tree23_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
p37_in_gaag(x1, x2, x3, x4)  =  p37_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
p41_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
p41_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
less24_in_gg(x1, x2)  =  less24_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
less24_out_gg(x1, x2)  =  less24_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
p21_out_gaag(x1, x2, x3, x4)  =  p21_out_gaag(x2)
less24_in_ag(x1, x2)  =  less24_in_ag(x2)
less24_out_ag(x1, x2)  =  less24_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
p37_out_gaag(x1, x2, x3, x4)  =  p37_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
LESS24_IN_AG(x1, x2)  =  LESS24_IN_AG(x2)

We have to consider all (P,R,Pi)-chains

(17) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(18) Obligation:

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

LESS24_IN_AG(s(T92), s(T93)) → LESS24_IN_AG(T92, T93)

R is empty.
The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
LESS24_IN_AG(x1, x2)  =  LESS24_IN_AG(x2)

We have to consider all (P,R,Pi)-chains

(19) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(20) Obligation:

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

LESS24_IN_AG(s(T93)) → LESS24_IN_AG(T93)

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

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

  • LESS24_IN_AG(s(T93)) → LESS24_IN_AG(T93)
    The graph contains the following edges 1 > 1

(22) YES

(23) Obligation:

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

P21_IN_GAAG(T18, X51, X52, T17) → SEARCH_TREE23_IN_GAA(T18, X51, X52)
SEARCH_TREE23_IN_GAA(tree(T38, void, T39), T38, X88) → P21_IN_GAAG(T39, X87, X88, T38)
SEARCH_TREE23_IN_GAA(tree(T50, T51, void), X116, T50) → P37_IN_GAAG(T51, X116, X115, T50)
P37_IN_GAAG(T51, X116, X115, T50) → SEARCH_TREE23_IN_GAA(T51, X116, X115)
SEARCH_TREE23_IN_GAA(tree(T66, T67, T68), X149, X150) → P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150)
P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150) → SEARCH_TREE23_IN_GAA(T67, X149, X147)
P41_IN_GAAGGAA(T67, T71, T72, T66, T68, X148, X150) → U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → P21_IN_GAAG(T68, X148, X150, T66)

The TRS R consists of the following rules:

search_tree1_in_g(void) → search_tree1_out_g(void)
search_tree1_in_g(tree(T8, void, void)) → search_tree1_out_g(tree(T8, void, void))
search_tree1_in_g(tree(T17, void, T18)) → U15_g(T17, T18, p21_in_gaag(T18, X51, X52, T17))
p21_in_gaag(T18, X51, X52, T17) → U1_gaag(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
search_tree23_in_gaa(tree(T29, void, void), T29, T29) → search_tree23_out_gaa(tree(T29, void, void), T29, T29)
search_tree23_in_gaa(tree(T38, void, T39), T38, X88) → U4_gaa(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
p21_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
search_tree23_in_gaa(tree(T50, T51, void), X116, T50) → U5_gaa(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
p37_in_gaag(T51, X116, X115, T50) → U8_gaag(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
search_tree23_in_gaa(tree(T66, T67, T68), X149, X150) → U6_gaa(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150) → U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_out_gaa(T67, X149, X147)) → p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)
p41_in_gaaggaa(T67, T71, T72, T66, T68, X148, X150) → U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
less24_in_ag(0, s(T87)) → less24_out_ag(0, s(T87))
less24_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, less24_in_ag(T92, T93))
U7_ag(T92, T93, less24_out_ag(T92, T93)) → less24_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_out_gaag(T68, X148, X150, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U6_gaa(T66, T67, T68, X149, X150, p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)) → search_tree23_out_gaa(tree(T66, T67, T68), X149, X150)
U8_gaag(T51, X116, X115, T50, search_tree23_out_gaa(T51, X116, X115)) → p37_out_gaag(T51, X116, X115, T50)
p37_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, less24_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, less24_out_ag(T55, T50)) → p37_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X116, p37_out_gaag(T51, X116, X115, T50)) → search_tree23_out_gaa(tree(T50, T51, void), X116, T50)
U2_gaag(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, less24_in_gg(T17, T21))
less24_in_gg(0, s(T87)) → less24_out_gg(0, s(T87))
less24_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, less24_in_gg(T92, T93))
U7_gg(T92, T93, less24_out_gg(T92, T93)) → less24_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, less24_out_gg(T17, T21)) → p21_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X88, p21_out_gaag(T39, X87, X88, T38)) → search_tree23_out_gaa(tree(T38, void, T39), T38, X88)
U1_gaag(T18, X51, X52, T17, search_tree23_out_gaa(T18, X51, X52)) → p21_out_gaag(T18, X51, X52, T17)
U15_g(T17, T18, p21_out_gaag(T18, X51, X52, T17)) → search_tree1_out_g(tree(T17, void, T18))
search_tree1_in_g(tree(T104, T105, void)) → U16_g(T104, T105, p37_in_gaag(T105, X206, X205, T104))
U16_g(T104, T105, p37_out_gaag(T105, X206, X205, T104)) → search_tree1_out_g(tree(T104, T105, void))
search_tree1_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, p41_in_gaaggaa(T115, X235, X233, T114, T116, X234, X236))
U17_g(T114, T115, T116, p41_out_gaaggaa(T115, X235, X233, T114, T116, X234, X236)) → search_tree1_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_tree1_in_g(x1)  =  search_tree1_in_g(x1)
void  =  void
search_tree1_out_g(x1)  =  search_tree1_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
p21_in_gaag(x1, x2, x3, x4)  =  p21_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_tree23_in_gaa(x1, x2, x3)  =  search_tree23_in_gaa(x1)
search_tree23_out_gaa(x1, x2, x3)  =  search_tree23_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
p37_in_gaag(x1, x2, x3, x4)  =  p37_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
p41_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
p41_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
less24_in_gg(x1, x2)  =  less24_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
less24_out_gg(x1, x2)  =  less24_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
p21_out_gaag(x1, x2, x3, x4)  =  p21_out_gaag(x2)
less24_in_ag(x1, x2)  =  less24_in_ag(x2)
less24_out_ag(x1, x2)  =  less24_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
p37_out_gaag(x1, x2, x3, x4)  =  p37_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
P21_IN_GAAG(x1, x2, x3, x4)  =  P21_IN_GAAG(x1, x4)
SEARCH_TREE23_IN_GAA(x1, x2, x3)  =  SEARCH_TREE23_IN_GAA(x1)
P37_IN_GAAG(x1, x2, x3, x4)  =  P37_IN_GAAG(x1, x4)
P41_IN_GAAGGAA(x1, x2, x3, x4, x5, x6, x7)  =  P41_IN_GAAGGAA(x1, x4, x5)
U12_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_GAAGGAA(x4, x5, x8)
U13_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_GAAGGAA(x2, x4, x5, x8)

We have to consider all (P,R,Pi)-chains

(24) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(25) Obligation:

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

P21_IN_GAAG(T18, X51, X52, T17) → SEARCH_TREE23_IN_GAA(T18, X51, X52)
SEARCH_TREE23_IN_GAA(tree(T38, void, T39), T38, X88) → P21_IN_GAAG(T39, X87, X88, T38)
SEARCH_TREE23_IN_GAA(tree(T50, T51, void), X116, T50) → P37_IN_GAAG(T51, X116, X115, T50)
P37_IN_GAAG(T51, X116, X115, T50) → SEARCH_TREE23_IN_GAA(T51, X116, X115)
SEARCH_TREE23_IN_GAA(tree(T66, T67, T68), X149, X150) → P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150)
P41_IN_GAAGGAA(T67, X149, X147, T66, T68, X148, X150) → SEARCH_TREE23_IN_GAA(T67, X149, X147)
P41_IN_GAAGGAA(T67, T71, T72, T66, T68, X148, X150) → U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U12_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
U13_GAAGGAA(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → P21_IN_GAAG(T68, X148, X150, T66)

The TRS R consists of the following rules:

search_tree23_in_gaa(tree(T29, void, void), T29, T29) → search_tree23_out_gaa(tree(T29, void, void), T29, T29)
search_tree23_in_gaa(tree(T38, void, T39), T38, X88) → U4_gaa(T38, T39, X88, p21_in_gaag(T39, X87, X88, T38))
search_tree23_in_gaa(tree(T50, T51, void), X116, T50) → U5_gaa(T50, T51, X116, p37_in_gaag(T51, X116, X115, T50))
search_tree23_in_gaa(tree(T66, T67, T68), X149, X150) → U6_gaa(T66, T67, T68, X149, X150, p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150))
less24_in_ag(0, s(T87)) → less24_out_ag(0, s(T87))
less24_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, less24_in_ag(T92, T93))
U4_gaa(T38, T39, X88, p21_out_gaag(T39, X87, X88, T38)) → search_tree23_out_gaa(tree(T38, void, T39), T38, X88)
U5_gaa(T50, T51, X116, p37_out_gaag(T51, X116, X115, T50)) → search_tree23_out_gaa(tree(T50, T51, void), X116, T50)
U6_gaa(T66, T67, T68, X149, X150, p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)) → search_tree23_out_gaa(tree(T66, T67, T68), X149, X150)
U7_ag(T92, T93, less24_out_ag(T92, T93)) → less24_out_ag(s(T92), s(T93))
p21_in_gaag(T18, X51, X52, T17) → U1_gaag(T18, X51, X52, T17, search_tree23_in_gaa(T18, X51, X52))
p21_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_tree23_in_gaa(T18, T21, T22))
p37_in_gaag(T51, X116, X115, T50) → U8_gaag(T51, X116, X115, T50, search_tree23_in_gaa(T51, X116, X115))
p37_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_tree23_in_gaa(T51, T54, T55))
p41_in_gaaggaa(T67, X149, X147, T66, T68, X148, X150) → U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_in_gaa(T67, X149, X147))
p41_in_gaaggaa(T67, T71, T72, T66, T68, X148, X150) → U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_in_gaa(T67, T71, T72))
U1_gaag(T18, X51, X52, T17, search_tree23_out_gaa(T18, X51, X52)) → p21_out_gaag(T18, X51, X52, T17)
U2_gaag(T18, T21, T22, T17, search_tree23_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, less24_in_gg(T17, T21))
U8_gaag(T51, X116, X115, T50, search_tree23_out_gaa(T51, X116, X115)) → p37_out_gaag(T51, X116, X115, T50)
U9_gaag(T51, T54, T55, T50, search_tree23_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, less24_in_ag(T55, T50))
U11_gaaggaa(T67, X149, X147, T66, T68, X148, X150, search_tree23_out_gaa(T67, X149, X147)) → p41_out_gaaggaa(T67, X149, X147, T66, T68, X148, X150)
U12_gaaggaa(T67, T71, T72, T66, T68, X148, X150, search_tree23_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_in_ag(T72, T66))
U3_gaag(T18, T21, T22, T17, less24_out_gg(T17, T21)) → p21_out_gaag(T18, T21, T22, T17)
U10_gaag(T51, T54, T55, T50, less24_out_ag(T55, T50)) → p37_out_gaag(T51, T54, T55, T50)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U13_gaaggaa(T67, T71, T72, T66, T68, X148, X150, less24_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_in_gaag(T68, X148, X150, T66))
less24_in_gg(0, s(T87)) → less24_out_gg(0, s(T87))
less24_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, less24_in_gg(T92, T93))
U14_gaaggaa(T67, T71, T72, T66, T68, X148, X150, p21_out_gaag(T68, X148, X150, T66)) → p41_out_gaaggaa(T67, T71, T72, T66, T68, X148, X150)
U7_gg(T92, T93, less24_out_gg(T92, T93)) → less24_out_gg(s(T92), s(T93))

The argument filtering Pi contains the following mapping:
void  =  void
tree(x1, x2, x3)  =  tree(x1, x2, x3)
p21_in_gaag(x1, x2, x3, x4)  =  p21_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_tree23_in_gaa(x1, x2, x3)  =  search_tree23_in_gaa(x1)
search_tree23_out_gaa(x1, x2, x3)  =  search_tree23_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
p37_in_gaag(x1, x2, x3, x4)  =  p37_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
p41_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
p41_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  p41_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
less24_in_gg(x1, x2)  =  less24_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
less24_out_gg(x1, x2)  =  less24_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
p21_out_gaag(x1, x2, x3, x4)  =  p21_out_gaag(x2)
less24_in_ag(x1, x2)  =  less24_in_ag(x2)
less24_out_ag(x1, x2)  =  less24_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
p37_out_gaag(x1, x2, x3, x4)  =  p37_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
P21_IN_GAAG(x1, x2, x3, x4)  =  P21_IN_GAAG(x1, x4)
SEARCH_TREE23_IN_GAA(x1, x2, x3)  =  SEARCH_TREE23_IN_GAA(x1)
P37_IN_GAAG(x1, x2, x3, x4)  =  P37_IN_GAAG(x1, x4)
P41_IN_GAAGGAA(x1, x2, x3, x4, x5, x6, x7)  =  P41_IN_GAAGGAA(x1, x4, x5)
U12_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_GAAGGAA(x4, x5, x8)
U13_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_GAAGGAA(x2, x4, x5, x8)

We have to consider all (P,R,Pi)-chains

(26) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(27) Obligation:

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

P21_IN_GAAG(T18, T17) → SEARCH_TREE23_IN_GAA(T18)
SEARCH_TREE23_IN_GAA(tree(T38, void, T39)) → P21_IN_GAAG(T39, T38)
SEARCH_TREE23_IN_GAA(tree(T50, T51, void)) → P37_IN_GAAG(T51, T50)
P37_IN_GAAG(T51, T50) → SEARCH_TREE23_IN_GAA(T51)
SEARCH_TREE23_IN_GAA(tree(T66, T67, T68)) → P41_IN_GAAGGAA(T67, T66, T68)
P41_IN_GAAGGAA(T67, T66, T68) → SEARCH_TREE23_IN_GAA(T67)
P41_IN_GAAGGAA(T67, T66, T68) → U12_GAAGGAA(T66, T68, search_tree23_in_gaa(T67))
U12_GAAGGAA(T66, T68, search_tree23_out_gaa(T71)) → U13_GAAGGAA(T71, T66, T68, less24_in_ag(T66))
U13_GAAGGAA(T71, T66, T68, less24_out_ag(T72)) → P21_IN_GAAG(T68, T66)

The TRS R consists of the following rules:

search_tree23_in_gaa(tree(T29, void, void)) → search_tree23_out_gaa(T29)
search_tree23_in_gaa(tree(T38, void, T39)) → U4_gaa(T38, p21_in_gaag(T39, T38))
search_tree23_in_gaa(tree(T50, T51, void)) → U5_gaa(p37_in_gaag(T51, T50))
search_tree23_in_gaa(tree(T66, T67, T68)) → U6_gaa(p41_in_gaaggaa(T67, T66, T68))
less24_in_ag(s(T87)) → less24_out_ag(0)
less24_in_ag(s(T93)) → U7_ag(less24_in_ag(T93))
U4_gaa(T38, p21_out_gaag(X87)) → search_tree23_out_gaa(T38)
U5_gaa(p37_out_gaag(X116)) → search_tree23_out_gaa(X116)
U6_gaa(p41_out_gaaggaa(X149)) → search_tree23_out_gaa(X149)
U7_ag(less24_out_ag(T92)) → less24_out_ag(s(T92))
p21_in_gaag(T18, T17) → U1_gaag(search_tree23_in_gaa(T18))
p21_in_gaag(T18, T17) → U2_gaag(T17, search_tree23_in_gaa(T18))
p37_in_gaag(T51, T50) → U8_gaag(search_tree23_in_gaa(T51))
p37_in_gaag(T51, T50) → U9_gaag(T50, search_tree23_in_gaa(T51))
p41_in_gaaggaa(T67, T66, T68) → U11_gaaggaa(search_tree23_in_gaa(T67))
p41_in_gaaggaa(T67, T66, T68) → U12_gaaggaa(T66, T68, search_tree23_in_gaa(T67))
U1_gaag(search_tree23_out_gaa(X51)) → p21_out_gaag(X51)
U2_gaag(T17, search_tree23_out_gaa(T21)) → U3_gaag(T21, less24_in_gg(T17, T21))
U8_gaag(search_tree23_out_gaa(X116)) → p37_out_gaag(X116)
U9_gaag(T50, search_tree23_out_gaa(T54)) → U10_gaag(T54, less24_in_ag(T50))
U11_gaaggaa(search_tree23_out_gaa(X149)) → p41_out_gaaggaa(X149)
U12_gaaggaa(T66, T68, search_tree23_out_gaa(T71)) → U13_gaaggaa(T71, T66, T68, less24_in_ag(T66))
U3_gaag(T21, less24_out_gg) → p21_out_gaag(T21)
U10_gaag(T54, less24_out_ag(T55)) → p37_out_gaag(T54)
U13_gaaggaa(T71, T66, T68, less24_out_ag(T72)) → p41_out_gaaggaa(T71)
U13_gaaggaa(T71, T66, T68, less24_out_ag(T72)) → U14_gaaggaa(T71, p21_in_gaag(T68, T66))
less24_in_gg(0, s(T87)) → less24_out_gg
less24_in_gg(s(T92), s(T93)) → U7_gg(less24_in_gg(T92, T93))
U14_gaaggaa(T71, p21_out_gaag(X148)) → p41_out_gaaggaa(T71)
U7_gg(less24_out_gg) → less24_out_gg

The set Q consists of the following terms:

search_tree23_in_gaa(x0)
less24_in_ag(x0)
U4_gaa(x0, x1)
U5_gaa(x0)
U6_gaa(x0)
U7_ag(x0)
p21_in_gaag(x0, x1)
p37_in_gaag(x0, x1)
p41_in_gaaggaa(x0, x1, x2)
U1_gaag(x0)
U2_gaag(x0, x1)
U8_gaag(x0)
U9_gaag(x0, x1)
U11_gaaggaa(x0)
U12_gaaggaa(x0, x1, x2)
U3_gaag(x0, x1)
U10_gaag(x0, x1)
U13_gaaggaa(x0, x1, x2, x3)
less24_in_gg(x0, x1)
U14_gaaggaa(x0, x1)
U7_gg(x0)

We have to consider all (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:

  • SEARCH_TREE23_IN_GAA(tree(T38, void, T39)) → P21_IN_GAAG(T39, T38)
    The graph contains the following edges 1 > 1, 1 > 2

  • U13_GAAGGAA(T71, T66, T68, less24_out_ag(T72)) → P21_IN_GAAG(T68, T66)
    The graph contains the following edges 3 >= 1, 2 >= 2

  • P21_IN_GAAG(T18, T17) → SEARCH_TREE23_IN_GAA(T18)
    The graph contains the following edges 1 >= 1

  • P37_IN_GAAG(T51, T50) → SEARCH_TREE23_IN_GAA(T51)
    The graph contains the following edges 1 >= 1

  • P41_IN_GAAGGAA(T67, T66, T68) → SEARCH_TREE23_IN_GAA(T67)
    The graph contains the following edges 1 >= 1

  • SEARCH_TREE23_IN_GAA(tree(T50, T51, void)) → P37_IN_GAAG(T51, T50)
    The graph contains the following edges 1 > 1, 1 > 2

  • SEARCH_TREE23_IN_GAA(tree(T66, T67, T68)) → P41_IN_GAAGGAA(T67, T66, T68)
    The graph contains the following edges 1 > 1, 1 > 2, 1 > 3

  • P41_IN_GAAGGAA(T67, T66, T68) → U12_GAAGGAA(T66, T68, search_tree23_in_gaa(T67))
    The graph contains the following edges 2 >= 1, 3 >= 2

  • U12_GAAGGAA(T66, T68, search_tree23_out_gaa(T71)) → U13_GAAGGAA(T71, T66, T68, less24_in_ag(T66))
    The graph contains the following edges 3 > 1, 1 >= 2, 2 >= 3

(29) YES