Certification Problem

Input (TPDB SRS_Standard/ICFP_2010/85039)

The rewrite relation of the following TRS is considered.

0(1(1(2(x1)))) → 3(0(3(1(x1)))) (1)
1(3(3(4(2(x1))))) → 1(3(4(5(x1)))) (2)
3(2(0(5(4(x1))))) → 3(3(2(4(0(x1))))) (3)
0(2(5(3(2(2(x1)))))) → 3(5(5(0(2(x1))))) (4)
1(0(3(3(4(5(x1)))))) → 1(5(5(2(5(x1))))) (5)
1(1(2(3(4(2(x1)))))) → 1(2(2(1(5(x1))))) (6)
4(0(0(1(1(5(0(x1))))))) → 5(0(3(4(4(0(0(x1))))))) (7)
5(4(4(2(0(3(5(x1))))))) → 0(4(3(1(0(3(5(x1))))))) (8)
5(5(4(4(4(0(2(5(x1)))))))) → 5(2(1(0(3(0(2(0(2(x1))))))))) (9)
0(3(5(2(0(0(1(2(3(x1))))))))) → 2(1(3(4(1(4(3(x1))))))) (10)
5(3(3(4(3(2(4(2(4(x1))))))))) → 4(5(1(0(3(2(2(4(x1)))))))) (11)
0(5(1(5(2(4(4(2(4(5(x1)))))))))) → 1(3(1(5(5(5(2(0(2(2(x1)))))))))) (12)
0(5(3(3(5(5(5(4(2(4(x1)))))))))) → 0(4(5(1(5(0(5(3(4(x1))))))))) (13)
1(4(4(0(0(3(5(3(5(1(x1)))))))))) → 1(0(4(4(2(5(4(5(4(x1))))))))) (14)
4(0(2(5(5(3(3(3(2(5(x1)))))))))) → 4(2(4(2(4(5(0(1(x1)))))))) (15)
4(4(3(4(4(5(5(5(4(4(x1)))))))))) → 4(4(2(2(4(5(0(1(3(1(x1)))))))))) (16)
0(1(4(3(3(2(0(3(3(4(1(x1))))))))))) → 0(3(2(2(5(1(1(1(5(x1))))))))) (17)
0(5(1(3(4(3(4(5(3(4(0(x1))))))))))) → 4(5(4(2(4(0(5(2(4(3(0(x1))))))))))) (18)
4(0(0(0(2(3(1(0(1(0(2(x1))))))))))) → 4(3(3(4(3(3(3(0(5(5(x1)))))))))) (19)
5(0(4(2(5(1(1(5(5(4(4(2(x1)))))))))))) → 4(0(1(3(2(3(1(5(1(2(4(5(x1)))))))))))) (20)
1(1(0(2(3(2(0(5(1(0(0(4(0(x1))))))))))))) → 1(1(4(4(2(1(4(5(5(2(x1)))))))))) (21)
0(1(1(0(0(2(1(1(5(5(5(2(4(2(x1)))))))))))))) → 0(1(5(1(4(1(0(5(1(2(1(2(x1)))))))))))) (22)
2(3(3(2(1(3(0(4(2(4(5(0(2(2(x1)))))))))))))) → 3(4(1(5(3(0(1(0(5(3(3(4(4(x1))))))))))))) (23)
5(5(2(0(1(1(2(2(3(2(4(1(4(2(x1)))))))))))))) → 3(1(5(1(5(5(0(2(2(2(2(1(0(x1))))))))))))) (24)
4(0(0(0(3(3(3(4(0(3(0(2(4(4(5(x1))))))))))))))) → 4(3(5(3(3(5(0(3(5(5(2(1(0(x1))))))))))))) (25)
2(5(2(4(5(1(5(1(0(0(5(4(3(1(3(3(x1)))))))))))))))) → 2(3(5(4(4(4(2(1(5(0(0(4(0(2(4(3(x1)))))))))))))))) (26)
0(4(3(1(3(0(0(3(4(0(5(0(1(2(1(5(0(x1))))))))))))))))) → 0(0(1(0(4(1(4(4(1(4(3(2(1(3(1(4(x1)))))))))))))))) (27)
2(4(1(5(4(5(2(4(4(3(4(3(1(0(2(1(2(x1))))))))))))))))) → 3(5(5(5(1(1(0(3(3(5(2(2(3(4(4(0(4(x1))))))))))))))))) (28)
4(1(3(3(4(3(2(1(2(0(0(5(2(0(2(0(5(x1))))))))))))))))) → 5(5(1(4(3(4(4(0(0(5(1(2(2(2(0(x1))))))))))))))) (29)
0(5(1(1(1(4(5(4(5(1(1(1(1(1(3(5(2(0(x1)))))))))))))))))) → 5(3(0(2(3(4(0(5(5(3(1(3(2(0(2(5(5(5(5(4(x1)))))))))))))))))))) (30)
3(2(5(3(3(3(3(2(5(5(4(1(5(2(1(0(3(2(x1)))))))))))))))))) → 0(3(0(5(4(0(5(0(5(0(3(3(2(2(2(3(3(5(x1)))))))))))))))))) (31)
0(3(3(5(3(2(3(0(0(4(2(4(4(2(3(1(3(5(4(x1))))))))))))))))))) → 0(4(1(0(3(5(2(3(3(0(1(5(3(5(0(4(3(0(4(x1))))))))))))))))))) (32)
1(4(1(3(0(3(5(4(3(3(4(2(0(1(0(1(3(5(0(x1))))))))))))))))))) → 1(2(0(3(5(3(5(5(4(3(4(4(4(4(4(1(4(0(x1)))))))))))))))))) (33)
3(1(5(3(2(2(0(2(0(3(3(2(0(4(5(3(4(2(2(x1))))))))))))))))))) → 3(1(4(3(3(4(3(0(0(5(1(1(2(5(4(2(2(x1))))))))))))))))) (34)
3(2(5(3(0(3(5(1(3(2(3(0(4(2(2(3(4(5(3(x1))))))))))))))))))) → 0(1(1(0(5(0(3(0(4(0(3(0(3(2(0(1(3(0(0(x1))))))))))))))))))) (35)
3(3(4(5(5(4(2(3(0(0(4(2(1(3(5(4(1(5(3(x1))))))))))))))))))) → 0(1(1(4(2(1(0(0(5(2(5(3(1(4(4(1(0(2(4(x1))))))))))))))))))) (36)
4(0(4(2(1(3(1(2(3(4(3(2(5(5(2(4(2(4(4(x1))))))))))))))))))) → 5(4(1(0(2(2(4(0(0(1(0(0(4(0(1(0(4(2(4(4(x1)))))))))))))))))))) (37)
0(5(1(4(0(2(1(4(0(0(2(5(3(2(0(2(2(1(0(5(x1)))))))))))))))))))) → 0(5(5(4(4(2(3(2(5(5(0(2(3(4(1(1(0(0(5(x1))))))))))))))))))) (38)
3(3(3(1(4(3(2(0(2(5(4(1(2(2(0(1(5(4(0(4(x1)))))))))))))))))))) → 2(4(3(1(4(0(0(3(5(2(4(0(5(4(2(2(4(4(2(x1))))))))))))))))))) (39)
0(2(1(2(5(1(4(3(2(2(2(5(5(0(1(0(3(5(5(3(3(x1))))))))))))))))))))) → 5(4(2(1(5(3(0(4(2(4(0(0(3(3(1(4(0(0(0(5(3(x1))))))))))))))))))))) (40)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by matchbox @ termCOMP 2023)

