Certification Problem

Input (TPDB TRS_Standard/CiME_04/ternary-hard)

The rewrite relation of the following TRS is considered.

0(#) # (1)
+(#,x) x (2)
+(x,#) x (3)
+(0(x),0(y)) 0(+(x,y)) (4)
+(0(x),1(y)) 1(+(x,y)) (5)
+(1(x),0(y)) 1(+(x,y)) (6)
+(0(x),j(y)) j(+(x,y)) (7)
+(j(x),0(y)) j(+(x,y)) (8)
+(1(x),1(y)) j(+(+(x,y),1(#))) (9)
+(j(x),j(y)) 1(+(+(x,y),j(#))) (10)
+(1(x),j(y)) 0(+(x,y)) (11)
+(j(x),1(y)) 0(+(x,y)) (12)
+(+(x,y),z) +(x,+(y,z)) (13)
opp(#) # (14)
opp(0(x)) 0(opp(x)) (15)
opp(1(x)) j(opp(x)) (16)
opp(j(x)) 1(opp(x)) (17)
-(x,y) +(x,opp(y)) (18)
*(#,x) # (19)
*(0(x),y) 0(*(x,y)) (20)
*(1(x),y) +(0(*(x,y)),y) (21)
*(j(x),y) -(0(*(x,y)),y) (22)
*(*(x,y),z) *(x,*(y,z)) (23)
*(+(x,y),z) +(*(x,z),*(y,z)) (24)
*(x,+(y,z)) +(*(x,y),*(x,z)) (25)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by AProVE @ termCOMP 2023)

1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
+#(0(x),0(y)) 0#(+(x,y)) (26)
+#(0(x),0(y)) +#(x,y) (27)
+#(0(x),1(y)) +#(x,y) (28)
+#(1(x),0(y)) +#(x,y) (29)
+#(0(x),j(y)) +#(x,y) (30)
+#(j(x),0(y)) +#(x,y) (31)
+#(1(x),1(y)) +#(+(x,y),1(#)) (32)
+#(1(x),1(y)) +#(x,y) (33)
+#(j(x),j(y)) +#(+(x,y),j(#)) (34)
+#(j(x),j(y)) +#(x,y) (35)
+#(1(x),j(y)) 0#(+(x,y)) (36)
+#(1(x),j(y)) +#(x,y) (37)
+#(j(x),1(y)) 0#(+(x,y)) (38)
+#(j(x),1(y)) +#(x,y) (39)
+#(+(x,y),z) +#(x,+(y,z)) (40)
+#(+(x,y),z) +#(y,z) (41)
opp#(0(x)) 0#(opp(x)) (42)
opp#(0(x)) opp#(x) (43)
opp#(1(x)) opp#(x) (44)
opp#(j(x)) opp#(x) (45)
-#(x,y) +#(x,opp(y)) (46)
-#(x,y) opp#(y) (47)
*#(0(x),y) 0#(*(x,y)) (48)
*#(0(x),y) *#(x,y) (49)
*#(1(x),y) +#(0(*(x,y)),y) (50)
*#(1(x),y) 0#(*(x,y)) (51)
*#(1(x),y) *#(x,y) (52)
*#(j(x),y) -#(0(*(x,y)),y) (53)
*#(j(x),y) 0#(*(x,y)) (54)
*#(j(x),y) *#(x,y) (55)
*#(*(x,y),z) *#(x,*(y,z)) (56)
*#(*(x,y),z) *#(y,z) (57)
*#(+(x,y),z) +#(*(x,z),*(y,z)) (58)
*#(+(x,y),z) *#(x,z) (59)
*#(+(x,y),z) *#(y,z) (60)
*#(x,+(y,z)) +#(*(x,y),*(x,z)) (61)
*#(x,+(y,z)) *#(x,y) (62)
*#(x,+(y,z)) *#(x,z) (63)

1.1 Dependency Graph Processor

The dependency pairs are split into 3 components.