Certification Problem

Input (TPDB SRS_Standard/ICFP_2010/4002)

The rewrite relation of the following TRS is considered.

2(5(3(0(x1)))) → 1(0(0(1(3(0(4(5(1(2(x1)))))))))) (1)
1(3(5(4(3(x1))))) → 2(1(4(1(4(0(3(0(1(1(x1)))))))))) (2)
5(1(3(5(0(x1))))) → 5(1(4(3(0(4(4(5(2(1(x1)))))))))) (3)
5(4(4(2(5(x1))))) → 4(3(1(1(1(1(5(3(3(5(x1)))))))))) (4)
2(2(5(0(5(4(x1)))))) → 2(1(4(1(3(3(2(2(5(4(x1)))))))))) (5)
3(0(5(5(4(3(x1)))))) → 3(3(0(3(2(3(5(5(1(0(x1)))))))))) (6)
3(5(4(3(5(2(x1)))))) → 2(0(5(2(0(5(2(2(3(2(x1)))))))))) (7)
4(4(2(5(5(0(x1)))))) → 4(4(0(0(3(3(3(2(2(3(x1)))))))))) (8)
4(5(3(5(5(0(x1)))))) → 4(2(2(3(0(2(4(1(1(5(x1)))))))))) (9)
5(4(5(1(1(2(x1)))))) → 5(4(0(3(3(3(3(2(5(5(x1)))))))))) (10)
5(5(5(5(5(3(x1)))))) → 5(5(0(1(4(0(0(5(0(1(x1)))))))))) (11)
3(5(0(0(5(4(3(x1))))))) → 0(1(2(1(1(5(5(2(1(0(x1)))))))))) (12)
3(5(4(2(5(2(3(x1))))))) → 4(0(4(0(0(2(2(3(4(4(x1)))))))))) (13)
3(5(4(5(1(4(0(x1))))))) → 1(1(1(0(0(3(3(1(2(5(x1)))))))))) (14)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by AProVE @ termCOMP 2023)

1 Closure Under Flat Contexts

Using the flat contexts

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

