
(/VERSIONCHECK 2) 

(DEFUN |SAEFACT;factor;UPAF;1| (|q| $)
  (SPADCALL |q| (ELT $ 11) (QREFELT $ 15))) 

(DEFUN |SimpleAlgebraicExtensionAlgFactor| (&REST #0=#:G1818)
  (PROG ()
    (RETURN
      (PROG (#1=#:G1819)
        (RETURN
          (COND
            ((LETT #1#
                   (|lassocShiftWithFunction| (|devaluateList| #0#)
                       (HGET |$ConstructorCache|
                             '|SimpleAlgebraicExtensionAlgFactor|)
                       '|domainEqualList|)
                   . #2=(|SimpleAlgebraicExtensionAlgFactor|))
             (|CDRwithIncrement| #1#))
            ('T
             (UNWIND-PROTECT
               (PROG1 (APPLY (|function|
                                 |SimpleAlgebraicExtensionAlgFactor;|)
                             #0#)
                 (LETT #1# T . #2#))
               (COND
                 ((NOT #1#)
                  (HREM |$ConstructorCache|
                        '|SimpleAlgebraicExtensionAlgFactor|))))))))))) 

(DEFUN |SimpleAlgebraicExtensionAlgFactor;| (|#1| |#2| |#3|)
  (PROG (DV$1 DV$2 DV$3 |dv$| $ |pv$|)
    (RETURN
      (PROGN
        (LETT DV$1 (|devaluate| |#1|)
              . #0=(|SimpleAlgebraicExtensionAlgFactor|))
        (LETT DV$2 (|devaluate| |#2|) . #0#)
        (LETT DV$3 (|devaluate| |#3|) . #0#)
        (LETT |dv$|
              (LIST '|SimpleAlgebraicExtensionAlgFactor| DV$1 DV$2
                    DV$3) . #0#)
        (LETT $ (GETREFV 17) . #0#)
        (QSETREFV $ 0 |dv$|)
        (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
        (|haddProp| |$ConstructorCache|
            '|SimpleAlgebraicExtensionAlgFactor| (LIST DV$1 DV$2 DV$3)
            (CONS 1 $))
        (|stuffDomainSlots| $)
        (QSETREFV $ 6 |#1|)
        (QSETREFV $ 7 |#2|)
        (QSETREFV $ 8 |#3|)
        $)))) 

(MAKEPROP '|SimpleAlgebraicExtensionAlgFactor| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|local| |#2|)
             (|local| |#3|) (|Factored| 6) (|RationalFactorize| 6)
             (0 . |factor|) (|Factored| 8) (|Mapping| 9 6)
             (|InnerAlgFactor| (|Fraction| (|Integer|)) 6 7 8)
             (5 . |factor|) |SAEFACT;factor;UPAF;1|)
          '#(|factor| 11) 'NIL
          (CONS (|makeByteWordVec2| 1 'NIL)
                (CONS '#()
                      (CONS '#()
                            (|makeByteWordVec2| 16
                                '(1 10 9 6 11 2 14 12 8 13 15 1 0 12 8
                                  16)))))
          '|lookupComplete|)) 
