fix bug for (negative? 0) return #t.
also add zero?
add abs, floor, ceiling