We obtain the transformed TRS
5(1(3(5(0(x1))))) → 5(1(4(3(0(4(4(5(2(1(x1)))))))))) (3)
2(2(5(0(5(4(x1)))))) → 2(1(4(1(3(3(2(2(5(4(x1)))))))))) (5)
3(0(5(5(4(3(x1)))))) → 3(3(0(3(2(3(5(5(1(0(x1)))))))))) (6)
4(4(2(5(5(0(x1)))))) → 4(4(0(0(3(3(3(2(2(3(x1)))))))))) (8)
4(5(3(5(5(0(x1)))))) → 4(2(2(3(0(2(4(1(1(5(x1)))))))))) (9)
5(4(5(1(1(2(x1)))))) → 5(4(0(3(3(3(3(2(5(5(x1)))))))))) (10)
5(5(5(5(5(3(x1)))))) → 5(5(0(1(4(0(0(5(0(1(x1)))))))))) (11)
2(2(5(3(0(x1))))) → 2(1(0(0(1(3(0(4(5(1(2(x1))))))))))) (15)
5(2(5(3(0(x1))))) → 5(1(0(0(1(3(0(4(5(1(2(x1))))))))))) (16)
3(2(5(3(0(x1))))) → 3(1(0(0(1(3(0(4(5(1(2(x1))))))))))) (17)
0(2(5(3(0(x1))))) → 0(1(0(0(1(3(0(4(5(1(2(x1))))))))))) (18)
1(2(5(3(0(x1))))) → 1(1(0(0(1(3(0(4(5(1(2(x1))))))))))) (19)
4(2(5(3(0(x1))))) → 4(1(0(0(1(3(0(4(5(1(2(x1))))))))))) (20)
2(1(3(5(4(3(x1)))))) → 2(2(1(4(1(4(0(3(0(1(1(x1))))))))))) (21)
5(1(3(5(4(3(x1)))))) → 5(2(1(4(1(4(0(3(0(1(1(x1))))))))))) (22)
3(1(3(5(4(3(x1)))))) → 3(2(1(4(1(4(0(3(0(1(1(x1))))))))))) (23)
0(1(3(5(4(3(x1)))))) → 0(2(1(4(1(4(0(3(0(1(1(x1))))))))))) (24)
1(1(3(5(4(3(x1)))))) → 1(2(1(4(1(4(0(3(0(1(1(x1))))))))))) (25)
4(1(3(5(4(3(x1)))))) → 4(2(1(4(1(4(0(3(0(1(1(x1))))))))))) (26)
2(5(4(4(2(5(x1)))))) → 2(4(3(1(1(1(1(5(3(3(5(x1))))))))))) (27)
5(5(4(4(2(5(x1)))))) → 5(4(3(1(1(1(1(5(3(3(5(x1))))))))))) (28)
3(5(4(4(2(5(x1)))))) → 3(4(3(1(1(1(1(5(3(3(5(x1))))))))))) (29)
0(5(4(4(2(5(x1)))))) → 0(4(3(1(1(1(1(5(3(3(5(x1))))))))))) (30)
1(5(4(4(2(5(x1)))))) → 1(4(3(1(1(1(1(5(3(3(5(x1))))))))))) (31)
4(5(4(4(2(5(x1)))))) → 4(4(3(1(1(1(1(5(3(3(5(x1))))))))))) (32)
2(3(5(4(3(5(2(x1))))))) → 2(2(0(5(2(0(5(2(2(3(2(x1))))))))))) (33)
5(3(5(4(3(5(2(x1))))))) → 5(2(0(5(2(0(5(2(2(3(2(x1))))))))))) (34)
3(3(5(4(3(5(2(x1))))))) → 3(2(0(5(2(0(5(2(2(3(2(x1))))))))))) (35)
0(3(5(4(3(5(2(x1))))))) → 0(2(0(5(2(0(5(2(2(3(2(x1))))))))))) (36)
1(3(5(4(3(5(2(x1))))))) → 1(2(0(5(2(0(5(2(2(3(2(x1))))))))))) (37)
4(3(5(4(3(5(2(x1))))))) → 4(2(0(5(2(0(5(2(2(3(2(x1))))))))))) (38)
2(3(5(0(0(5(4(3(x1)))))))) → 2(0(1(2(1(1(5(5(2(1(0(x1))))))))))) (39)
5(3(5(0(0(5(4(3(x1)))))))) → 5(0(1(2(1(1(5(5(2(1(0(x1))))))))))) (40)
3(3(5(0(0(5(4(3(x1)))))))) → 3(0(1(2(1(1(5(5(2(1(0(x1))))))))))) (41)
0(3(5(0(0(5(4(3(x1)))))))) → 0(0(1(2(1(1(5(5(2(1(0(x1))))))))))) (42)
1(3(5(0(0(5(4(3(x1)))))))) → 1(0(1(2(1(1(5(5(2(1(0(x1))))))))))) (43)
4(3(5(0(0(5(4(3(x1)))))))) → 4(0(1(2(1(1(5(5(2(1(0(x1))))))))))) (44)
2(3(5(4(2(5(2(3(x1)))))))) → 2(4(0(4(0(0(2(2(3(4(4(x1))))))))))) (45)
5(3(5(4(2(5(2(3(x1)))))))) → 5(4(0(4(0(0(2(2(3(4(4(x1))))))))))) (46)
3(3(5(4(2(5(2(3(x1)))))))) → 3(4(0(4(0(0(2(2(3(4(4(x1))))))))))) (47)
0(3(5(4(2(5(2(3(x1)))))))) → 0(4(0(4(0(0(2(2(3(4(4(x1))))))))))) (48)
1(3(5(4(2(5(2(3(x1)))))))) → 1(4(0(4(0(0(2(2(3(4(4(x1))))))))))) (49)
4(3(5(4(2(5(2(3(x1)))))))) → 4(4(0(4(0(0(2(2(3(4(4(x1))))))))))) (50)
2(3(5(4(5(1(4(0(x1)))))))) → 2(1(1(1(0(0(3(3(1(2(5(x1))))))))))) (51)
5(3(5(4(5(1(4(0(x1)))))))) → 5(1(1(1(0(0(3(3(1(2(5(x1))))))))))) (52)
3(3(5(4(5(1(4(0(x1)))))))) → 3(1(1(1(0(0(3(3(1(2(5(x1))))))))))) (53)
0(3(5(4(5(1(4(0(x1)))))))) → 0(1(1(1(0(0(3(3(1(2(5(x1))))))))))) (54)
1(3(5(4(5(1(4(0(x1)))))))) → 1(1(1(1(0(0(3(3(1(2(5(x1))))))))))) (55)
4(3(5(4(5(1(4(0(x1)))))))) → 4(1(1(1(0(0(3(3(1(2(5(x1))))))))))) (56)

