
(/VERSIONCHECK 2) 

(DEFUN |AN;zero?;$B;1| (|a| $)
  (SPADCALL |a| (|spadConstant| $ 7) (QREFELT $ 10))) 

(DEFUN |AN;one?;$B;2| (|a| $)
  (SPADCALL |a| (|spadConstant| $ 12) (QREFELT $ 10))) 

(DEFUN |AN;=;2$B;3| (|a| |b| $)
  (SPADCALL (SPADCALL |a| |b| (QREFELT $ 15)) (|spadConstant| $ 7)
      (QREFELT $ 10))) 

(DEFUN |AN;convert;$If;4| (|x| $)
  (SPADCALL (SPADCALL |x| (QREFELT $ 18)) (QREFELT $ 20))) 

(DEFUN |AlgebraicNumber| ()
  (PROG ()
    (RETURN
      (PROG (#0=#:G1850)
        (RETURN
          (COND
            ((LETT #0# (HGET |$ConstructorCache| '|AlgebraicNumber|)
                   . #1=(|AlgebraicNumber|))
             (|CDRwithIncrement| (CDAR #0#)))
            ('T
             (UNWIND-PROTECT
               (PROG1 (CDDAR (HPUT |$ConstructorCache|
                                   '|AlgebraicNumber|
                                   (LIST
                                    (CONS NIL
                                     (CONS 1 (|AlgebraicNumber;|))))))
                 (LETT #0# T . #1#))
               (COND
                 ((NOT #0#)
                  (HREM |$ConstructorCache| '|AlgebraicNumber|))))))))))) 

(DEFUN |AlgebraicNumber;| ()
  (PROG (|dv$| $ |pv$|)
    (RETURN
      (PROGN
        (LETT |dv$| '(|AlgebraicNumber|) . #0=(|AlgebraicNumber|))
        (LETT $ (GETREFV 66) . #0#)
        (QSETREFV $ 0 |dv$|)
        (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
        (|haddProp| |$ConstructorCache| '|AlgebraicNumber| NIL
            (CONS 1 $))
        (|stuffDomainSlots| $)
        (AND (|HasCategory| $ '(|Ring|)) (|augmentPredVector| $ 1))
        (AND (|HasCategory| $ '(|RetractableTo| (|Integer|)))
             (|augmentPredVector| $ 2))
        (QSETREFV $ 6 (|InnerAlgebraicNumber|))
        $)))) 

(MAKEPROP '|AlgebraicNumber| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL (|InnerAlgebraicNumber|) '|Rep|
             (0 . |Zero|) (4 . |Zero|) (|Boolean|) (8 . |trueEqual|)
             |AN;zero?;$B;1| (14 . |One|) (18 . |One|) |AN;one?;$B;2|
             (22 . -) |AN;=;2$B;3| (|InputForm|) (28 . |convert|)
             (|InputFormFunctions1| $$) (33 . |coerceToType|)
             |AN;convert;$If;4| (|SparseUnivariatePolynomial| $)
             (|Kernel| $) (|List| 23)
             (|SparseMultivariatePolynomial| 39 23)
             (|NonNegativeInteger|) (|Matrix| 37) (|Matrix| $)
             (|Complex| 32)
             (|Record| (|:| |mat| 27) (|:| |vec| (|Vector| 37)))
             (|Vector| $) (|Float|) (|DoubleFloat|)
             (|Record| (|:| |mat| 35) (|:| |vec| (|Vector| 39)))
             (|Matrix| 39) (|Union| 37 '"failed") (|Fraction| 39)
             (|Union| 39 '"failed") (|Integer|) (|PositiveInteger|)
             (|Union| $ '"failed")
             (|Record| (|:| |unit| $) (|:| |canonical| $)
                 (|:| |associate| $))
             (|List| $) (|Record| (|:| |coef| 43) (|:| |generator| $))
             (|Union| 43 '"failed")
             (|Record| (|:| |quotient| $) (|:| |remainder| $))
             (|Record| (|:| |coef1| $) (|:| |coef2| $)
                       (|:| |generator| $))
             (|Record| (|:| |coef1| $) (|:| |coef2| $))
             (|Union| 48 '"failed") (|Factored| $) (|Polynomial| $)
             (|Symbol|) (|BasicOperator|) (|Mapping| $ $) (|List| 53)
             (|Mapping| $ 43) (|List| 56) (|List| 54) (|List| 52)
             (|Union| 23 '"failed") (|List| 62) (|Equation| $)
             (|SingleInteger|) (|String|) (|OutputForm|))
          '#(~= 38 |zerosOf| 44 |zeroOf| 60 |zero?| 76 |unitNormal| 81
             |unitCanonical| 86 |unit?| 91 |tower| 96 |subtractIfCan|
             101 |subst| 107 |squareFreePart| 126 |squareFree| 131
             |sqrt| 136 |sizeLess?| 141 |sample| 147 |rootsOf| 151
             |rootOf| 167 |retractIfCan| 183 |retract| 198 |rem| 213
             |reducedSystem| 219 |reduce| 241 |recip| 246 |quo| 251
             |principalIdeal| 257 |prime?| 262 |paren| 267 |operators|
             277 |operator| 282 |one?| 287 |odd?| 292 |numer| 297
             |nthRoot| 302 |norm| 308 |multiEuclidean| 332 |minPoly|
             338 |min| 343 |max| 349 |map| 355 |mainKernel| 361 |lcm|
             366 |latex| 377 |kernels| 382 |kernel| 387 |is?| 399 |inv|
             411 |height| 416 |hash| 421 |gcdPolynomial| 426 |gcd| 432
             |freeOf?| 443 |factor| 455 |extendedEuclidean| 460 |exquo|
             473 |expressIdealMember| 479 |even?| 485 |eval| 490
             |euclideanSize| 586 |elt| 591 |divide| 627 |distribute|
             633 |differentiate| 644 |denom| 655 |definingPolynomial|
             660 |convert| 665 |coerce| 685 |characteristic| 715 |box|
             719 |belong?| 729 |associates?| 734 ^ 740 |Zero| 758 |One|
             762 D 766 >= 777 > 783 = 789 <= 795 < 801 / 807 - 813 +
             824 ** 830 * 854)
          'NIL
          (CONS (|makeByteWordVec2| 1
                    '(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                      0 0 0 0 0 0))
                (CONS '#(|AlgebraicallyClosedField&| |Field&|
                         |EuclideanDomain&|
                         |UniqueFactorizationDomain&| NIL |GcdDomain&|
                         |DivisionRing&| |IntegralDomain&| |Algebra&|
                         |Algebra&| |DifferentialRing&| NIL NIL NIL
                         |Module&| NIL |Module&| NIL NIL NIL |Ring&|
                         NIL NIL NIL NIL NIL |AbelianGroup&| NIL NIL
                         |ExpressionSpace&| NIL |Monoid&|
                         |AbelianMonoid&| |OrderedSet&| |SemiGroup&|
                         |AbelianSemiGroup&| NIL |SetCategory&|
                         |Evalable&| NIL NIL NIL NIL |RetractableTo&|
                         |RetractableTo&| |RadicalCategory&| NIL NIL
                         NIL NIL NIL |BasicType&| |InnerEvalable&|
                         |InnerEvalable&| |RetractableTo&| NIL)
                      (CONS '#((|AlgebraicallyClosedField|) (|Field|)
                               (|EuclideanDomain|)
                               (|UniqueFactorizationDomain|)
                               (|PrincipalIdealDomain|) (|GcdDomain|)
                               (|DivisionRing|) (|IntegralDomain|)
                               (|Algebra| 37) (|Algebra| $$)
                               (|DifferentialRing|)
                               (|CharacteristicZero|)
                               (|LinearlyExplicitRingOver| 37)
                               (|LinearlyExplicitRingOver| 39)
                               (|Module| 37) (|EntireRing|)
                               (|Module| $$) (|CommutativeRing|)
                               (|BiModule| 37 37) (|BiModule| $$ $$)
                               (|Ring|) (|RightModule| 37)
                               (|LeftModule| 37) (|RightModule| $$)
                               (|LeftModule| $$) (|Rng|)
                               (|AbelianGroup|) (|SemiRing|)
                               (|CancellationAbelianMonoid|)
                               (|ExpressionSpace|) (|SemiRng|)
                               (|Monoid|) (|AbelianMonoid|)
                               (|OrderedSet|) (|SemiGroup|)
                               (|AbelianSemiGroup|) (|RealConstant|)
                               (|SetCategory|) (|Evalable| $$)
                               (|ConvertibleTo| 17)
                               (|ConvertibleTo| 29)
                               (|ConvertibleTo| 32)
                               (|ConvertibleTo| 33)
                               (|RetractableTo| 37)
                               (|RetractableTo| 39) (|RadicalCategory|)
                               (|canonicalsClosed|)
                               (|canonicalUnitNormal|) (|unitsKnown|)
                               (|noZeroDivisors|) (|CommutativeStar|)
                               (|BasicType|) (|InnerEvalable| $$ $$)
                               (|InnerEvalable| (|Kernel| $$) $$)
                               (|RetractableTo| (|Kernel| $$))
                               (|CoercibleTo| 65))
                            (|makeByteWordVec2| 65
                                '(0 0 0 7 0 6 0 8 2 6 9 0 0 10 0 0 0 12
                                  0 6 0 13 2 0 0 0 0 15 1 6 17 0 18 1
                                  19 17 17 20 2 0 9 0 0 1 1 0 43 51 1 2
                                  0 43 22 52 1 1 0 43 22 1 1 0 0 51 1 1
                                  0 0 22 1 2 0 0 22 52 1 1 0 9 0 11 1 0
                                  42 0 1 1 0 0 0 1 1 0 9 0 1 1 0 24 0 1
                                  2 0 41 0 0 1 3 0 0 0 24 43 1 2 0 0 0
                                  61 1 2 0 0 0 62 1 1 0 0 0 1 1 0 50 0
                                  1 1 0 0 0 1 2 0 9 0 0 1 0 0 0 1 1 0
                                  43 22 1 1 0 43 51 1 2 0 43 22 52 1 1
                                  0 0 22 1 1 0 0 51 1 2 0 0 22 52 1 1 0
                                  36 0 1 1 0 38 0 1 1 0 60 0 1 1 0 37 0
                                  1 1 0 39 0 1 1 0 23 0 1 2 0 0 0 0 1 1
                                  0 27 28 1 2 0 30 28 31 1 2 0 34 28 31
                                  1 1 0 35 28 1 1 0 0 0 1 1 0 41 0 1 2
                                  0 0 0 0 1 1 0 44 43 1 1 0 9 0 1 1 0 0
                                  43 1 1 0 0 0 1 1 0 55 0 1 1 0 53 53 1
                                  1 0 9 0 14 1 2 9 0 1 1 0 25 0 1 2 0 0
                                  0 39 1 2 0 0 0 23 1 2 0 0 0 24 1 2 0
                                  22 22 23 1 2 0 22 22 24 1 2 0 45 43 0
                                  1 1 1 22 23 1 2 0 0 0 0 1 2 0 0 0 0 1
                                  2 0 0 54 23 1 1 0 60 0 1 2 0 0 0 0 1
                                  1 0 0 43 1 1 0 64 0 1 1 0 24 0 1 2 0
                                  0 53 0 1 2 0 0 53 43 1 2 0 9 0 53 1 2
                                  0 9 0 52 1 1 0 0 0 1 1 0 26 0 1 1 0
                                  63 0 1 2 0 22 22 22 1 2 0 0 0 0 1 1 0
                                  0 43 1 2 0 9 0 0 1 2 0 9 0 52 1 1 0
                                  50 0 1 2 0 47 0 0 1 3 0 49 0 0 0 1 2
                                  0 41 0 0 1 2 0 45 43 0 1 1 2 9 0 1 3
                                  0 0 0 53 54 1 3 0 0 0 55 57 1 3 0 0 0
                                  53 56 1 3 0 0 0 52 54 1 3 0 0 0 55 58
                                  1 3 0 0 0 52 56 1 3 0 0 0 59 58 1 3 0
                                  0 0 59 57 1 3 0 0 0 43 43 1 2 0 0 0
                                  62 1 3 0 0 0 0 0 1 3 0 0 0 24 43 1 2
                                  0 0 0 61 1 3 0 0 0 23 0 1 1 0 26 0 1
                                  2 0 0 53 43 1 4 0 0 53 0 0 0 1 5 0 0
                                  53 0 0 0 0 1 3 0 0 53 0 0 1 2 0 0 53
                                  0 1 2 0 46 0 0 1 1 0 0 0 1 2 0 0 0 0
                                  1 1 0 0 0 1 2 0 0 0 26 1 1 0 25 0 1 1
                                  1 0 0 1 1 0 17 0 21 1 0 29 0 1 1 0 32
                                  0 1 1 0 33 0 1 1 0 0 25 1 1 0 0 39 1
                                  1 0 0 0 1 1 0 0 37 1 1 0 0 23 1 1 0
                                  65 0 1 0 0 26 1 1 0 0 43 1 1 0 0 0 1
                                  1 0 9 53 1 2 0 9 0 0 1 2 0 0 0 40 1 2
                                  0 0 0 26 1 2 0 0 0 39 1 0 0 0 7 0 0 0
                                  12 1 0 0 0 1 2 0 0 0 26 1 2 0 9 0 0 1
                                  2 0 9 0 0 1 2 0 9 0 0 16 2 0 9 0 0 1
                                  2 0 9 0 0 1 2 0 0 0 0 1 1 0 0 0 1 2 0
                                  0 0 0 15 2 0 0 0 0 1 2 0 0 0 40 1 2 0
                                  0 0 26 1 2 0 0 0 39 1 2 0 0 0 37 1 2
                                  0 0 40 0 1 2 0 0 26 0 1 2 0 0 39 0 1
                                  2 0 0 0 0 1 2 0 0 0 37 1 2 0 0 37 0
                                  1)))))
          '|lookupComplete|)) 

(MAKEPROP '|AlgebraicNumber| 'NILADIC T) 
