MAYBE

Problem:
 f(f(x)) -> f(c(f(x)))
 f(f(x)) -> f(d(f(x)))
 g(c(x)) -> x
 g(d(x)) -> x
 g(c(h(0()))) -> g(d(1()))
 g(c(1())) -> g(d(h(0())))
 g(h(x)) -> g(x)

Proof:
 DP Processor:
  DPs:
   f#(f(x)) -> f#(c(f(x)))
   f#(f(x)) -> f#(d(f(x)))
   g#(c(h(0()))) -> g#(d(1()))
   g#(c(1())) -> g#(d(h(0())))
   g#(h(x)) -> g#(x)
  TRS:
   f(f(x)) -> f(c(f(x)))
   f(f(x)) -> f(d(f(x)))
   g(c(x)) -> x
   g(d(x)) -> x
   g(c(h(0()))) -> g(d(1()))
   g(c(1())) -> g(d(h(0())))
   g(h(x)) -> g(x)
  Usable Rule Processor:
   DPs:
    f#(f(x)) -> f#(c(f(x)))
    f#(f(x)) -> f#(d(f(x)))
    g#(c(h(0()))) -> g#(d(1()))
    g#(c(1())) -> g#(d(h(0())))
    g#(h(x)) -> g#(x)
   TRS:
    f(f(x)) -> f(c(f(x)))
    f(f(x)) -> f(d(f(x)))
   TDG Processor:
    DPs:
     f#(f(x)) -> f#(c(f(x)))
     f#(f(x)) -> f#(d(f(x)))
     g#(c(h(0()))) -> g#(d(1()))
     g#(c(1())) -> g#(d(h(0())))
     g#(h(x)) -> g#(x)
    TRS:
     f(f(x)) -> f(c(f(x)))
     f(f(x)) -> f(d(f(x)))
    graph:
     g#(h(x)) -> g#(x) -> g#(h(x)) -> g#(x)
     g#(h(x)) -> g#(x) -> g#(c(1())) -> g#(d(h(0())))
     g#(h(x)) -> g#(x) -> g#(c(h(0()))) -> g#(d(1()))
     g#(c(1())) -> g#(d(h(0()))) -> g#(h(x)) -> g#(x)
     g#(c(1())) -> g#(d(h(0()))) -> g#(c(1())) -> g#(d(h(0())))
     g#(c(1())) -> g#(d(h(0()))) -> g#(c(h(0()))) -> g#(d(1()))
     g#(c(h(0()))) -> g#(d(1())) -> g#(h(x)) -> g#(x)
     g#(c(h(0()))) -> g#(d(1())) -> g#(c(1())) -> g#(d(h(0())))
     g#(c(h(0()))) -> g#(d(1())) -> g#(c(h(0()))) -> g#(d(1()))
     f#(f(x)) -> f#(d(f(x))) -> f#(f(x)) -> f#(d(f(x)))
     f#(f(x)) -> f#(d(f(x))) -> f#(f(x)) -> f#(c(f(x)))
     f#(f(x)) -> f#(c(f(x))) -> f#(f(x)) -> f#(d(f(x)))
     f#(f(x)) -> f#(c(f(x))) -> f#(f(x)) -> f#(c(f(x)))
    Restore Modifier:
     DPs:
      f#(f(x)) -> f#(c(f(x)))
      f#(f(x)) -> f#(d(f(x)))
      g#(c(h(0()))) -> g#(d(1()))
      g#(c(1())) -> g#(d(h(0())))
      g#(h(x)) -> g#(x)
     TRS:
      f(f(x)) -> f(c(f(x)))
      f(f(x)) -> f(d(f(x)))
      g(c(x)) -> x
      g(d(x)) -> x
      g(c(h(0()))) -> g(d(1()))
      g(c(1())) -> g(d(h(0())))
      g(h(x)) -> g(x)
     SCC Processor:
      #sccs: 2
      #rules: 5
      #arcs: 13/25
      DPs:
       f#(f(x)) -> f#(d(f(x)))
       f#(f(x)) -> f#(c(f(x)))
      TRS:
       f(f(x)) -> f(c(f(x)))
       f(f(x)) -> f(d(f(x)))
       g(c(x)) -> x
       g(d(x)) -> x
       g(c(h(0()))) -> g(d(1()))
       g(c(1())) -> g(d(h(0())))
       g(h(x)) -> g(x)
      Open
      
      DPs:
       g#(h(x)) -> g#(x)
       g#(c(h(0()))) -> g#(d(1()))
       g#(c(1())) -> g#(d(h(0())))
      TRS:
       f(f(x)) -> f(c(f(x)))
       f(f(x)) -> f(d(f(x)))
       g(c(x)) -> x
       g(d(x)) -> x
       g(c(h(0()))) -> g(d(1()))
       g(c(1())) -> g(d(h(0())))
       g(h(x)) -> g(x)
      Matrix Interpretation Processor:
       dimension: 1
       interpretation:
        [g#](x0) = x0 + 1,
        
        [1] = 1,
        
        [h](x0) = x0 + 1,
        
        [0] = 0,
        
        [g](x0) = x0,
        
        [d](x0) = x0 + 1,
        
        [c](x0) = x0 + 1,
        
        [f](x0) = 0
       orientation:
        g#(h(x)) = x + 2 >= x + 1 = g#(x)
        
        g#(c(h(0()))) = 3 >= 3 = g#(d(1()))
        
        g#(c(1())) = 3 >= 3 = g#(d(h(0())))
        
        f(f(x)) = 0 >= 0 = f(c(f(x)))
        
        f(f(x)) = 0 >= 0 = f(d(f(x)))
        
        g(c(x)) = x + 1 >= x = x
        
        g(d(x)) = x + 1 >= x = x
        
        g(c(h(0()))) = 2 >= 2 = g(d(1()))
        
        g(c(1())) = 2 >= 2 = g(d(h(0())))
        
        g(h(x)) = x + 1 >= x = g(x)
       problem:
        DPs:
         g#(c(h(0()))) -> g#(d(1()))
         g#(c(1())) -> g#(d(h(0())))
        TRS:
         f(f(x)) -> f(c(f(x)))
         f(f(x)) -> f(d(f(x)))
         g(c(x)) -> x
         g(d(x)) -> x
         g(c(h(0()))) -> g(d(1()))
         g(c(1())) -> g(d(h(0())))
         g(h(x)) -> g(x)
       Matrix Interpretation Processor:
        dimension: 1
        interpretation:
         [g#](x0) = x0,
         
         [1] = 0,
         
         [h](x0) = x0,
         
         [0] = 0,
         
         [g](x0) = x0,
         
         [d](x0) = x0,
         
         [c](x0) = x0 + 1,
         
         [f](x0) = 0
        orientation:
         g#(c(h(0()))) = 1 >= 0 = g#(d(1()))
         
         g#(c(1())) = 1 >= 0 = g#(d(h(0())))
         
         f(f(x)) = 0 >= 0 = f(c(f(x)))
         
         f(f(x)) = 0 >= 0 = f(d(f(x)))
         
         g(c(x)) = x + 1 >= x = x
         
         g(d(x)) = x >= x = x
         
         g(c(h(0()))) = 1 >= 0 = g(d(1()))
         
         g(c(1())) = 1 >= 0 = g(d(h(0())))
         
         g(h(x)) = x >= x = g(x)
        problem:
         DPs:
          
         TRS:
          f(f(x)) -> f(c(f(x)))
          f(f(x)) -> f(d(f(x)))
          g(c(x)) -> x
          g(d(x)) -> x
          g(c(h(0()))) -> g(d(1()))
          g(c(1())) -> g(d(h(0())))
          g(h(x)) -> g(x)
        Qed