
(/VERSIONCHECK 2) 

(DEFUN |INPRODPF;applyOverZ| (|f| |st| $)
  (PROG (|stZ|)
    (RETURN
      (SEQ (LETT |stZ|
                 (SPADCALL (CONS #'|INPRODPF;applyOverZ!0| $) |st|
                     (QREFELT $ 14))
                 |INPRODPF;applyOverZ|)
           (EXIT (SPADCALL (CONS #'|INPRODPF;applyOverZ!1| $)
                     (SPADCALL |stZ| |f|) (QREFELT $ 18))))))) 

(DEFUN |INPRODPF;applyOverZ!1| (|#1| $)
  (SPADCALL |#1| (QREFELT $ 15))) 

(DEFUN |INPRODPF;applyOverZ!0| (|#1| $) (SPADCALL |#1| (QREFELT $ 9))) 

(DEFUN |INPRODPF;infiniteProduct;2UTS;2| (|x| $)
  (SPADCALL
      (|INPRODPF;applyOverZ| (ELT $ 20) (SPADCALL |x| (QREFELT $ 21))
          $)
      (QREFELT $ 22))) 

(DEFUN |INPRODPF;evenInfiniteProduct;2UTS;3| (|x| $)
  (SPADCALL
      (|INPRODPF;applyOverZ| (ELT $ 24) (SPADCALL |x| (QREFELT $ 21))
          $)
      (QREFELT $ 22))) 

(DEFUN |INPRODPF;oddInfiniteProduct;2UTS;4| (|x| $)
  (SPADCALL
      (|INPRODPF;applyOverZ| (ELT $ 26) (SPADCALL |x| (QREFELT $ 21))
          $)
      (QREFELT $ 22))) 

(DEFUN |INPRODPF;generalInfiniteProduct;UTS2IUTS;5| (|x| |a| |d| $)
  (SPADCALL
      (|INPRODPF;applyOverZ|
          (CONS #'|INPRODPF;generalInfiniteProduct;UTS2IUTS;5!0|
                (VECTOR $ |d| |a|))
          (SPADCALL |x| (QREFELT $ 21)) $)
      (QREFELT $ 22))) 

(DEFUN |INPRODPF;generalInfiniteProduct;UTS2IUTS;5!0| (|#1| $$)
  (SPADCALL |#1| (QREFELT $$ 2) (QREFELT $$ 1)
      (QREFELT (QREFELT $$ 0) 28))) 

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

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

(MAKEPROP '|InfiniteProductPrimeField| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|local| |#2|)
             (|Integer|) (0 . |convert|) (|Stream| 8) (|Mapping| 8 6)
             (|Stream| 6) (|StreamFunctions2| 6 8) (5 . |map|)
             (11 . |coerce|) (|Mapping| 6 8) (|StreamFunctions2| 8 6)
             (16 . |map|) (|StreamInfiniteProduct| 8)
             (22 . |infiniteProduct|) (27 . |coefficients|)
             (32 . |series|) |INPRODPF;infiniteProduct;2UTS;2|
             (37 . |evenInfiniteProduct|)
             |INPRODPF;evenInfiniteProduct;2UTS;3|
             (42 . |oddInfiniteProduct|)
             |INPRODPF;oddInfiniteProduct;2UTS;4|
             (47 . |generalInfiniteProduct|)
             |INPRODPF;generalInfiniteProduct;UTS2IUTS;5|)
          '#(|oddInfiniteProduct| 54 |infiniteProduct| 59
             |generalInfiniteProduct| 64 |evenInfiniteProduct| 71)
          'NIL
          (CONS (|makeByteWordVec2| 1 'NIL)
                (CONS '#()
                      (CONS '#()
                            (|makeByteWordVec2| 29
                                '(1 6 8 0 9 2 13 10 11 12 14 1 6 0 8 15
                                  2 17 12 16 10 18 1 19 10 10 20 1 7 12
                                  0 21 1 7 0 12 22 1 19 10 10 24 1 19
                                  10 10 26 3 19 10 10 8 8 28 1 0 7 7 27
                                  1 0 7 7 23 3 0 7 7 8 8 29 1 0 7 7 25)))))
          '|lookupComplete|)) 
