Certification Problem

Input (TPDB SRS_Standard/ICFP_2010/188674)

The rewrite relation of the following TRS is considered.

There are 180 ruless (increase limit for explicit display).

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by AProVE @ termCOMP 2023)

1 String Reversal

Since only unary symbols occur, one can reverse all terms and obtains the TRS

There are 180 ruless (increase limit for explicit display).

1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[1(x1)] = 1 · x1 + 2
[5(x1)] = 1 · x1
[4(x1)] = 1 · x1
[3(x1)] = 1 · x1 + 3
[0(x1)] = 1 · x1 + 2
[2(x1)] = 1 · x1 + 2
all of the following rules can be deleted.

There are 169 ruless (increase limit for explicit display).

1.1.1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
1#(5(4(3(5(5(4(0(4(3(1(2(0(1(0(0(x1)))))))))))))))) 0#(4(3(2(2(4(1(0(4(5(2(4(3(5(2(0(x1)))))))))))))))) (361)
1#(5(4(3(5(5(4(0(4(3(1(2(0(1(0(0(x1)))))))))))))))) 3#(2(2(4(1(0(4(5(2(4(3(5(2(0(x1)))))))))))))) (362)
1#(5(4(3(5(5(4(0(4(3(1(2(0(1(0(0(x1)))))))))))))))) 1#(0(4(5(2(4(3(5(2(0(x1)))))))))) (363)
1#(5(4(3(5(5(4(0(4(3(1(2(0(1(0(0(x1)))))))))))))))) 0#(4(5(2(4(3(5(2(0(x1))))))))) (364)
1#(5(4(3(5(5(4(0(4(3(1(2(0(1(0(0(x1)))))))))))))))) 3#(5(2(0(x1)))) (365)
1#(1(0(3(0(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))))))) 0#(0(2(3(2(0(0(5(2(2(0(4(5(2(2(5(x1)))))))))))))))) (366)
1#(1(0(3(0(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))))))) 0#(2(3(2(0(0(5(2(2(0(4(5(2(2(5(x1))))))))))))))) (367)
1#(1(0(3(0(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))))))) 3#(2(0(0(5(2(2(0(4(5(2(2(5(x1))))))))))))) (368)
1#(1(0(3(0(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))))))) 0#(0(5(2(2(0(4(5(2(2(5(x1))))))))))) (369)
1#(1(0(3(0(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))))))) 0#(5(2(2(0(4(5(2(2(5(x1)))))))))) (370)
1#(1(0(3(0(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))))))) 0#(4(5(2(2(5(x1)))))) (371)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(1(0(3(0(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))))))) (372)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(0(3(0(5(4(2(3(2(4(4(4(0(3(0(x1))))))))))))))) (373)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(3(0(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))))) (374)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(0(5(4(2(3(2(4(4(4(0(3(0(x1))))))))))))) (375)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(5(4(2(3(2(4(4(4(0(3(0(x1)))))))))))) (376)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(2(4(4(4(0(3(0(x1)))))))) (377)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(3(0(x1))) (378)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(5(2(4(5(5(2(3(5(3(1(3(1(3(5(0(x1)))))))))))))))) (379)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(5(3(1(3(1(3(5(0(x1))))))))) (380)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(1(3(1(3(5(0(x1))))))) (381)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(3(1(3(5(0(x1)))))) (382)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(1(3(5(0(x1))))) (383)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(3(5(0(x1)))) (384)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(5(0(x1))) (385)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(1(4(5(0(3(3(1(1(2(1(5(3(5(0(x1))))))))))))))) (386)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(4(5(0(3(3(1(1(2(1(5(3(5(0(x1)))))))))))))) (387)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(3(3(1(1(2(1(5(3(5(0(x1))))))))))) (388)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(3(1(1(2(1(5(3(5(0(x1)))))))))) (389)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(1(1(2(1(5(3(5(0(x1))))))))) (390)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(1(2(1(5(3(5(0(x1)))))))) (391)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(2(1(5(3(5(0(x1))))))) (392)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 1#(5(3(5(0(x1))))) (393)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(0(2(3(2(0(0(5(2(2(0(4(5(2(2(5(x1)))))))))))))))) (394)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(2(3(2(0(0(5(2(2(0(4(5(2(2(5(x1))))))))))))))) (395)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 3#(2(0(0(5(2(2(0(4(5(2(2(5(x1))))))))))))) (396)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(0(5(2(2(0(4(5(2(2(5(x1))))))))))) (397)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(5(2(2(0(4(5(2(2(5(x1)))))))))) (398)
1#(4(3(2(4(3(5(4(2(0(1(4(0(1(3(0(x1)))))))))))))))) 0#(4(5(2(2(5(x1)))))) (399)
3#(3(3(0(4(2(1(4(4(4(2(0(2(0(5(0(x1)))))))))))))))) 3#(5(2(4(5(5(2(3(5(3(1(3(1(3(5(0(x1)))))))))))))))) (400)
3#(3(3(0(4(2(1(4(4(4(2(0(2(0(5(0(x1)))))))))))))))) 3#(5(3(1(3(1(3(5(0(x1))))))))) (401)
3#(3(3(0(4(2(1(4(4(4(2(0(2(0(5(0(x1)))))))))))))))) 3#(1(3(1(3(5(0(x1))))))) (402)
3#(3(3(0(4(2(1(4(4(4(2(0(2(0(5(0(x1)))))))))))))))) 1#(3(1(3(5(0(x1)))))) (403)
3#(3(3(0(4(2(1(4(4(4(2(0(2(0(5(0(x1)))))))))))))))) 3#(1(3(5(0(x1))))) (404)
3#(3(3(0(4(2(1(4(4(4(2(0(2(0(5(0(x1)))))))))))))))) 1#(3(5(0(x1)))) (405)
3#(3(3(0(4(2(1(4(4(4(2(0(2(0(5(0(x1)))))))))))))))) 3#(5(0(x1))) (406)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 3#(3(4(2(4(2(3(5(3(2(0(1(x1)))))))))))) (407)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 3#(4(2(4(2(3(5(3(2(0(1(x1))))))))))) (408)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 3#(5(3(2(0(1(x1)))))) (409)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 3#(2(0(1(x1)))) (410)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 0#(1(x1)) (411)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 3#(1(2(4(5(4(2(2(3(4(1(1(3(1(2(3(x1)))))))))))))))) (412)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 1#(2(4(5(4(2(2(3(4(1(1(3(1(2(3(x1))))))))))))))) (413)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 3#(4(1(1(3(1(2(3(x1)))))))) (414)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 1#(1(3(1(2(3(x1)))))) (415)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 1#(3(1(2(3(x1))))) (416)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 3#(1(2(3(x1)))) (417)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 1#(2(3(x1))) (418)
3#(0(2(3(5(0(1(0(5(5(4(3(1(2(3(1(x1)))))))))))))))) 3#(x1) (419)
3#(0(5(1(0(3(0(4(3(0(5(3(4(3(4(3(x1)))))))))))))))) 3#(1(2(4(5(4(2(2(3(4(1(1(3(1(2(3(x1)))))))))))))))) (420)
3#(0(5(1(0(3(0(4(3(0(5(3(4(3(4(3(x1)))))))))))))))) 1#(2(4(5(4(2(2(3(4(1(1(3(1(2(3(x1))))))))))))))) (421)
3#(0(5(1(0(3(0(4(3(0(5(3(4(3(4(3(x1)))))))))))))))) 3#(4(1(1(3(1(2(3(x1)))))))) (422)
3#(0(5(1(0(3(0(4(3(0(5(3(4(3(4(3(x1)))))))))))))))) 1#(1(3(1(2(3(x1)))))) (423)
3#(0(5(1(0(3(0(4(3(0(5(3(4(3(4(3(x1)))))))))))))))) 1#(3(1(2(3(x1))))) (424)
3#(0(5(1(0(3(0(4(3(0(5(3(4(3(4(3(x1)))))))))))))))) 3#(1(2(3(x1)))) (425)
3#(0(5(1(0(3(0(4(3(0(5(3(4(3(4(3(x1)))))))))))))))) 1#(2(3(x1))) (426)
0#(5(0(3(2(4(2(5(1(0(5(3(5(4(2(4(x1)))))))))))))))) 0#(5(3(4(2(3(1(1(2(4(1(4(5(2(5(4(x1)))))))))))))))) (427)
0#(5(0(3(2(4(2(5(1(0(5(3(5(4(2(4(x1)))))))))))))))) 3#(4(2(3(1(1(2(4(1(4(5(2(5(4(x1)))))))))))))) (428)
0#(5(0(3(2(4(2(5(1(0(5(3(5(4(2(4(x1)))))))))))))))) 3#(1(1(2(4(1(4(5(2(5(4(x1))))))))))) (429)
0#(5(0(3(2(4(2(5(1(0(5(3(5(4(2(4(x1)))))))))))))))) 1#(1(2(4(1(4(5(2(5(4(x1)))))))))) (430)
0#(5(0(3(2(4(2(5(1(0(5(3(5(4(2(4(x1)))))))))))))))) 1#(2(4(1(4(5(2(5(4(x1))))))))) (431)
0#(5(0(3(2(4(2(5(1(0(5(3(5(4(2(4(x1)))))))))))))))) 1#(4(5(2(5(4(x1)))))) (432)

1.1.1.1 Dependency Graph Processor

The dependency pairs are split into 1 component.