
(/VERSIONCHECK 2) 

(DEFUN |TESTAUX;testEqualsAux;S2RV;1| (|inp| |ex1| |ex2| $)
  (COND
   ((SPADCALL (SPADCALL |ex1| (QREFELT $ 8)) (SPADCALL |ex2| (QREFELT $ 8))
              (QREFELT $ 10))
    (SPADCALL (QREFELT $ 13)))
   ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
    (SPADCALL |inp|
              (LIST (SPADCALL |ex1| (QREFELT $ 15))
                    (SPADCALL |ex2| (QREFELT $ 15)))
              (QREFELT $ 18)))
   ('T (SPADCALL |inp| NIL (QREFELT $ 18))))) 

(DEFUN |TESTAUX;testEqualsAux;S2RV;2| (|inp| |ex1| |ex2| $)
  (SEQ
   (SPADCALL (SPADCALL "testing in a domain without InputForm!" (QREFELT $ 20))
             (QREFELT $ 21))
   (EXIT
    (COND ((SPADCALL |ex1| |ex2| (QREFELT $ 22)) (SPADCALL (QREFELT $ 13)))
          ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
           (SPADCALL |inp|
                     (LIST (SPADCALL |ex1| (QREFELT $ 15))
                           (SPADCALL |ex2| (QREFELT $ 15)))
                     (QREFELT $ 18)))
          ('T (SPADCALL |inp| NIL (QREFELT $ 18))))))) 

(DEFUN |TESTAUX;testRelativePrecision;2R;3| (|eps| $)
  (PROG (|old|)
    (RETURN
     (SEQ (LETT |old| (QREFELT $ 26) |TESTAUX;testRelativePrecision;2R;3|)
          (SETELT $ 26 |eps|) (EXIT |old|))))) 

(DEFUN |TESTAUX;testAbsolutePrecision;2R;4| (|eps| $)
  (PROG (|old|)
    (RETURN
     (SEQ (LETT |old| (QREFELT $ 27) |TESTAUX;testAbsolutePrecision;2R;4|)
          (SETELT $ 27 |eps|) (EXIT |old|))))) 

(DEFUN |TESTAUX;testRealEqualsAux;S2RV;5| (|inp| |ex1| |ex2| $)
  (PROG (|res| |relative| |absolute|)
    (RETURN
     (SEQ
      (LETT |absolute|
            (SPADCALL (SPADCALL |ex1| |ex2| (QREFELT $ 30)) (QREFELT $ 31))
            . #1=(|TESTAUX;testRealEqualsAux;S2RV;5|))
      (COND
       ((SPADCALL |ex2| (QREFELT $ 32))
        (LETT |relative| (|spadConstant| $ 33) . #1#))
       (#2='T
        (LETT |relative|
              (SPADCALL
               (SPADCALL (SPADCALL |ex1| |ex2| (QREFELT $ 34))
                         (|spadConstant| $ 35) (QREFELT $ 30))
               (QREFELT $ 31))
              . #1#)))
      (LETT |res| NIL . #1#)
      (COND
       ((SPADCALL (QREFELT $ 26) |relative| (QREFELT $ 36))
        (COND
         ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
          (LETT |res|
                (CONS
                 (SPADCALL (SPADCALL "rel err: " (QREFELT $ 20))
                           (SPADCALL |relative| (QREFELT $ 15)) (QREFELT $ 37))
                 |res|)
                . #1#))
         (#2#
          (LETT |res| (CONS (SPADCALL "rel err " (QREFELT $ 20)) |res|)
                . #1#)))))
      (COND
       ((SPADCALL (QREFELT $ 27) |absolute| (QREFELT $ 36))
        (COND
         ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
          (LETT |res|
                (CONS
                 (SPADCALL (SPADCALL "abs err: " (QREFELT $ 20))
                           (SPADCALL |absolute| (QREFELT $ 15)) (QREFELT $ 37))
                 |res|)
                . #1#))
         (#2#
          (LETT |res| (CONS (SPADCALL "abs err " (QREFELT $ 20)) |res|)
                . #1#)))))
      (EXIT
       (COND ((NULL |res|) (SPADCALL (QREFELT $ 13)))
             (#2#
              (SPADCALL |inp|
                        (SPADCALL
                         (LIST (SPADCALL |ex1| (QREFELT $ 15))
                               (SPADCALL |ex2| (QREFELT $ 15)))
                         |res| (QREFELT $ 38))
                        (QREFELT $ 18))))))))) 

(DEFUN |TESTAUX;testComplexEqualsAux;S2CV;6| (|inp| |ex1| |ex2| $)
  (PROG (|res| |relative| |absolute|)
    (RETURN
     (SEQ
      (LETT |absolute|
            (SPADCALL (SPADCALL |ex1| |ex2| (QREFELT $ 41)) (QREFELT $ 42))
            . #1=(|TESTAUX;testComplexEqualsAux;S2CV;6|))
      (COND
       ((SPADCALL |ex2| (QREFELT $ 43))
        (LETT |relative| (|spadConstant| $ 33) . #1#))
       (#2='T
        (LETT |relative|
              (SPADCALL
               (SPADCALL (SPADCALL |ex1| |ex2| (QREFELT $ 44))
                         (|spadConstant| $ 45) (QREFELT $ 41))
               (QREFELT $ 42))
              . #1#)))
      (LETT |res| NIL . #1#)
      (COND
       ((SPADCALL (QREFELT $ 26) |relative| (QREFELT $ 36))
        (COND
         ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
          (LETT |res|
                (CONS
                 (SPADCALL (SPADCALL "rel err: " (QREFELT $ 20))
                           (SPADCALL |relative| (QREFELT $ 15)) (QREFELT $ 37))
                 |res|)
                . #1#))
         (#2#
          (LETT |res| (CONS (SPADCALL "rel err " (QREFELT $ 20)) |res|)
                . #1#)))))
      (COND
       ((SPADCALL (QREFELT $ 27) |absolute| (QREFELT $ 36))
        (COND
         ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
          (LETT |res|
                (CONS
                 (SPADCALL (SPADCALL "abs err: " (QREFELT $ 20))
                           (SPADCALL |absolute| (QREFELT $ 15)) (QREFELT $ 37))
                 |res|)
                . #1#))
         (#2#
          (LETT |res| (CONS (SPADCALL "abs err " (QREFELT $ 20)) |res|)
                . #1#)))))
      (EXIT
       (COND ((NULL |res|) (SPADCALL (QREFELT $ 13)))
             (#2#
              (SPADCALL |inp|
                        (SPADCALL
                         (LIST (SPADCALL |ex1| (QREFELT $ 46))
                               (SPADCALL |ex2| (QREFELT $ 46)))
                         |res| (QREFELT $ 38))
                        (QREFELT $ 18))))))))) 

(DEFUN |TESTAUX;testNotEqualsAux;S2RV;7| (|inp| |ex1| |ex2| $)
  (COND
   ((SPADCALL |ex1| |ex2| (QREFELT $ 22))
    (COND
     ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
      (SPADCALL |inp|
                (LIST (SPADCALL |ex1| (QREFELT $ 15))
                      (SPADCALL |ex2| (QREFELT $ 15)))
                (QREFELT $ 18)))
     (#1='T (SPADCALL |inp| NIL (QREFELT $ 18)))))
   (#1# (SPADCALL (QREFELT $ 13))))) 

(DEFUN |TESTAUX;testTrueAux;SRV;8| (|inp| |ex| $)
  (COND
   ((|domainEqual| (QREFELT $ 6) (|Boolean|))
    (COND (|ex| (SPADCALL (QREFELT $ 13)))
          (#1='T
           (SPADCALL |inp| (LIST (SPADCALL |ex| (QREFELT $ 49)))
                     (QREFELT $ 18)))))
   ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
    (SPADCALL |inp| (LIST (SPADCALL |ex| (QREFELT $ 15))) (QREFELT $ 18)))
   (#1# (SPADCALL |inp| NIL (QREFELT $ 18))))) 

(DEFUN |TESTAUX;testLibraryErrorAux;SRV;9| (|inp| |ex| $)
  (COND
   ((|HasCategory| (QREFELT $ 6) (LIST '|CoercibleTo| '(|OutputForm|)))
    (SPADCALL |inp| (LIST (SPADCALL |ex| (QREFELT $ 15))) (QREFELT $ 51)))
   ('T (SPADCALL |inp| NIL (QREFELT $ 51))))) 

(DEFUN |UnittestAux| (#1=#:G814)
  (PROG ()
    (RETURN
     (PROG (#2=#:G815)
       (RETURN
        (COND
         ((LETT #2#
                (|lassocShiftWithFunction| (LIST (|devaluate| #1#))
                                           (HGET |$ConstructorCache|
                                                 '|UnittestAux|)
                                           '|domainEqualList|)
                . #3=(|UnittestAux|))
          (|CDRwithIncrement| #2#))
         ('T
          (UNWIND-PROTECT (PROG1 (|UnittestAux;| #1#) (LETT #2# T . #3#))
            (COND ((NOT #2#) (HREM |$ConstructorCache| '|UnittestAux|))))))))))) 

(DEFUN |UnittestAux;| (|#1|)
  (PROG (|pv$| $ |dv$| DV$1)
    (RETURN
     (PROGN
      (LETT DV$1 (|devaluate| |#1|) . #1=(|UnittestAux|))
      (LETT |dv$| (LIST '|UnittestAux| DV$1) . #1#)
      (LETT $ (GETREFV 53) . #1#)
      (QSETREFV $ 0 |dv$|)
      (QSETREFV $ 3
                (LETT |pv$|
                      (|buildPredVector| 0 0
                                         (LIST
                                          (|HasCategory| |#1|
                                                         '(|RealNumberSystem|))))
                      . #1#))
      (|haddProp| |$ConstructorCache| '|UnittestAux| (LIST DV$1) (CONS 1 $))
      (|stuffDomainSlots| $)
      (QSETREFV $ 6 |#1|)
      (COND
       ((|HasCategory| |#1| '(|ConvertibleTo| (|InputForm|)))
        (QSETREFV $ 19
                  (CONS (|dispatchFunction| |TESTAUX;testEqualsAux;S2RV;1|)
                        $)))
       ('T
        (QSETREFV $ 19
                  (CONS (|dispatchFunction| |TESTAUX;testEqualsAux;S2RV;2|)
                        $))))
      (COND
       ((|testBitVector| |pv$| 1)
        (PROGN
         (QSETREFV $ 26
                   (SPADCALL (SPADCALL 10 (QREFELT $ 24)) -15 (QREFELT $ 25)))
         (QSETREFV $ 27
                   (SPADCALL (SPADCALL 10 (QREFELT $ 24)) -15 (QREFELT $ 25)))
         (QSETREFV $ 28
                   (CONS
                    (|dispatchFunction| |TESTAUX;testRelativePrecision;2R;3|)
                    $))
         (QSETREFV $ 29
                   (CONS
                    (|dispatchFunction| |TESTAUX;testAbsolutePrecision;2R;4|)
                    $))
         (QSETREFV $ 39
                   (CONS
                    (|dispatchFunction| |TESTAUX;testRealEqualsAux;S2RV;5|) $))
         (QSETREFV $ 47
                   (CONS
                    (|dispatchFunction| |TESTAUX;testComplexEqualsAux;S2CV;6|)
                    $)))))
      $)))) 

(MAKEPROP '|UnittestAux| '|infovec|
          (LIST
           '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|InputForm|)
              (0 . |convert|) (|Boolean|) (5 . =) (|Void|) (|UnittestCount|)
              (11 . |incPass|) (|OutputForm|) (15 . |coerce|) (|String|)
              (|List| 14) (20 . |incFail|) (26 . |testEqualsAux|)
              (33 . |message|) (38 . |addWarning|) (43 . =) (|Integer|)
              (49 . |coerce|) (54 . ^) '|epsilonRelative| '|epsilonAbsolute|
              (60 . |testRelativePrecision|) (65 . |testAbsolutePrecision|)
              (70 . -) (76 . |norm|) (81 . |zero?|) (86 . |Zero|) (90 . /)
              (96 . |One|) (100 . <) (106 . |hconcat|) (112 . |concat|)
              (118 . |testRealEqualsAux|) (|Complex| 6) (125 . -)
              (131 . |norm|) (136 . |zero?|) (141 . /) (147 . |One|)
              (151 . |coerce|) (156 . |testComplexEqualsAux|)
              |TESTAUX;testNotEqualsAux;S2RV;7| (163 . |coerce|)
              |TESTAUX;testTrueAux;SRV;8| (168 . |incLibraryError|)
              |TESTAUX;testLibraryErrorAux;SRV;9|)
           '#(|testTrueAux| 174 |testRelativePrecision| 180 |testRealEqualsAux|
              185 |testNotEqualsAux| 192 |testLibraryErrorAux| 199
              |testEqualsAux| 205 |testComplexEqualsAux| 212
              |testAbsolutePrecision| 219)
           'NIL
           (CONS (|makeByteWordVec2| 1 'NIL)
                 (CONS '#()
                       (CONS '#()
                             (|makeByteWordVec2| 52
                                                 '(1 6 7 0 8 2 7 9 0 0 10 0 12
                                                   11 13 1 6 14 0 15 2 12 11 16
                                                   17 18 3 0 11 16 6 6 19 1 14
                                                   0 16 20 1 12 11 14 21 2 6 9
                                                   0 0 22 1 6 0 23 24 2 6 0 0
                                                   23 25 1 0 6 6 28 1 0 6 6 29
                                                   2 6 0 0 0 30 1 6 0 0 31 1 6
                                                   9 0 32 0 6 0 33 2 6 0 0 0 34
                                                   0 6 0 35 2 6 9 0 0 36 2 14 0
                                                   0 0 37 2 17 0 0 0 38 3 0 11
                                                   16 6 6 39 2 40 0 0 0 41 1 40
                                                   6 0 42 1 40 9 0 43 2 40 0 0
                                                   0 44 0 40 0 45 1 40 14 0 46
                                                   3 0 11 16 40 40 47 1 9 14 0
                                                   49 2 12 11 16 17 51 2 0 11
                                                   16 6 50 1 1 6 6 28 3 1 11 16
                                                   6 6 39 3 0 11 16 6 6 48 2 0
                                                   11 16 6 52 3 0 11 16 6 6 19
                                                   3 1 11 16 40 40 47 1 1 6 6
                                                   29)))))
           '|lookupComplete|)) 
