TRS:
 {    a__c() -> a__f(g(c())),
  a__f(g(X)) -> g(X),
   mark(c()) -> a__c(),
  mark(f(X)) -> a__f(X),
  mark(g(X)) -> g(X),
      a__c() -> c(),
     a__f(X) -> f(X)}
 POP*:
  Precedence:
  mark > a__f, 
  mark > a__c, 
  a__f > f, 
  a__c > c, 
  a__c > g, 
  a__c > a__f
  empty
  
Normal:
   pi(mark) = [1]
  
Safe:
   pi(f) = [1], pi(g) = [1], pi(a__f) = [1]
  
Predicative System:
   {      a__c() -> a__f(;g(;c())),
    a__f(;g(;X)) -> g(;X),
      mark(c();) -> a__c(),
    mark(f(;X);) -> a__f(;X),
    mark(g(;X);) -> g(;X),
          a__c() -> c(),
        a__f(;X) -> f(;X)}
  Qed