まじん(ry

問題 2.10
make-interval 手続きの a, b は、それぞれ下限許容限界値 上限許容限界値です。
0 をまたぐ interval を div-interval 手続きに渡すと、内部の make-interval 手続きで
a > b となる interval が発生してしまい、make-intercal 手続きの仕様に合わなくなってしまいます。
また、make-interval に渡す a, b は a <= b でなければいけないので、

(define (make-interval a b)
  (if (<= a b)
      (cons a b)
      (error "a <= b -- MAKE-INTERVAL")))

このように実装すれば良いでしょう。
0 をまたぐ interval を div-interval に渡すと、a > b として make-interval を呼び出すので、
エラーにすることができます。