Time: 5.198120
TRS:
 {        Cond_lastbit(true(), x) -> lastbit minus_int(x, pos s s 0()),
    greater_int(pos s x, pos s y) -> greater_int(pos x, pos y),
    greater_int(pos s x, pos 0()) -> true(),
    greater_int(pos s x, neg s y) -> true(),
    greater_int(pos s x, neg 0()) -> true(),
    greater_int(pos 0(), pos s y) -> false(),
    greater_int(pos 0(), pos 0()) -> false(),
    greater_int(pos 0(), neg s y) -> true(),
    greater_int(pos 0(), neg 0()) -> false(),
    greater_int(neg s x, pos s y) -> false(),
    greater_int(neg s x, pos 0()) -> false(),
    greater_int(neg s x, neg s y) -> greater_int(neg x, neg y),
    greater_int(neg s x, neg 0()) -> false(),
    greater_int(neg 0(), pos s y) -> false(),
    greater_int(neg 0(), pos 0()) -> false(),
    greater_int(neg 0(), neg s y) -> true(),
    greater_int(neg 0(), neg 0()) -> false(),
                        lastbit x -> Cond_lastbit(greater_int(x, pos s 0()), x),
                lastbit pos s 0() -> pos s 0(),
                  lastbit pos 0() -> pos 0(),
                           conv x -> Cond_conv(greater_int(x, pos 0()), x),
                     conv pos 0() -> cons(nil(), pos 0()),
             Cond_conv(true(), x) -> cons(conv div_int(x, pos s s 0()), lastbit x),
          div_int(pos x, pos s y) -> pos div_nat(x, s y),
          div_int(pos x, neg s y) -> neg div_nat(x, s y),
          div_int(neg x, pos s y) -> neg div_nat(x, s y),
          div_int(neg x, neg s y) -> pos div_nat(x, s y),
          minus_int(pos x, pos y) -> minus_nat(x, y),
          minus_int(pos x, neg y) -> pos plus_nat(x, y),
          minus_int(neg x, pos y) -> neg plus_nat(x, y),
          minus_int(neg x, neg y) -> minus_nat(y, x),
                div_nat(s x, s y) -> if(greatereq_int(pos x, pos y), div_nat(minus_nat_s(x, y), s y), 0()),
                div_nat(0(), s y) -> 0(),
                 if(true(), x, y) -> x,
                if(false(), x, y) -> y,
    greatereq_int(pos x, pos 0()) -> true(),
      greatereq_int(pos x, neg y) -> true(),
  greatereq_int(pos s x, pos s y) -> greatereq_int(pos x, pos y),
  greatereq_int(pos 0(), pos s y) -> false(),
    greatereq_int(neg x, pos s y) -> false(),
  greatereq_int(neg s x, pos 0()) -> false(),
  greatereq_int(neg s x, neg s y) -> greatereq_int(neg x, neg y),
  greatereq_int(neg s x, neg 0()) -> false(),
  greatereq_int(neg 0(), pos 0()) -> true(),
    greatereq_int(neg 0(), neg y) -> true(),
              minus_nat_s(x, 0()) -> x,
            minus_nat_s(s x, s y) -> minus_nat_s(x, y),
            minus_nat_s(0(), s y) -> 0(),
              minus_nat(s x, s y) -> minus_nat(x, y),
              minus_nat(s x, 0()) -> pos s x,
              minus_nat(0(), s y) -> neg s y,
              minus_nat(0(), 0()) -> pos 0(),
                 plus_nat(s x, y) -> s plus_nat(x, y),
                 plus_nat(0(), x) -> x}
 SRS: We consider a TRS.
  Trs:
   {        Cond_lastbit(true(), x) -> lastbit minus_int(x, pos s s 0()),
      greater_int(pos s x, pos s y) -> greater_int(pos x, pos y),
      greater_int(pos s x, pos 0()) -> true(),
      greater_int(pos s x, neg s y) -> true(),
      greater_int(pos s x, neg 0()) -> true(),
      greater_int(pos 0(), pos s y) -> false(),
      greater_int(pos 0(), pos 0()) -> false(),
      greater_int(pos 0(), neg s y) -> true(),
      greater_int(pos 0(), neg 0()) -> false(),
      greater_int(neg s x, pos s y) -> false(),
      greater_int(neg s x, pos 0()) -> false(),
      greater_int(neg s x, neg s y) -> greater_int(neg x, neg y),
      greater_int(neg s x, neg 0()) -> false(),
      greater_int(neg 0(), pos s y) -> false(),
      greater_int(neg 0(), pos 0()) -> false(),
      greater_int(neg 0(), neg s y) -> true(),
      greater_int(neg 0(), neg 0()) -> false(),
                          lastbit x -> Cond_lastbit(greater_int(x, pos s 0()), x),
                  lastbit pos s 0() -> pos s 0(),
                    lastbit pos 0() -> pos 0(),
                             conv x -> Cond_conv(greater_int(x, pos 0()), x),
                       conv pos 0() -> cons(nil(), pos 0()),
               Cond_conv(true(), x) -> cons(conv div_int(x, pos s s 0()), lastbit x),
            div_int(pos x, pos s y) -> pos div_nat(x, s y),
            div_int(pos x, neg s y) -> neg div_nat(x, s y),
            div_int(neg x, pos s y) -> neg div_nat(x, s y),
            div_int(neg x, neg s y) -> pos div_nat(x, s y),
            minus_int(pos x, pos y) -> minus_nat(x, y),
            minus_int(pos x, neg y) -> pos plus_nat(x, y),
            minus_int(neg x, pos y) -> neg plus_nat(x, y),
            minus_int(neg x, neg y) -> minus_nat(y, x),
                  div_nat(s x, s y) -> if(greatereq_int(pos x, pos y), div_nat(minus_nat_s(x, y), s y), 0()),
                  div_nat(0(), s y) -> 0(),
                   if(true(), x, y) -> x,
                  if(false(), x, y) -> y,
      greatereq_int(pos x, pos 0()) -> true(),
        greatereq_int(pos x, neg y) -> true(),
    greatereq_int(pos s x, pos s y) -> greatereq_int(pos x, pos y),
    greatereq_int(pos 0(), pos s y) -> false(),
      greatereq_int(neg x, pos s y) -> false(),
    greatereq_int(neg s x, pos 0()) -> false(),
    greatereq_int(neg s x, neg s y) -> greatereq_int(neg x, neg y),
    greatereq_int(neg s x, neg 0()) -> false(),
    greatereq_int(neg 0(), pos 0()) -> true(),
      greatereq_int(neg 0(), neg y) -> true(),
                minus_nat_s(x, 0()) -> x,
              minus_nat_s(s x, s y) -> minus_nat_s(x, y),
              minus_nat_s(0(), s y) -> 0(),
                minus_nat(s x, s y) -> minus_nat(x, y),
                minus_nat(s x, 0()) -> pos s x,
                minus_nat(0(), s y) -> neg s y,
                minus_nat(0(), 0()) -> pos 0(),
                   plus_nat(s x, y) -> s plus_nat(x, y),
                   plus_nat(0(), x) -> x}
  Fail