1.1 Semantic Labeling

Root-labeling is applied.

We obtain the labeled TRS

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

1.1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[51(x1)] = 1 · x1
[13(x1)] = 1 · x1 + 5
[35(x1)] = 1 · x1 + 69
[50(x1)] = 1 · x1 + 2
[05(x1)] = 1 · x1 + 36
[14(x1)] = 1 · x1
[43(x1)] = 1 · x1
[30(x1)] = 1 · x1
[04(x1)] = 1 · x1
[44(x1)] = 1 · x1
[45(x1)] = 1 · x1 + 66
[52(x1)] = 1 · x1
[21(x1)] = 1 · x1 + 1
[15(x1)] = 1 · x1
[01(x1)] = 1 · x1
[11(x1)] = 1 · x1 + 8
[03(x1)] = 1 · x1
[00(x1)] = 1 · x1
[10(x1)] = 1 · x1
[02(x1)] = 1 · x1
[12(x1)] = 1 · x1 + 7
[22(x1)] = 1 · x1
[25(x1)] = 1 · x1 + 40
[54(x1)] = 1 · x1 + 38
[41(x1)] = 1 · x1 + 32
[33(x1)] = 1 · x1
[32(x1)] = 1 · x1
[40(x1)] = 1 · x1
[42(x1)] = 1 · x1 + 94
[55(x1)] = 1 · x1 + 2
[23(x1)] = 1 · x1 + 4
[31(x1)] = 1 · x1
[34(x1)] = 1 · x1
[53(x1)] = 1 · x1 + 43
[24(x1)] = 1 · x1
[20(x1)] = 1 · x1 + 3
all of the following rules can be deleted.

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

1.1.1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[22(x1)] = 1 · x1 + 2
[25(x1)] = 1 · x1
[50(x1)] = 1 · x1
[05(x1)] = 1 · x1 + 1
[54(x1)] = 1 · x1 + 4
[45(x1)] = 1 · x1
[21(x1)] = 1 · x1
[14(x1)] = 1 · x1
[41(x1)] = 1 · x1 + 1
[13(x1)] = 1 · x1
[33(x1)] = 1 · x1
[32(x1)] = 1 · x1
[43(x1)] = 1 · x1
[40(x1)] = 1 · x1
[44(x1)] = 1 · x1
[42(x1)] = 1 · x1
[51(x1)] = 1 · x1
[11(x1)] = 1 · x1
[12(x1)] = 1 · x1 + 2
[23(x1)] = 1 · x1
[03(x1)] = 1 · x1 + 1
[55(x1)] = 1 · x1
[53(x1)] = 1 · x1
[30(x1)] = 1 · x1
[10(x1)] = 1 · x1
[00(x1)] = 1 · x1
[01(x1)] = 1 · x1
[04(x1)] = 1 · x1
[31(x1)] = 1 · x1
[15(x1)] = 1 · x1
[35(x1)] = 1 · x1
[52(x1)] = 1 · x1
[20(x1)] = 1 · x1
[24(x1)] = 1 · x1
all of the following rules can be deleted.
54(45(51(11(12(23(x1)))))) → 54(40(03(33(33(33(32(25(55(53(x1)))))))))) (89)
22(25(53(30(05(x1))))) → 21(10(00(01(13(30(04(45(51(12(25(x1))))))))))) (99)
22(25(53(30(03(x1))))) → 21(10(00(01(13(30(04(45(51(12(23(x1))))))))))) (101)
12(25(53(30(05(x1))))) → 11(10(00(01(13(30(04(45(51(12(25(x1))))))))))) (123)
12(25(53(30(03(x1))))) → 11(10(00(01(13(30(04(45(51(12(23(x1))))))))))) (125)