1 Closure Under Flat Contexts

Using the flat contexts

{5(☐), 4(☐), 3(☐), 2(☐), 1(☐), 0(☐)}

We obtain the transformed TRS

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

1.1 Closure Under Flat Contexts

Using the flat contexts

{5(☐), 4(☐), 3(☐), 2(☐), 1(☐), 0(☐)}

We obtain the transformed TRS

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

1.1.1 Semantic Labeling

The following interpretations form a model of the rules.

As carrier we take the set {0,...,35}. Symbols are labeled by the interpretation of their arguments using the interpretations (modulo 36):

[5(x1)] = 6x1 + 0
[4(x1)] = 6x1 + 1
[3(x1)] = 6x1 + 2
[2(x1)] = 6x1 + 3
[1(x1)] = 6x1 + 4
[0(x1)] = 6x1 + 5

We obtain the labeled TRS

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

1.1.1.1 Rule Removal

Using the matrix interpretations of dimension 1 with strict dimension 1 over the rationals with delta = 1
[50(x1)] = x1 +
5
[56(x1)] = x1 +
130
[512(x1)] = x1 +
5
[518(x1)] = x1 +
0
[524(x1)] = x1 +
5
[530(x1)] = x1 +
0
[51(x1)] = x1 +
130
[57(x1)] = x1 +
130
[513(x1)] = x1 +
65
[519(x1)] = x1 +
65
[525(x1)] = x1 +
135
[531(x1)] = x1 +
65
[52(x1)] = x1 +
130
[58(x1)] = x1 +
0
[514(x1)] = x1 +
130
[520(x1)] = x1 +
135
[526(x1)] = x1 +
0
[532(x1)] = x1 +
0
[53(x1)] = x1 +
5
[59(x1)] = x1 +
130
[515(x1)] = x1 +
130
[521(x1)] = x1 +
5
[527(x1)] = x1 +
130
[533(x1)] = x1 +
130
[54(x1)] = x1 +
65
[510(x1)] = x1 +
5
[516(x1)] = x1 +
130
[522(x1)] = x1 +
5
[528(x1)] = x1 +
130
[534(x1)] = x1 +
130
[55(x1)] = x1 +
1
[511(x1)] = x1 +
131
[517(x1)] = x1 +
0
[523(x1)] = x1 +
131
[529(x1)] = x1 +
130
[535(x1)] = x1 +
131
[40(x1)] = x1 +
130
[46(x1)] = x1 +
0
[412(x1)] = x1 +
130
[418(x1)] = x1 +
130
[424(x1)] = x1 +
130
[430(x1)] = x1 +
130
[41(x1)] = x1 +
130
[47(x1)] = x1 +
1
[413(x1)] = x1 +
130
[419(x1)] = x1 +
0
[425(x1)] = x1 +
0
[431(x1)] = x1 +
0
[42(x1)] = x1 +
0
[48(x1)] = x1 +
130
[414(x1)] = x1 +
0
[420(x1)] = x1 +
130
[426(x1)] = x1 +
0
[432(x1)] = x1 +
0
[43(x1)] = x1 +
130
[49(x1)] = x1 +
130
[415(x1)] = x1 +
130
[421(x1)] = x1 +
130
[427(x1)] = x1 +
130
[433(x1)] = x1 +
135
[44(x1)] = x1 +
130
[410(x1)] = x1 +
0
[416(x1)] = x1 +
130
[422(x1)] = x1 +
130
[428(x1)] = x1 +
5
[434(x1)] = x1 +
5
[45(x1)] = x1 +
5
[411(x1)] = x1 +
5
[417(x1)] = x1 +
0
[423(x1)] = x1 +
130
[429(x1)] = x1 +
5
[435(x1)] = x1 +
0
[30(x1)] = x1 +
0
[36(x1)] = x1 +
130
[312(x1)] = x1 +
130
[318(x1)] = x1 +
0
[324(x1)] = x1 +
135
[330(x1)] = x1 +
0
[31(x1)] = x1 +
130
[37(x1)] = x1 +
0
[313(x1)] = x1 +
130
[319(x1)] = x1 +
130
[325(x1)] = x1 +
5
[331(x1)] = x1 +
130
[32(x1)] = x1 +
0
[38(x1)] = x1 +
130
[314(x1)] = x1 +
130
[320(x1)] = x1 +
130
[326(x1)] = x1 +
130
[332(x1)] = x1 +
0
[33(x1)] = x1 +
135
[39(x1)] = x1 +
65
[315(x1)] = x1 +
130
[321(x1)] = x1 +
0
[327(x1)] = x1 +
130
[333(x1)] = x1 +
135
[34(x1)] = x1 +
0
[310(x1)] = x1 +
0
[316(x1)] = x1 +
5
[322(x1)] = x1 +
0
[328(x1)] = x1 +
0
[334(x1)] = x1 +
130
[35(x1)] = x1 +
0
[311(x1)] = x1 +
130
[317(x1)] = x1 +
0
[323(x1)] = x1 +
0
[329(x1)] = x1 +
5
[335(x1)] = x1 +
130
[20(x1)] = x1 +
135
[26(x1)] = x1 +
0
[212(x1)] = x1 +
130
[218(x1)] = x1 +
130
[224(x1)] = x1 +
130
[230(x1)] = x1 +
130
[21(x1)] = x1 +
130
[27(x1)] = x1 +
135
[213(x1)] = x1 +
0
[219(x1)] = x1 +
0
[225(x1)] = x1 +
130
[231(x1)] = x1 +
1
[22(x1)] = x1 +
0
[28(x1)] = x1 +
5
[214(x1)] = x1 +
130
[220(x1)] = x1 +
135
[226(x1)] = x1 +
5
[232(x1)] = x1 +
130
[23(x1)] = x1 +
0
[29(x1)] = x1 +
0
[215(x1)] = x1 +
130
[221(x1)] = x1 +
5
[227(x1)] = x1 +
0
[233(x1)] = x1 +
130
[24(x1)] = x1 +
0
[210(x1)] = x1 +
130
[216(x1)] = x1 +
130
[222(x1)] = x1 +
130
[228(x1)] = x1 +
130
[234(x1)] = x1 +
0
[25(x1)] = x1 +
130
[211(x1)] = x1 +
130
[217(x1)] = x1 +
130
[223(x1)] = x1 +
0
[229(x1)] = x1 +
135
[235(x1)] = x1 +
130
[10(x1)] = x1 +
5
[16(x1)] = x1 +
130
[112(x1)] = x1 +
0
[118(x1)] = x1 +
130
[124(x1)] = x1 +
5
[130(x1)] = x1 +
1
[11(x1)] = x1 +
130
[17(x1)] = x1 +
65
[113(x1)] = x1 +
65
[119(x1)] = x1 +
5
[125(x1)] = x1 +
130
[131(x1)] = x1 +
0
[12(x1)] = x1 +
130
[18(x1)] = x1 +
0
[114(x1)] = x1 +
130
[120(x1)] = x1 +
135
[126(x1)] = x1 +
0
[132(x1)] = x1 +
130
[13(x1)] = x1 +
130
[19(x1)] = x1 +
5
[115(x1)] = x1 +
135
[121(x1)] = x1 +
130
[127(x1)] = x1 +
135
[133(x1)] = x1 +
135
[14(x1)] = x1 +
131
[110(x1)] = x1 +
0
[116(x1)] = x1 +
130
[122(x1)] = x1 +
130
[128(x1)] = x1 +
130
[134(x1)] = x1 +
5
[15(x1)] = x1 +
0
[111(x1)] = x1 +
0
[117(x1)] = x1 +
0
[123(x1)] = x1 +
130
[129(x1)] = x1 +
130
[135(x1)] = x1 +
0
[00(x1)] = x1 +
0
[06(x1)] = x1 +
5
[012(x1)] = x1 +
0
[018(x1)] = x1 +
5
[024(x1)] = x1 +
130
[030(x1)] = x1 +
5
[01(x1)] = x1 +
0
[07(x1)] = x1 +
0
[013(x1)] = x1 +
0
[019(x1)] = x1 +
130
[025(x1)] = x1 +
0
[031(x1)] = x1 +
0
[02(x1)] = x1 +
130
[08(x1)] = x1 +
0
[014(x1)] = x1 +
0
[020(x1)] = x1 +
0
[026(x1)] = x1 +
0
[032(x1)] = x1 +
0
[03(x1)] = x1 +
130
[09(x1)] = x1 +
1
[015(x1)] = x1 +
70
[021(x1)] = x1 +
0
[027(x1)] = x1 +
130
[033(x1)] = x1 +
130
[04(x1)] = x1 +
130
[010(x1)] = x1 +
130
[016(x1)] = x1 +
0
[022(x1)] = x1 +
130
[028(x1)] = x1 +
131
[034(x1)] = x1 +
0
[05(x1)] = x1 +
0
[011(x1)] = x1 +
130
[017(x1)] = x1 +
0
[023(x1)] = x1 +
130
[029(x1)] = x1 +
1
[035(x1)] = x1 +
130
all of the following rules can be deleted.

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

1.1.1.1.1 R is empty

There are no rules in the TRS. Hence, it is terminating.