Problem:
 h(X) -> g(X)
 g(a()) -> f(b())
 f(X) -> h(a())
 a() -> b()

Proof:
 Matrix Interpretation Processor: dim=3
  
  interpretation:
             [1 0 0]     [1]
   [f](x0) = [0 0 0]x0 + [1]
             [0 0 0]     [0],
   
         [0]
   [b] = [0]
         [0],
   
         [1]
   [a] = [0]
         [0],
   
             [1 0 0]  
   [g](x0) = [1 0 0]x0
             [0 0 0]  ,
   
             [1 0 1]  
   [h](x0) = [1 0 0]x0
             [0 0 0]  
  orientation:
          [1 0 1]     [1 0 0]        
   h(X) = [1 0 0]X >= [1 0 0]X = g(X)
          [0 0 0]     [0 0 0]        
   
            [1]    [1]         
   g(a()) = [1] >= [1] = f(b())
            [0]    [0]         
   
          [1 0 0]    [1]    [1]         
   f(X) = [0 0 0]X + [1] >= [1] = h(a())
          [0 0 0]    [0]    [0]         
   
         [1]    [0]      
   a() = [0] >= [0] = b()
         [0]    [0]      
  problem:
   h(X) -> g(X)
   g(a()) -> f(b())
   f(X) -> h(a())
  Unfolding Processor:
   loop length: 3
   terms:
    h(a())
    g(a())
    f(b())
   context: []
   substitution:
    
   Qed