Certification Problem

Input (TPDB TRS_Standard/AProVE_07/thiemann19)

The rewrite relation of the following TRS is considered.

1024 1024_1(0) (1)
1024_1(x) if(lt(x,10),x) (2)
if(true,x) double(1024_1(s(x))) (3)
if(false,x) s(0) (4)
lt(0,s(y)) true (5)
lt(x,0) false (6)
lt(s(x),s(y)) lt(x,y) (7)
double(0) 0 (8)
double(s(x)) s(s(double(x))) (9)
10 double(s(double(s(s(0))))) (10)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by AProVE @ termCOMP 2023)

1 Switch to Innermost Termination

The TRS is overlay and locally confluent:

10

Hence, it suffices to show innermost termination in the following.

1.1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
1024# 1024_1#(0) (11)
1024_1#(x) if#(lt(x,10),x) (12)
1024_1#(x) lt#(x,10) (13)
1024_1#(x) 10# (14)
if#(true,x) double#(1024_1(s(x))) (15)
if#(true,x) 1024_1#(s(x)) (16)
lt#(s(x),s(y)) lt#(x,y) (17)
double#(s(x)) double#(x) (18)
10# double#(s(double(s(s(0))))) (19)
10# double#(s(s(0))) (20)

1.1.1 Dependency Graph Processor

The dependency pairs are split into 3 components.