;;;; Copyright 2002, Jonathan Bachrach.  See file TERMS.

(use goo/boot)
(use goo/fun)
(use goo/macros)
;; (use goo/types)

(exported
 ;;  represents infinite repeating series
 <mag>
 (dg <   (x|<mag> y|<mag> => <log>))
 (dg >   (x|<mag> y|<mag> => <log>))
 (dg <=  (x|<mag> y|<mag> => <log>))
 (dg >=  (x|<mag> y|<mag> => <log>))
 (dg min (x|<mag> y|<mag> => <mag>))
 (dg max (x|<mag> y|<mag> => <mag>)))

(dm > (x|<mag> y|<mag> => <log>)
  (< y x))

(dm (<= inline) (x|<mag> y|<mag>  => <log>)
  (not (< y x)))

(dm (>= inline) (x|<mag> y|<mag>  => <log>)
  (not (< x y)))

(dm (min inline) (x|<mag> y|<mag> => <mag>)
  (if (< x y) x y))

(dm (max inline) (x|<mag> y|<mag> => <mag>)
  (if (> x y) x y))

