Certification Problem                    
                
Input (TPDB SRS_Standard/Zantema_04/z122)
The rewrite relation of the following TRS is considered.
| a(a(x1)) | → | b(c(x1)) | (1) | 
| b(b(x1)) | → | c(d(x1)) | (2) | 
| c(c(x1)) | → | d(d(d(x1))) | (3) | 
| d(c(x1)) | → | b(f(x1)) | (4) | 
| d(d(d(x1))) | → | a(c(x1)) | (5) | 
| f(f(x1)) | → | f(b(x1)) | (6) | 
Property / Task
Prove or disprove termination.Answer / Result
Yes.Proof (by matchbox @ termCOMP 2023)
1 Rule Removal
      Using the
      matrix interpretations of dimension 1 with strict dimension 1 over the rationals with delta = 1
| [f(x1)] | = | x1 + | 
| [d(x1)] | = | x1 + | 
| [c(x1)] | = | x1 + | 
| [b(x1)] | = | x1 + | 
| [a(x1)] | = | x1 + | 
                
      all of the following rules can be deleted.  
      
| a(a(x1)) | → | b(c(x1)) | (1) | 
| c(c(x1)) | → | d(d(d(x1))) | (3) | 
| d(d(d(x1))) | → | a(c(x1)) | (5) | 
1.1 String Reversal
        Since only unary symbols occur, one can reverse all terms and obtains the TRS        
        
| b(b(x1)) | → | d(c(x1)) | (7) | 
| c(d(x1)) | → | f(b(x1)) | (8) | 
| f(f(x1)) | → | b(f(x1)) | (9) | 
1.1.1 Dependency Pair Transformation
          The following set of initial dependency pairs has been identified.
          
| f#(f(x1)) | → | b#(f(x1)) | (10) | 
| c#(d(x1)) | → | f#(b(x1)) | (11) | 
| c#(d(x1)) | → | b#(x1) | (12) | 
| b#(b(x1)) | → | c#(x1) | (13) | 
1.1.1.1 Monotonic Reduction Pair Processor with Usable Rules
        Using the matrix interpretations of dimension 1 with strict dimension 1 over the rationals with delta = 1
| [f(x1)] | = | x1 + | 
| [d(x1)] | = | x1 + | 
| [c(x1)] | = | x1 + | 
| [b(x1)] | = | x1 + | 
| [f#(x1)] | = | x1 + | 
| [c#(x1)] | = | x1 + | 
| [b#(x1)] | = | x1 + | 
                    together with the usable
                    rules
| b(b(x1)) | → | d(c(x1)) | (7) | 
| c(d(x1)) | → | f(b(x1)) | (8) | 
| f(f(x1)) | → | b(f(x1)) | (9) | 
                    (w.r.t. the implicit argument filter of the reduction pair),
                
          the
          pairs
| f#(f(x1)) | → | b#(f(x1)) | (10) | 
| c#(d(x1)) | → | f#(b(x1)) | (11) | 
| c#(d(x1)) | → | b#(x1) | (12) | 
| b#(b(x1)) | → | c#(x1) | (13) | 
	    and
            
                no rules
              
          could be deleted.
        1.1.1.1.1 Dependency Graph Processor
The dependency pairs are split into 0
        components.