
(/VERSIONCHECK 2) 

(DEFPARAMETER |OrderedRing;AL| 'NIL) 

(DEFUN |OrderedRing| ()
  (LET (#:G6087)
    (COND (|OrderedRing;AL|) (T (SETQ |OrderedRing;AL| (|OrderedRing;|)))))) 

(DEFUN |OrderedRing;| ()
  (PROG (#1=#:G6085)
    (RETURN
     (PROG1
         (LETT #1#
               (|Join| (|OrderedAbelianGroup|) (|Ring|) (|Monoid|)
                       (|mkCategory| '|domain|
                                     '(((|positive?| ((|Boolean|) $)) T)
                                       ((|negative?| ((|Boolean|) $)) T)
                                       ((|sign| ((|Integer|) $)) T)
                                       ((|abs| ($ $)) T))
                                     NIL '((|Integer|) (|Boolean|)) NIL))
               |OrderedRing|)
       (SETELT #1# 0 '(|OrderedRing|)))))) 

(MAKEPROP '|OrderedRing| 'NILADIC T) 
