
(/VERSIONCHECK 2) 

(DEFPARAMETER |RealRootCharacterizationCategory;CAT| 'NIL) 

(DEFPARAMETER |RealRootCharacterizationCategory;AL| 'NIL) 

(DEFUN |RealRootCharacterizationCategory| (&REST #0=#:G1821)
  (LET (#1=#:G1822)
    (COND
      ((SETQ #1#
             (|assoc| #2=(|devaluateList| #0#)
                      |RealRootCharacterizationCategory;AL|))
       (CDR #1#))
      (T (SETQ |RealRootCharacterizationCategory;AL|
               (|cons5| (CONS #2#
                              (SETQ #1#
                                    (APPLY
                                     #'|RealRootCharacterizationCategory;|
                                     #0#)))
                        |RealRootCharacterizationCategory;AL|))
         #1#)))) 

(DEFUN |RealRootCharacterizationCategory;| (|t#1| |t#2|)
  (PROG (#0=#:G1820)
    (RETURN
      (PROG1 (LETT #0#
                   (|sublisV|
                       (PAIR '(|t#1| |t#2|)
                             (LIST (|devaluate| |t#1|)
                                   (|devaluate| |t#2|)))
                       (COND
                         (|RealRootCharacterizationCategory;CAT|)
                         ('T
                          (LETT |RealRootCharacterizationCategory;CAT|
                                (|Join| (|SetCategory|)
                                        (|mkCategory| '|domain|
                                         '(((|sign|
                                             ((|Integer|) |t#2| $))
                                            T)
                                           ((|zero?|
                                             ((|Boolean|) |t#2| $))
                                            T)
                                           ((|negative?|
                                             ((|Boolean|) |t#2| $))
                                            T)
                                           ((|positive?|
                                             ((|Boolean|) |t#2| $))
                                            T)
                                           ((|recip|
                                             ((|Union| |t#2| "failed")
                                              |t#2| $))
                                            T)
                                           ((|definingPolynomial|
                                             (|t#2| $))
                                            T)
                                           ((|allRootsOf|
                                             ((|List| $) |t#2|))
                                            T)
                                           ((|rootOf|
                                             ((|Union| $ "failed")
                                              |t#2|
                                              (|PositiveInteger|)))
                                            T)
                                           ((|approximate|
                                             (|t#1| |t#2| $ |t#1|))
                                            T)
                                           ((|relativeApprox|
                                             (|t#1| |t#2| $ |t#1|))
                                            T))
                                         NIL
                                         '((|PositiveInteger|)
                                           (|List| $) (|Boolean|)
                                           (|Integer|))
                                         NIL))
                                . #1=(|RealRootCharacterizationCategory|))))) . #1#)
        (SETELT #0# 0
                (LIST '|RealRootCharacterizationCategory|
                      (|devaluate| |t#1|) (|devaluate| |t#2|))))))) 
