Certification Problem

Input (TPDB TRS_Standard/AG01/#3.57)

The rewrite relation of the following TRS is considered.

minus(x,0) x (1)
minus(s(x),s(y)) minus(x,y) (2)
quot(0,s(y)) 0 (3)
quot(s(x),s(y)) s(quot(minus(x,y),s(y))) (4)
plus(0,y) y (5)
plus(s(x),y) s(plus(x,y)) (6)
minus(minus(x,y),z) minus(x,plus(y,z)) (7)
app(nil,k) k (8)
app(l,nil) l (9)
app(cons(x,l),k) cons(x,app(l,k)) (10)
sum(cons(x,nil)) cons(x,nil) (11)
sum(cons(x,cons(y,l))) sum(cons(plus(x,y),l)) (12)
sum(app(l,cons(x,cons(y,k)))) sum(app(l,sum(cons(x,cons(y,k))))) (13)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by NaTT @ termCOMP 2023)

1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
plus#(s(x),y) plus#(x,y) (14)
sum#(cons(x,cons(y,l))) sum#(cons(plus(x,y),l)) (15)
minus#(minus(x,y),z) plus#(y,z) (16)
quot#(s(x),s(y)) quot#(minus(x,y),s(y)) (17)
quot#(s(x),s(y)) minus#(x,y) (18)
sum#(cons(x,cons(y,l))) plus#(x,y) (19)
app#(cons(x,l),k) app#(l,k) (20)
sum#(app(l,cons(x,cons(y,k)))) sum#(cons(x,cons(y,k))) (21)
sum#(app(l,cons(x,cons(y,k)))) sum#(app(l,sum(cons(x,cons(y,k))))) (22)
minus#(s(x),s(y)) minus#(x,y) (23)
minus#(minus(x,y),z) minus#(x,plus(y,z)) (24)
sum#(app(l,cons(x,cons(y,k)))) app#(l,sum(cons(x,cons(y,k)))) (25)

1.1 Dependency Graph Processor

The dependency pairs are split into 6 components.