Certification Problem

Input (TPDB TRS_Standard/Transformed_CSR_04/Ex8_BLR02_GM)

The rewrite relation of the following TRS is considered.

a__fib(N) a__sel(mark(N),a__fib1(s(0),s(0))) (1)
a__fib1(X,Y) cons(mark(X),fib1(Y,add(X,Y))) (2)
a__add(0,X) mark(X) (3)
a__add(s(X),Y) s(a__add(mark(X),mark(Y))) (4)
a__sel(0,cons(X,XS)) mark(X) (5)
a__sel(s(N),cons(X,XS)) a__sel(mark(N),mark(XS)) (6)
mark(fib(X)) a__fib(mark(X)) (7)
mark(sel(X1,X2)) a__sel(mark(X1),mark(X2)) (8)
mark(fib1(X1,X2)) a__fib1(mark(X1),mark(X2)) (9)
mark(add(X1,X2)) a__add(mark(X1),mark(X2)) (10)
mark(s(X)) s(mark(X)) (11)
mark(0) 0 (12)
mark(cons(X1,X2)) cons(mark(X1),X2) (13)
a__fib(X) fib(X) (14)
a__sel(X1,X2) sel(X1,X2) (15)
a__fib1(X1,X2) fib1(X1,X2) (16)
a__add(X1,X2) add(X1,X2) (17)

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.
a__sel#(s(N),cons(X,XS)) a__sel#(mark(N),mark(XS)) (18)
mark#(fib1(X1,X2)) a__fib1#(mark(X1),mark(X2)) (19)
mark#(add(X1,X2)) mark#(X1) (20)
mark#(s(X)) mark#(X) (21)
mark#(fib(X)) mark#(X) (22)
a__add#(s(X),Y) mark#(X) (23)
a__add#(s(X),Y) a__add#(mark(X),mark(Y)) (24)
mark#(add(X1,X2)) a__add#(mark(X1),mark(X2)) (25)
mark#(add(X1,X2)) mark#(X2) (26)
a__add#(s(X),Y) mark#(Y) (27)
mark#(sel(X1,X2)) a__sel#(mark(X1),mark(X2)) (28)
mark#(fib1(X1,X2)) mark#(X1) (29)
mark#(fib(X)) a__fib#(mark(X)) (30)
mark#(cons(X1,X2)) mark#(X1) (31)
mark#(sel(X1,X2)) mark#(X2) (32)
a__fib#(N) a__sel#(mark(N),a__fib1(s(0),s(0))) (33)
a__fib#(N) a__fib1#(s(0),s(0)) (34)
mark#(sel(X1,X2)) mark#(X1) (35)
a__add#(0,X) mark#(X) (36)
a__sel#(s(N),cons(X,XS)) mark#(N) (37)
a__fib1#(X,Y) mark#(X) (38)
mark#(fib1(X1,X2)) mark#(X2) (39)
a__sel#(0,cons(X,XS)) mark#(X) (40)
a__sel#(s(N),cons(X,XS)) mark#(XS) (41)
a__fib#(N) mark#(N) (42)

1.1 Dependency Graph Processor

The dependency pairs are split into 1 component.