let rec greater_than = function
  m, n -> if is_zero (m)
            then false
            else
              if is_zero (n)
                then true
                else greater_than (pre (m), pre (n))