1.1.1.1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[22(x1)] = 1 · x1
[25(x1)] = 1 · x1
[50(x1)] = 1 · x1 + 1
[05(x1)] = 1 · x1
[54(x1)] = 1 · x1
[45(x1)] = 1 · x1
[21(x1)] = 1 · x1
[14(x1)] = 1 · x1
[41(x1)] = 1 · x1
[13(x1)] = 1 · x1
[33(x1)] = 1 · x1
[32(x1)] = 1 · x1
[43(x1)] = 1 · x1
[40(x1)] = 1 · x1
[44(x1)] = 1 · x1
[42(x1)] = 1 · x1
[55(x1)] = 1 · x1
[31(x1)] = 1 · x1
[11(x1)] = 1 · x1
[15(x1)] = 1 · x1
[53(x1)] = 1 · x1
[35(x1)] = 1 · x1
[51(x1)] = 1 · x1
[52(x1)] = 1 · x1
[20(x1)] = 1 · x1
[23(x1)] = 1 · x1
[24(x1)] = 1 · x1
all of the following rules can be deleted.
22(25(50(05(54(45(x1)))))) → 21(14(41(13(33(32(22(25(54(45(x1)))))))))) (63)
22(25(50(05(54(41(x1)))))) → 21(14(41(13(33(32(22(25(54(41(x1)))))))))) (64)
22(25(50(05(54(43(x1)))))) → 21(14(41(13(33(32(22(25(54(43(x1)))))))))) (65)
22(25(50(05(54(40(x1)))))) → 21(14(41(13(33(32(22(25(54(40(x1)))))))))) (66)
22(25(50(05(54(44(x1)))))) → 21(14(41(13(33(32(22(25(54(44(x1)))))))))) (67)
22(25(50(05(54(42(x1)))))) → 21(14(41(13(33(32(22(25(54(42(x1)))))))))) (68)

1.1.1.1.1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[55(x1)] = 1 · x1
[54(x1)] = 1 · x1
[44(x1)] = 1 · x1 + 1
[42(x1)] = 1 · x1
[25(x1)] = 1 · x1
[43(x1)] = 1 · x1
[31(x1)] = 1 · x1
[11(x1)] = 1 · x1
[15(x1)] = 1 · x1
[53(x1)] = 1 · x1
[33(x1)] = 1 · x1
[35(x1)] = 1 · x1
[51(x1)] = 1 · x1
[50(x1)] = 1 · x1
[52(x1)] = 1 · x1
[20(x1)] = 1 · x1
[05(x1)] = 1 · x1
[22(x1)] = 1 · x1
[23(x1)] = 1 · x1
[32(x1)] = 1 · x1
[21(x1)] = 1 · x1
[24(x1)] = 1 · x1
all of the following rules can be deleted.
55(54(44(42(25(55(x1)))))) → 54(43(31(11(11(11(15(53(33(35(55(x1))))))))))) (177)
55(54(44(42(25(51(x1)))))) → 54(43(31(11(11(11(15(53(33(35(51(x1))))))))))) (178)
55(54(44(42(25(53(x1)))))) → 54(43(31(11(11(11(15(53(33(35(53(x1))))))))))) (179)
55(54(44(42(25(50(x1)))))) → 54(43(31(11(11(11(15(53(33(35(50(x1))))))))))) (180)
55(54(44(42(25(54(x1)))))) → 54(43(31(11(11(11(15(53(33(35(54(x1))))))))))) (181)
55(54(44(42(25(52(x1)))))) → 54(43(31(11(11(11(15(53(33(35(52(x1))))))))))) (182)

1.1.1.1.1.1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[43(x1)] = 1 · x1
[35(x1)] = 1 · x1
[54(x1)] = 1 · x1 + 1
[52(x1)] = 1 · x1
[25(x1)] = 1 · x1
[42(x1)] = 1 · x1
[20(x1)] = 1 · x1
[05(x1)] = 1 · x1
[22(x1)] = 1 · x1
[23(x1)] = 1 · x1
[32(x1)] = 1 · x1
[21(x1)] = 1 · x1
[24(x1)] = 1 · x1
all of the following rules can be deleted.
43(35(54(43(35(52(25(x1))))))) → 42(20(05(52(20(05(52(22(23(32(25(x1))))))))))) (237)
43(35(54(43(35(52(21(x1))))))) → 42(20(05(52(20(05(52(22(23(32(21(x1))))))))))) (238)
43(35(54(43(35(52(23(x1))))))) → 42(20(05(52(20(05(52(22(23(32(23(x1))))))))))) (239)
43(35(54(43(35(52(20(x1))))))) → 42(20(05(52(20(05(52(22(23(32(20(x1))))))))))) (240)
43(35(54(43(35(52(24(x1))))))) → 42(20(05(52(20(05(52(22(23(32(24(x1))))))))))) (241)
43(35(54(43(35(52(22(x1))))))) → 42(20(05(52(20(05(52(22(23(32(22(x1))))))))))) (242)

1.1.1.1.1.1.1.1 R is empty

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