Termination proof
  
1: switching to dependency pairs
        The following set of initial dependency pairs has been identified.
        
| 
            f#(
                0
              )
           | 
 →  | 
            0#
           | 
| 
            f#(
                s(
                    0
                  )
              )
           | 
 →  | 
            f#(
                p(
                    s(
                        0
                      )
                  )
              )
           | 
| 
            f#(
                s(
                    0
                  )
              )
           | 
 →  | 
            p#(
                s(
                    0
                  )
              )
           | 
| 
            f#(
                s(
                    0
                  )
              )
           | 
 →  | 
            s#(
                0
              )
           | 
| 
            f#(
                s(
                    0
                  )
              )
           | 
 →  | 
            0#
           | 
| 
            p#(
                s(
                    0
                  )
              )
           | 
 →  | 
            0#
           | 
| 
            activate#(
                n__f(
                    X
                  )
              )
           | 
 →  | 
            f#(
                activate(
                    X
                  )
              )
           | 
| 
            activate#(
                n__f(
                    X
                  )
              )
           | 
 →  | 
            activate#(
                X
              )
           | 
| 
            activate#(
                n__s(
                    X
                  )
              )
           | 
 →  | 
            s#(
                activate(
                    X
                  )
              )
           | 
| 
            activate#(
                n__s(
                    X
                  )
              )
           | 
 →  | 
            activate#(
                X
              )
           | 
| 
            activate#(
                n__0
              )
           | 
 →  | 
            0#
           | 
1.1: dependency graph processor
The dependency pairs are split into 2 component(s).
- 
                The
                1st
                component contains the
                pair(s) 
                
| 
                activate#(
                    n__s(
                        X
                      )
                  )
               | 
 →  | 
                activate#(
                    X
                  )
               | 
| 
                activate#(
                    n__f(
                        X
                      )
                  )
               | 
 →  | 
                activate#(
                    X
                  )
               | 
1.1.1: reduction pair processor
        Using the following reduction pair
        
            
                Linear polynomial
             
            interpretation over 
            
                the naturals
            
| 
                            [activate#
                (x1)
            ]
                         | 
 =  | 
                  x1
                 | 
| 
                            [n__0]
                         | 
 =  | 
                  
                      3
                    
                 | 
| 
                            [f
                (x1)
            ]
                         | 
 =  | 
                  x1
                +                
            
                      3
                    
                 | 
| 
                            [n__s
                (x1)
            ]
                         | 
 =  | 
                  x1
                +                
            
                      3
                    
                 | 
| 
                            [0]
                         | 
 =  | 
                  
                      3
                    
                 | 
| 
                            [s
                (x1)
            ]
                         | 
 =  | 
                  x1
                +                
            
                      3
                    
                 | 
| 
                            [n__f
                (x1)
            ]
                         | 
 =  | 
                  x1
                +                
            
                      3
                    
                 | 
| 
                            [cons
                (x1, x2)
            ]
                         | 
 =  | 
                  x1
                +                
            
                      1
                    
                 | 
| 
                            [activate
                (x1)
            ]
                         | 
 =  | 
                  
                      3
                    x1
                +                
            
                      3
                    
                 | 
| 
                            [p
                (x1)
            ]
                         | 
 =  | 
                  x1
                 | 
| 
                        [f(x1, ..., xn)]
                     | 
 =  | 
x1 +  ... +  xn + 1 
                     | 
                         for all other symbols f of arity n
                     | 
                  
        one remains with the following pair(s).
        
1.1.1.1: P is empty 
All dependency pairs have been removed.
 
- 
                The
                2nd
                component contains the
                pair(s) 
                
| 
                f#(
                    s(
                        0
                      )
                  )
               | 
 →  | 
                f#(
                    p(
                        s(
                            0
                          )
                      )
                  )
               | 
1.1.2: reduction pair processor
        Using the following reduction pair
        
            
                Linear polynomial
             
            interpretation over 
            
                the naturals
            
| 
                            [n__0]
                         | 
 =  | 
                  
                      0
                    
                 | 
| 
                            [f
                (x1)
            ]
                         | 
 =  | 
                  
                      2
                    
                 | 
| 
                            [n__s
                (x1)
            ]
                         | 
 =  | 
                  
                      0
                    
                 | 
| 
                            [s
                (x1)
            ]
                         | 
 =  | 
                  
                      1
                    
                 | 
| 
                            [0]
                         | 
 =  | 
                  
                      0
                    
                 | 
| 
                            [n__f
                (x1)
            ]
                         | 
 =  | 
                  
                      2
                    
                 | 
| 
                            [f#
                (x1)
            ]
                         | 
 =  | 
                  
                      2
                    x1
                 | 
| 
                            [cons
                (x1, x2)
            ]
                         | 
 =  | 
                  x1
                 | 
| 
                            [activate
                (x1)
            ]
                         | 
 =  | 
                  
                      2
                    x1
                +                
            
                      1
                    
                 | 
| 
                            [p
                (x1)
            ]
                         | 
 =  | 
                  
                      0
                    
                 | 
| 
                        [f(x1, ..., xn)]
                     | 
 =  | 
x1 +  ... +  xn + 1 
                     | 
                         for all other symbols f of arity n
                     | 
                  
        one remains with the following pair(s).
        
1.1.2.1: P is empty 
All dependency pairs have been removed.