(make-combination expr block binary-predicate operands)))
#f)))
-(define (pairwise-test-inverse inverse-expansion)
- (lambda (expr operands block)
- (let ((inverse (inverse-expansion expr operands block)))
- (if inverse
- (make-combination expr block (ucode-primitive not)
- (list inverse))
- #f))))
-
(define =-expansion
(pairwise-test (ucode-primitive &=)
(ucode-primitive zero?)
(pairwise-test (ucode-primitive &>)
(ucode-primitive negative?)
(ucode-primitive positive?)))
-
-(define <=-expansion (pairwise-test-inverse >-expansion))
-(define >=-expansion (pairwise-test-inverse <-expansion))
\f
;;;; Fixnum Operations
/
1+
<
- <=
=
>
- >=
apply
caaaar
caaadr
/-expansion
1+-expansion
<-expansion
- <=-expansion
=-expansion
>-expansion
- >=-expansion
apply*-expansion
caaaar-expansion
caaadr-expansion
(assert-false (= x (flo:nan.0)))
(assert-false (< x (flo:nan.0)))
(assert-false ((id >=) x (flo:nan.0)))
- (expect-failure (lambda () (assert-false (>= x (flo:nan.0)))))
+ (assert-false (>= x (flo:nan.0)))
(assert-false (> x (flo:nan.0)))
(assert-false ((id <=) x (flo:nan.0)))
- (expect-failure (lambda () (assert-false (<= x (flo:nan.0)))))
+ (assert-false (<= x (flo:nan.0)))
(assert-false (= (flo:nan.0) x))
(assert-false (< (flo:nan.0) x))
(assert-false ((id >=) (flo:nan.0) x))
- (expect-failure (lambda () (assert-false (>= (flo:nan.0) x))))
+ (assert-false (>= (flo:nan.0) x))
(assert-false (> (flo:nan.0) x))
(assert-false ((id <=) (flo:nan.0) x))
- (expect-failure (lambda () (assert-false (<= (flo:nan.0) x)))))))
+ (assert-false (<= (flo:nan.0) x)))))
(define-enumerated-test 'inf*0-exact
(vector (list 0 (flo:+inf.0))