WORST_CASE(?,O(n^2))
* Step 1: Ara WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
            minus(x,0()) -> x
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        Ara {heuristics_ = NoHeuristics, minDegree = 1, maxDegree = 3, araTimeout = 60, araFindStrictRules = Nothing, araSmtSolver = Z3}
    + Details:
        Signatures used:
        ----------------
          0 :: [] -(0)-> A(4, 4)
          0 :: [] -(0)-> A(0, 4)
          0 :: [] -(0)-> A(0, 0)
          0 :: [] -(0)-> A(2, 0)
          false :: [] -(0)-> A(9, 9)
          false :: [] -(0)-> A(15, 15)
          gcd :: [A(4, 4) x A(0, 4)] -(1)-> A(0, 0)
          if_gcd :: [A(9, 9) x A(1, 4) x A(0, 4)] -(2)-> A(0, 0)
          le :: [A(0, 0) x A(2, 0)] -(1)-> A(12, 12)
          minus :: [A(4, 4) x A(0, 0)] -(1)-> A(4, 4)
          s :: [A(8, 4)] -(4)-> A(4, 4)
          s :: [A(4, 4)] -(0)-> A(0, 4)
          s :: [A(5, 4)] -(1)-> A(1, 4)
          s :: [A(0, 0)] -(0)-> A(0, 0)
          s :: [A(2, 0)] -(2)-> A(2, 0)
          s :: [A(2, 1)] -(1)-> A(1, 1)
          true :: [] -(0)-> A(9, 9)
          true :: [] -(0)-> A(15, 15)
        
        
        Cost-free Signatures used:
        --------------------------
          0 :: [] -(0)-> A_cf(0, 0)
          false :: [] -(0)-> A_cf(1, 1)
          false :: [] -(0)-> A_cf(5, 3)
          false :: [] -(0)-> A_cf(3, 15)
          false :: [] -(0)-> A_cf(0, 0)
          gcd :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0)
          if_gcd :: [A_cf(1, 1) x A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0)
          if_gcd :: [A_cf(0, 0) x A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0)
          le :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(3, 3)
          le :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(3, 13)
          le :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0)
          le :: [A_cf(0, 0) x A_cf(0, 0)] -(1)-> A_cf(0, 0)
          minus :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0)
          minus :: [A_cf(4, 0) x A_cf(0, 0)] -(1)-> A_cf(0, 0)
          s :: [A_cf(0, 0)] -(0)-> A_cf(0, 0)
          s :: [A_cf(4, 0)] -(4)-> A_cf(4, 0)
          true :: [] -(0)-> A_cf(1, 1)
          true :: [] -(0)-> A_cf(3, 3)
          true :: [] -(0)-> A_cf(3, 15)
          true :: [] -(0)-> A_cf(0, 0)
        
        
        Base Constructor Signatures used:
        ---------------------------------
          0_A :: [] -(0)-> A(1, 0)
          0_A :: [] -(0)-> A(0, 1)
          false_A :: [] -(0)-> A(1, 0)
          false_A :: [] -(0)-> A(0, 1)
          s_A :: [A(1, 0)] -(1)-> A(1, 0)
          s_A :: [A(1, 1)] -(0)-> A(0, 1)
          true_A :: [] -(0)-> A(1, 0)
          true_A :: [] -(0)-> A(0, 1)
        
* Step 2: Open MAYBE
    - Strict TRS:
        gcd(0(),y) -> y
        gcd(s(x),0()) -> s(x)
        gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
        if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
        if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
        le(0(),y) -> true()
        le(s(x),0()) -> false()
        le(s(x),s(y)) -> le(x,y)
        minus(x,0()) -> x
        minus(s(x),s(y)) -> minus(x,y)
    - Signature:
        {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
    - Obligation:
        innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
Following problems could not be solved:
  - Strict TRS:
      gcd(0(),y) -> y
      gcd(s(x),0()) -> s(x)
      gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
      if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
      if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
      le(0(),y) -> true()
      le(s(x),0()) -> false()
      le(s(x),s(y)) -> le(x,y)
      minus(x,0()) -> x
      minus(s(x),s(y)) -> minus(x,y)
  - Signature:
      {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
  - Obligation:
      innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
WORST_CASE(?,O(n^2))