
(/VERSIONCHECK 2) 

(DEFUN |MLIFT;corrPoly;SupLLLLVRU;1|
       (|m| |lvar| |fval| |ld| |flist| |table| |pmod| $)
  (PROG (|diff| #1=#:G1869 #2=#:G1868 #3=#:G1870 |i| |lcoef| #4=#:G1882 |beta|
         #5=#:G1876 |fbeta| |ddiff| |pol| |l| #6=#:G1847 #7=#:G1846 #8=#:G1848
         |polc| |listcong| #9=#:G1835 #10=#:G1834 #11=#:G1836 #12=#:G1881
         |flcoef| |um| |listpolv| #13=#:G1880 |f1| #14=#:G1879 |y| |a| |np|
         |deg1| #15=#:G1878 |mp| #16=#:G1877 |lp|)
    (RETURN
     (SEQ
      (EXIT
       (COND
        ((EQL (LENGTH |lvar|) 0)
         (SEQ
          (LETT |lp|
                (SPADCALL (SPADCALL (ELT $ 10) |m| (QREFELT $ 15)) |pmod|
                          |table| (QREFELT $ 19))
                . #17=(|MLIFT;corrPoly;SupLLLLVRU;1|))
          (COND
           ((QEQCAR |lp| 1)
            (PROGN (LETT #5# (CONS 1 "failed") . #17#) (GO #5#))))
          (EXIT
           (LETT |lcoef|
                 (CONS 0
                       (PROGN
                        (LETT #16# NIL . #17#)
                        (SEQ (LETT |mp| NIL . #17#)
                             (LETT #15# (QCDR |lp|) . #17#) G190
                             (COND
                              ((OR (ATOM #15#)
                                   (PROGN (LETT |mp| (CAR #15#) . #17#) NIL))
                               #18=(GO G191)))
                             (SEQ
                              (EXIT
                               (LETT #16#
                                     (CONS
                                      (SPADCALL (ELT $ 20) |mp| (QREFELT $ 23))
                                      #16#)
                                     . #17#)))
                             (LETT #15# (CDR #15#) . #17#) #19=(GO G190) G191
                             (EXIT (NREVERSE0 #16#)))))
                 . #17#))))
        (#20='T
         (SEQ (LETT |deg1| (|SPADfirst| |ld|) . #17#)
              (LETT |np| (LENGTH |flist|) . #17#)
              (LETT |a| (SPADCALL (|SPADfirst| |fval|) (QREFELT $ 20)) . #17#)
              (LETT |y| (|SPADfirst| |lvar|) . #17#)
              (LETT |lvar| (CDR |lvar|) . #17#)
              (LETT |listpolv|
                    (PROGN
                     (LETT #14# NIL . #17#)
                     (SEQ (LETT |f1| NIL . #17#) (LETT #13# |flist| . #17#)
                          G190
                          (COND
                           ((OR (ATOM #13#)
                                (PROGN (LETT |f1| (CAR #13#) . #17#) NIL))
                            #18#))
                          (SEQ
                           (EXIT
                            (LETT #14#
                                  (CONS
                                   (SPADCALL
                                    (CONS #'|MLIFT;corrPoly;SupLLLLVRU;1!0|
                                          (VECTOR $ |a| |y|))
                                    |f1| (QREFELT $ 26))
                                   #14#)
                                  . #17#)))
                          (LETT #13# (CDR #13#) . #17#) #19# G191
                          (EXIT (NREVERSE0 #14#))))
                    . #17#)
              (LETT |um|
                    (SPADCALL
                     (CONS #'|MLIFT;corrPoly;SupLLLLVRU;1!1|
                           (VECTOR $ |a| |y|))
                     |m| (QREFELT $ 26))
                    . #17#)
              (LETT |flcoef|
                    (SPADCALL |um| |lvar| (CDR |fval|) (CDR |ld|) |listpolv|
                              |table| |pmod| (QREFELT $ 32))
                    . #17#)
              (COND
               ((QEQCAR |flcoef| 1)
                (PROGN (LETT #5# (CONS 1 "failed") . #17#) (GO #5#)))
               (#20# (LETT |lcoef| (QCDR |flcoef|) . #17#)))
              (LETT |listcong|
                    (PROGN
                     (LETT #12# NIL . #17#)
                     (SEQ (LETT |l| 1 . #17#) G190
                          (COND ((QSGREATERP |l| |np|) #18#))
                          (SEQ
                           (EXIT
                            (LETT #12#
                                  (CONS
                                   (PROGN
                                    (LETT #9# NIL . #17#)
                                    (SEQ (LETT |i| 1 . #17#) G190
                                         (COND ((QSGREATERP |i| |np|) #18#))
                                         (SEQ
                                          (EXIT
                                           (COND
                                            ((COND ((EQL |i| |l|) 'NIL)
                                                   ('T 'T))
                                             (PROGN
                                              (LETT #11#
                                                    (SPADCALL |flist| |i|
                                                              (QREFELT $ 34))
                                                    . #17#)
                                              (COND
                                               (#9#
                                                (LETT #10#
                                                      (SPADCALL #10# #11#
                                                                (QREFELT $ 35))
                                                      . #17#))
                                               ('T
                                                (PROGN
                                                 (LETT #10# #11# . #17#)
                                                 (LETT #9# 'T . #17#)))))))))
                                         (LETT |i| (QSADD1 |i|) . #17#) #19#
                                         G191 (EXIT NIL))
                                    (COND (#9# #10#)
                                          ('T (|spadConstant| $ 36))))
                                   #12#)
                                  . #17#)))
                          (LETT |l| (QSADD1 |l|) . #17#) #19# G191
                          (EXIT (NREVERSE0 #12#))))
                    . #17#)
              (LETT |polc|
                    (SPADCALL
                     (SPADCALL
                      (SPADCALL (|spadConstant| $ 38) |y| 1 (QREFELT $ 40)) |a|
                      (QREFELT $ 41))
                     (QREFELT $ 42))
                    . #17#)
              (LETT |pol| (|spadConstant| $ 36) . #17#)
              (LETT |diff|
                    (SPADCALL |m|
                              (PROGN
                               (LETT #6# NIL . #17#)
                               (SEQ (LETT |i| 1 . #17#) G190
                                    (COND ((QSGREATERP |i| |np|) #18#))
                                    (SEQ
                                     (EXIT
                                      (PROGN
                                       (LETT #8#
                                             (SPADCALL
                                              (SPADCALL |lcoef| |i|
                                                        (QREFELT $ 34))
                                              (SPADCALL |listcong| |i|
                                                        (QREFELT $ 34))
                                              (QREFELT $ 35))
                                             . #17#)
                                       (COND
                                        (#6#
                                         (LETT #7#
                                               (SPADCALL #7# #8#
                                                         (QREFELT $ 43))
                                               . #17#))
                                        ('T
                                         (PROGN
                                          (LETT #7# #8# . #17#)
                                          (LETT #6# 'T . #17#)))))))
                                    (LETT |i| (QSADD1 |i|) . #17#) #19# G191
                                    (EXIT NIL))
                               (COND (#6# #7#) (#20# (|spadConstant| $ 44))))
                              (QREFELT $ 45))
                    . #17#)
              (SEQ (LETT |l| 1 . #17#) G190
                   (COND ((QSGREATERP |l| |deg1|) #18#))
                   (SEQ
                    (COND
                     ((SPADCALL |diff| (|spadConstant| $ 44) (QREFELT $ 49))
                      (PROGN (LETT #5# (CONS 0 |lcoef|) . #17#) (GO #5#))))
                    (LETT |pol| (SPADCALL |pol| |polc| (QREFELT $ 35)) . #17#)
                    (LETT |ddiff|
                          (SPADCALL
                           (CONS #'|MLIFT;corrPoly;SupLLLLVRU;1!2|
                                 (VECTOR |a| $ |y| |l|))
                           |diff| (QREFELT $ 26))
                          . #17#)
                    (EXIT
                     (COND
                      ((SPADCALL |ddiff| (|spadConstant| $ 44) (QREFELT $ 49))
                       "next l")
                      ('T
                       (SEQ
                        (LETT |fbeta|
                              (SPADCALL |ddiff| |lvar| (CDR |fval|) (CDR |ld|)
                                        |listpolv| |table| |pmod|
                                        (QREFELT $ 32))
                              . #17#)
                        (COND
                         ((QEQCAR |fbeta| 1)
                          (PROGN (LETT #5# (CONS 1 "failed") . #17#) (GO #5#)))
                         ('T (LETT |beta| (QCDR |fbeta|) . #17#)))
                        (LETT |lcoef|
                              (PROGN
                               (LETT #4# NIL . #17#)
                               (SEQ (LETT |i| 1 . #17#) G190
                                    (COND ((QSGREATERP |i| |np|) #18#))
                                    (SEQ
                                     (EXIT
                                      (LETT #4#
                                            (CONS
                                             (SPADCALL
                                              (SPADCALL |lcoef| |i|
                                                        (QREFELT $ 34))
                                              (SPADCALL
                                               (SPADCALL |beta| |i|
                                                         (QREFELT $ 34))
                                               |pol| (QREFELT $ 35))
                                              (QREFELT $ 43))
                                             #4#)
                                            . #17#)))
                                    (LETT |i| (QSADD1 |i|) . #17#) #19# G191
                                    (EXIT (NREVERSE0 #4#))))
                              . #17#)
                        (EXIT
                         (LETT |diff|
                               (SPADCALL |diff|
                                         (SPADCALL
                                          (PROGN
                                           (LETT #1# NIL . #17#)
                                           (SEQ (LETT |i| 1 . #17#) G190
                                                (COND
                                                 ((QSGREATERP |i| |np|) #18#))
                                                (SEQ
                                                 (EXIT
                                                  (PROGN
                                                   (LETT #3#
                                                         (SPADCALL
                                                          (SPADCALL |listcong|
                                                                    |i|
                                                                    (QREFELT $
                                                                             34))
                                                          (SPADCALL |beta| |i|
                                                                    (QREFELT $
                                                                             34))
                                                          (QREFELT $ 35))
                                                         . #17#)
                                                   (COND
                                                    (#1#
                                                     (LETT #2#
                                                           (SPADCALL #2# #3#
                                                                     (QREFELT $
                                                                              43))
                                                           . #17#))
                                                    ('T
                                                     (PROGN
                                                      (LETT #2# #3# . #17#)
                                                      (LETT #1# 'T
                                                            . #17#)))))))
                                                (LETT |i| (QSADD1 |i|) . #17#)
                                                #19# G191 (EXIT NIL))
                                           (COND (#1# #2#)
                                                 ('T (|spadConstant| $ 44))))
                                          |pol| (QREFELT $ 35))
                                         (QREFELT $ 45))
                               . #17#)))))))
                   (LETT |l| (QSADD1 |l|) . #17#) #19# G191 (EXIT NIL))
              (EXIT (CONS 0 |lcoef|))))))
      #5# (EXIT #5#))))) 

(DEFUN |MLIFT;corrPoly;SupLLLLVRU;1!2| (|p1| $$)
  (PROG (|l| |y| $ |a|)
    (LETT |l| (QREFELT $$ 3) . #1=(|MLIFT;corrPoly;SupLLLLVRU;1|))
    (LETT |y| (QREFELT $$ 2) . #1#)
    (LETT $ (QREFELT $$ 1) . #1#)
    (LETT |a| (QREFELT $$ 0) . #1#)
    (RETURN
     (PROGN
      (SPADCALL (|MLIFT;normalDerivM| |p1| |l| |y| $) |y| |a|
                (QREFELT $ 24)))))) 

(DEFUN |MLIFT;corrPoly;SupLLLLVRU;1!1| (|p1| $$)
  (PROG (|y| |a| $)
    (LETT |y| (QREFELT $$ 2) . #1=(|MLIFT;corrPoly;SupLLLLVRU;1|))
    (LETT |a| (QREFELT $$ 1) . #1#)
    (LETT $ (QREFELT $$ 0) . #1#)
    (RETURN (PROGN (SPADCALL |p1| |y| |a| (QREFELT $ 24)))))) 

(DEFUN |MLIFT;corrPoly;SupLLLLVRU;1!0| (|p1| $$)
  (PROG (|y| |a| $)
    (LETT |y| (QREFELT $$ 2) . #1=(|MLIFT;corrPoly;SupLLLLVRU;1|))
    (LETT |a| (QREFELT $$ 1) . #1#)
    (LETT $ (QREFELT $$ 0) . #1#)
    (RETURN (PROGN (SPADCALL |p1| |y| |a| (QREFELT $ 24)))))) 

(DEFUN |MLIFT;lifting1;SupLLLLLLVRU;2|
       (|m| |lvar| |plist| |vlist| |tlist| |coeflist| |listdeg| |table| |pmod|
        $)
  (PROG (#1=#:G1908 |idegj| #2=#:G1925 |term| #3=#:G1923 #4=#:G1924 |alpha|
         #5=#:G1922 |lalpha| |flalpha| |mc| #6=#:G1901 #7=#:G1896 #8=#:G1895
         #9=#:G1897 #10=#:G1921 |pol| |k| |polc| |mj| #11=#:G1919 |tpol|
         #12=#:G1920 |clist| #13=#:G1918 #14=#:G1916 |p| #15=#:G1917 |lcp|
         #16=#:G1915 |clv| |tlv| |#G40| |#G39| #17=#:G1914 #18=#:G1913
         #19=#:G1912 #20=#:G1911 #21=#:G1910 #22=#:G1909 |subsval| |subsvar|
         |ldeg| |degj| |v| |conglist| |li| |x| |j| |testp| |nvar|)
    (RETURN
     (SEQ
      (EXIT
       (SEQ (LETT |conglist| NIL . #23=(|MLIFT;lifting1;SupLLLLLLVRU;2|))
            (LETT |nvar| (LENGTH |lvar|) . #23#)
            (LETT |testp| (COND ((NULL |tlist|) 'NIL) ('T 'T)) . #23#)
            (LETT |lalpha| NIL . #23#) (LETT |tlv| NIL . #23#)
            (LETT |subsvar| NIL . #23#) (LETT |subsval| NIL . #23#)
            (LETT |li| |lvar| . #23#) (LETT |ldeg| NIL . #23#)
            (LETT |clv| NIL . #23#)
            (SEQ (LETT |j| 1 . #23#) G190
                 (COND ((QSGREATERP |j| |nvar|) #24=(GO G191)))
                 (SEQ (LETT |x| (|SPADfirst| |li|) . #23#)
                      (LETT |li| (CDR |li|) . #23#)
                      (LETT |conglist| |plist| . #23#)
                      (LETT |v| (|SPADfirst| |vlist|) . #23#)
                      (LETT |vlist| (CDR |vlist|) . #23#)
                      (LETT |degj| (SPADCALL |listdeg| |j| (QREFELT $ 50))
                            . #23#)
                      (LETT |ldeg| (CONS |degj| |ldeg|) . #23#)
                      (LETT |subsvar| (CONS |x| |subsvar|) . #23#)
                      (LETT |subsval| (CONS |v| |subsval|) . #23#)
                      (COND
                       (|testp|
                        (SEQ
                         (COND
                          ((< |j| |nvar|)
                           (SEQ
                            (LETT |tlv|
                                  (PROGN
                                   (LETT #22# NIL . #23#)
                                   (SEQ (LETT |p| NIL . #23#)
                                        (LETT #21# |tlist| . #23#) G190
                                        (COND
                                         ((OR (ATOM #21#)
                                              (PROGN
                                               (LETT |p| (CAR #21#) . #23#)
                                               NIL))
                                          #24#))
                                        (SEQ
                                         (EXIT
                                          (LETT #22#
                                                (CONS
                                                 (SPADCALL |p| |li| |vlist|
                                                           (QREFELT $ 51))
                                                 #22#)
                                                . #23#)))
                                        (LETT #21# (CDR #21#) . #23#)
                                        #25=(GO G190) G191
                                        (EXIT (NREVERSE0 #22#))))
                                  . #23#)
                            (EXIT
                             (LETT |clv|
                                   (PROGN
                                    (LETT #20# NIL . #23#)
                                    (SEQ (LETT |clist| NIL . #23#)
                                         (LETT #19# |coeflist| . #23#) G190
                                         (COND
                                          ((OR (ATOM #19#)
                                               (PROGN
                                                (LETT |clist| (CAR #19#)
                                                      . #23#)
                                                NIL))
                                           #24#))
                                         (SEQ
                                          (EXIT
                                           (LETT #20#
                                                 (CONS
                                                  (PROGN
                                                   (LETT #18# NIL . #23#)
                                                   (SEQ
                                                    (LETT |term| NIL . #23#)
                                                    (LETT #17# |clist| . #23#)
                                                    G190
                                                    (COND
                                                     ((OR (ATOM #17#)
                                                          (PROGN
                                                           (LETT |term|
                                                                 (CAR #17#)
                                                                 . #23#)
                                                           NIL))
                                                      #24#))
                                                    (SEQ
                                                     (EXIT
                                                      (LETT #18#
                                                            (CONS
                                                             (CONS
                                                              (QCAR |term|)
                                                              (SPADCALL
                                                               (QCDR |term|)
                                                               |li| |vlist|
                                                               (QREFELT $ 51)))
                                                             #18#)
                                                            . #23#)))
                                                    (LETT #17# (CDR #17#)
                                                          . #23#)
                                                    #25# G191
                                                    (EXIT (NREVERSE0 #18#))))
                                                  #20#)
                                                 . #23#)))
                                         (LETT #19# (CDR #19#) . #23#) #25#
                                         G191 (EXIT (NREVERSE0 #20#))))
                                   . #23#))))
                          ('T
                           (PROGN
                            (LETT |#G39| |tlist| . #23#)
                            (LETT |#G40| |coeflist| . #23#)
                            (LETT |tlv| |#G39| . #23#)
                            (LETT |clv| |#G40| . #23#))))
                         (LETT |plist|
                               (PROGN
                                (LETT #16# NIL . #23#)
                                (SEQ (LETT |lcp| NIL . #23#)
                                     (LETT #15# |tlv| . #23#)
                                     (LETT |p| NIL . #23#)
                                     (LETT #14# |plist| . #23#) G190
                                     (COND
                                      ((OR (ATOM #14#)
                                           (PROGN
                                            (LETT |p| (CAR #14#) . #23#)
                                            NIL)
                                           (ATOM #15#)
                                           (PROGN
                                            (LETT |lcp| (CAR #15#) . #23#)
                                            NIL))
                                       #24#))
                                     (SEQ
                                      (EXIT
                                       (LETT #16#
                                             (CONS
                                              (|MLIFT;subslead| |p| |lcp| $)
                                              #16#)
                                             . #23#)))
                                     (LETT #14#
                                           (PROG1 (CDR #14#)
                                             (LETT #15# (CDR #15#) . #23#))
                                           . #23#)
                                     #25# G191 (EXIT (NREVERSE0 #16#))))
                               . #23#)
                         (EXIT
                          (COND
                           ((NULL (NULL |coeflist|))
                            (LETT |plist|
                                  (PROGN
                                   (LETT #13# NIL . #23#)
                                   (SEQ (LETT |clist| NIL . #23#)
                                        (LETT #12# |clv| . #23#)
                                        (LETT |tpol| NIL . #23#)
                                        (LETT #11# |plist| . #23#) G190
                                        (COND
                                         ((OR (ATOM #11#)
                                              (PROGN
                                               (LETT |tpol| (CAR #11#) . #23#)
                                               NIL)
                                              (ATOM #12#)
                                              (PROGN
                                               (LETT |clist| (CAR #12#) . #23#)
                                               NIL))
                                          #24#))
                                        (SEQ
                                         (EXIT
                                          (LETT #13#
                                                (CONS
                                                 (|MLIFT;subscoef| |tpol|
                                                  |clist| $)
                                                 #13#)
                                                . #23#)))
                                        (LETT #11#
                                              (PROG1 (CDR #11#)
                                                (LETT #12# (CDR #12#) . #23#))
                                              . #23#)
                                        #25# G191 (EXIT (NREVERSE0 #13#))))
                                  . #23#)))))))
                      (LETT |mj|
                            (SPADCALL
                             (CONS #'|MLIFT;lifting1;SupLLLLLLVRU;2!0|
                                   (VECTOR $ |vlist| |li|))
                             |m| (QREFELT $ 26))
                            . #23#)
                      (LETT |polc|
                            (SPADCALL (SPADCALL |x| (QREFELT $ 52))
                                      (SPADCALL |v| (QREFELT $ 20))
                                      (QREFELT $ 41))
                            . #23#)
                      (LETT |pol| (|spadConstant| $ 38) . #23#)
                      (SEQ
                       (EXIT
                        (SEQ (LETT |k| 1 . #23#) G190
                             (COND ((QSGREATERP |k| |degj|) #24#))
                             (SEQ
                              (LETT |pol|
                                    (SPADCALL |pol| |polc| (QREFELT $ 53))
                                    . #23#)
                              (LETT |mc|
                                    (SPADCALL
                                     (PROGN
                                      (LETT #7# NIL . #23#)
                                      (SEQ (LETT |term| NIL . #23#)
                                           (LETT #10# |plist| . #23#) G190
                                           (COND
                                            ((OR (ATOM #10#)
                                                 (PROGN
                                                  (LETT |term| (CAR #10#)
                                                        . #23#)
                                                  NIL))
                                             #24#))
                                           (SEQ
                                            (EXIT
                                             (PROGN
                                              (LETT #9# |term| . #23#)
                                              (COND
                                               (#7#
                                                (LETT #8#
                                                      (SPADCALL #8# #9#
                                                                (QREFELT $ 35))
                                                      . #23#))
                                               ('T
                                                (PROGN
                                                 (LETT #8# #9# . #23#)
                                                 (LETT #7# 'T . #23#)))))))
                                           (LETT #10# (CDR #10#) . #23#) #25#
                                           G191 (EXIT NIL))
                                      (COND (#7# #8#)
                                            ('T (|spadConstant| $ 36))))
                                     |mj| (QREFELT $ 45))
                                    . #23#)
                              (COND
                               ((SPADCALL |mc| (|spadConstant| $ 44)
                                          (QREFELT $ 49))
                                (PROGN (LETT #6# "next var" . #23#) (GO #6#))))
                              (LETT |mc|
                                    (SPADCALL
                                     (CONS #'|MLIFT;lifting1;SupLLLLLLVRU;2!1|
                                           (VECTOR $ |x| |k|))
                                     |mc| (QREFELT $ 26))
                                    . #23#)
                              (LETT |mc|
                                    (SPADCALL
                                     (CONS #'|MLIFT;lifting1;SupLLLLLLVRU;2!2|
                                           (VECTOR $ |v| |x|))
                                     |mc| (QREFELT $ 26))
                                    . #23#)
                              (EXIT
                               (COND
                                ((SPADCALL |mc| (|spadConstant| $ 44)
                                           (QREFELT $ 49))
                                 "next k")
                                ('T
                                 (SEQ
                                  (LETT |flalpha|
                                        (SPADCALL |mc| (CDR |subsvar|)
                                                  (CDR |subsval|) (CDR |ldeg|)
                                                  |conglist| |table| |pmod|
                                                  (QREFELT $ 32))
                                        . #23#)
                                  (COND
                                   ((QEQCAR |flalpha| 1)
                                    (PROGN
                                     (LETT #1# (CONS 1 "failed") . #23#)
                                     (GO #1#)))
                                   ('T
                                    (LETT |lalpha| (QCDR |flalpha|) . #23#)))
                                  (EXIT
                                   (LETT |plist|
                                         (PROGN
                                          (LETT #5# NIL . #23#)
                                          (SEQ (LETT |alpha| NIL . #23#)
                                               (LETT #4# |lalpha| . #23#)
                                               (LETT |term| NIL . #23#)
                                               (LETT #3# |plist| . #23#) G190
                                               (COND
                                                ((OR (ATOM #3#)
                                                     (PROGN
                                                      (LETT |term| (CAR #3#)
                                                            . #23#)
                                                      NIL)
                                                     (ATOM #4#)
                                                     (PROGN
                                                      (LETT |alpha| (CAR #4#)
                                                            . #23#)
                                                      NIL))
                                                 #24#))
                                               (SEQ
                                                (EXIT
                                                 (LETT #5#
                                                       (CONS
                                                        (SPADCALL |term|
                                                                  (SPADCALL
                                                                   |alpha|
                                                                   |pol|
                                                                   (QREFELT $
                                                                            54))
                                                                  (QREFELT $
                                                                           45))
                                                        #5#)
                                                       . #23#)))
                                               (LETT #3#
                                                     (PROG1 (CDR #3#)
                                                       (LETT #4# (CDR #4#)
                                                             . #23#))
                                                     . #23#)
                                               #25# G191
                                               (EXIT (NREVERSE0 #5#))))
                                         . #23#)))))))
                             (LETT |k| (QSADD1 |k|) . #23#) #25# G191
                             (EXIT NIL)))
                       #6# (EXIT #6#))
                      (LETT |idegj| (|MLIFT;maxDegree| |m| |x| $) . #23#)
                      (SEQ (LETT |term| NIL . #23#) (LETT #2# |plist| . #23#)
                           G190
                           (COND
                            ((OR (ATOM #2#)
                                 (PROGN (LETT |term| (CAR #2#) . #23#) NIL))
                             #24#))
                           (SEQ
                            (EXIT
                             (LETT |idegj|
                                   (- |idegj| (|MLIFT;maxDegree| |term| |x| $))
                                   . #23#)))
                           (LETT #2# (CDR #2#) . #23#) #25# G191 (EXIT NIL))
                      (EXIT
                       (COND
                        ((< |idegj| 0)
                         (PROGN
                          (LETT #1# (CONS 1 "failed") . #23#)
                          (GO #1#))))))
                 (LETT |j| (QSADD1 |j|) . #23#) #25# G191 (EXIT NIL))
            (EXIT (CONS 0 |plist|))))
      #1# (EXIT #1#))))) 

(DEFUN |MLIFT;lifting1;SupLLLLLLVRU;2!2| (|p1| $$)
  (PROG (|x| |v| $)
    (LETT |x| (QREFELT $$ 2) . #1=(|MLIFT;lifting1;SupLLLLLLVRU;2|))
    (LETT |v| (QREFELT $$ 1) . #1#)
    (LETT $ (QREFELT $$ 0) . #1#)
    (RETURN (PROGN (SPADCALL |p1| (LIST |x|) (LIST |v|) (QREFELT $ 51)))))) 

(DEFUN |MLIFT;lifting1;SupLLLLLLVRU;2!1| (|p1| $$)
  (PROG (|k| |x| $)
    (LETT |k| (QREFELT $$ 2) . #1=(|MLIFT;lifting1;SupLLLLLLVRU;2|))
    (LETT |x| (QREFELT $$ 1) . #1#)
    (LETT $ (QREFELT $$ 0) . #1#)
    (RETURN (PROGN (|MLIFT;normalDerivM| |p1| |k| |x| $))))) 

(DEFUN |MLIFT;lifting1;SupLLLLLLVRU;2!0| (|p1| $$)
  (PROG (|li| |vlist| $)
    (LETT |li| (QREFELT $$ 2) . #1=(|MLIFT;lifting1;SupLLLLLLVRU;2|))
    (LETT |vlist| (QREFELT $$ 1) . #1#)
    (LETT $ (QREFELT $$ 0) . #1#)
    (RETURN (PROGN (SPADCALL |p1| |li| |vlist| (QREFELT $ 51)))))) 

(DEFUN |MLIFT;maxDegree| (|um| |x| $)
  (PROG (|ans|)
    (RETURN
     (SEQ (LETT |ans| 0 . #1=(|MLIFT;maxDegree|))
          (SEQ G190
               (COND
                ((NULL
                  (COND
                   ((SPADCALL |um| (|spadConstant| $ 44) (QREFELT $ 49)) 'NIL)
                   ('T 'T)))
                 (GO G191)))
               (SEQ
                (LETT |ans|
                      (MAX |ans|
                           (SPADCALL (SPADCALL |um| (QREFELT $ 59)) |x|
                                     (QREFELT $ 60)))
                      . #1#)
                (EXIT (LETT |um| (SPADCALL |um| (QREFELT $ 61)) . #1#)))
               NIL (GO G190) G191 (EXIT NIL))
          (EXIT |ans|))))) 

(DEFUN |MLIFT;lifting;SupLLLLLRU;4|
       (|um| |lvar| |plist| |vlist| |tlist| |listdeg| |pmod| $)
  (PROG (#1=#:G1963 |ffl| |table| |tab| #2=#:G1956 #3=#:G1950 #4=#:G1949
         #5=#:G1951 #6=#:G1968 |pol| |nplist| #7=#:G1967 |pp| #8=#:G1966
         |listdet| |ldcoef| #9=#:G1965 #10=#:G1964)
    (RETURN
     (SEQ
      (EXIT
       (SEQ
        (LETT |nplist|
              (PROGN
               (LETT #10# NIL . #11=(|MLIFT;lifting;SupLLLLLRU;4|))
               (SEQ (LETT |pp| NIL . #11#) (LETT #9# |plist| . #11#) G190
                    (COND
                     ((OR (ATOM #9#) (PROGN (LETT |pp| (CAR #9#) . #11#) NIL))
                      #12=(GO G191)))
                    (SEQ
                     (EXIT
                      (LETT #10#
                            (CONS (SPADCALL (ELT $ 20) |pp| (QREFELT $ 23))
                                  #10#)
                            . #11#)))
                    (LETT #9# (CDR #9#) . #11#) #13=(GO G190) G191
                    (EXIT (NREVERSE0 #10#))))
              . #11#)
        (EXIT
         (COND
          ((NULL |tlist|)
           (SEQ
            (LETT |table|
                  (SPADCALL (SPADCALL |um| (QREFELT $ 62)) |pmod| |plist|
                            (QREFELT $ 65))
                  . #11#)
            (EXIT
             (COND
              ((QEQCAR |table| 1)
               (|error| "Table construction failed in MLIFT"))
              (#14='T
               (SPADCALL |um| |lvar| |nplist| |vlist| |tlist| NIL |listdeg|
                         (QCDR |table|) |pmod| (QREFELT $ 58)))))))
          (#14#
           (SEQ
            (LETT |ldcoef| (SPADCALL |um| |plist| |tlist| (QREFELT $ 68))
                  . #11#)
            (COND
             ((NULL (LETT |listdet| (QVELT |ldcoef| 0) . #11#))
              (LETT |tab|
                    (SPADCALL (SPADCALL |um| (QREFELT $ 62)) |pmod| |plist|
                              (QREFELT $ 65))
                    . #11#))
             (#14#
              (SEQ
               (COND
                ((EQL (LENGTH |listdet|) (LENGTH |plist|))
                 (PROGN (LETT #1# (CONS 0 |listdet|) . #11#) (GO #1#))))
               (LETT |plist| (QVELT |ldcoef| 2) . #11#)
               (LETT |nplist|
                     (PROGN
                      (LETT #8# NIL . #11#)
                      (SEQ (LETT |pp| NIL . #11#) (LETT #7# |plist| . #11#)
                           G190
                           (COND
                            ((OR (ATOM #7#)
                                 (PROGN (LETT |pp| (CAR #7#) . #11#) NIL))
                             #12#))
                           (SEQ
                            (EXIT
                             (LETT #8#
                                   (CONS
                                    (SPADCALL (ELT $ 20) |pp| (QREFELT $ 23))
                                    #8#)
                                   . #11#)))
                           (LETT #7# (CDR #7#) . #11#) #13# G191
                           (EXIT (NREVERSE0 #8#))))
                     . #11#)
               (LETT |um|
                     (PROG2
                         (LETT #2#
                               (SPADCALL |um|
                                         (PROGN
                                          (LETT #3# NIL . #11#)
                                          (SEQ (LETT |pol| NIL . #11#)
                                               (LETT #6# |listdet| . #11#) G190
                                               (COND
                                                ((OR (ATOM #6#)
                                                     (PROGN
                                                      (LETT |pol| (CAR #6#)
                                                            . #11#)
                                                      NIL))
                                                 #12#))
                                               (SEQ
                                                (EXIT
                                                 (PROGN
                                                  (LETT #5# |pol| . #11#)
                                                  (COND
                                                   (#3#
                                                    (LETT #4#
                                                          (SPADCALL #4# #5#
                                                                    (QREFELT $
                                                                             35))
                                                          . #11#))
                                                   ('T
                                                    (PROGN
                                                     (LETT #4# #5# . #11#)
                                                     (LETT #3# 'T . #11#)))))))
                                               (LETT #6# (CDR #6#) . #11#) #13#
                                               G191 (EXIT NIL))
                                          (COND (#3# #4#)
                                                (#14# (|spadConstant| $ 36))))
                                         (QREFELT $ 70))
                               . #11#)
                         (QCDR #2#)
                       (|check-union| (QEQCAR #2# 0)
                                      (|SparseUnivariatePolynomial|
                                       (QREFELT $ 9))
                                      #2#))
                     . #11#)
               (LETT |tlist| (QVELT |ldcoef| 3) . #11#)
               (EXIT
                (LETT |tab|
                      (SPADCALL (SPADCALL |um| (QREFELT $ 62)) |pmod|
                                (CDR |plist|) (QREFELT $ 65))
                      . #11#)))))
            (EXIT
             (COND
              ((QEQCAR |tab| 1) (|error| "Table construction failed in MLIFT"))
              (#14#
               (SEQ (LETT |table| (QCDR |tab|) . #11#)
                    (LETT |ffl|
                          (SPADCALL |um| |lvar| |nplist| |vlist| |tlist|
                                    (QVELT |ldcoef| 1) |listdeg| |table| |pmod|
                                    (QREFELT $ 58))
                          . #11#)
                    (COND
                     ((QEQCAR |ffl| 1)
                      (PROGN (LETT #1# (CONS 1 "failed") . #11#) (GO #1#))))
                    (EXIT (CONS 0 (APPEND |listdet| (QCDR |ffl|))))))))))))))
      #1# (EXIT #1#))))) 

(DEFUN |MLIFT;normalDerivM| (|g| |m| |x| $)
  (SPADCALL (|MLIFT;normalDeriv| (SPADCALL |g| |x| (QREFELT $ 73)) |m| $) |x|
            (QREFELT $ 74))) 

(DEFUN |MLIFT;normalDeriv| (|f| |m| $)
  (PROG (|n| |ris| #1=#:G1972 |n1| |k| |#G1|)
    (RETURN
     (SEQ (LETT |#G1| (SPADCALL |f| (QREFELT $ 62)) . #2=(|MLIFT;normalDeriv|))
          (LETT |n1| |#G1| . #2#)
          (EXIT
           (COND ((< |#G1| |m|) (|spadConstant| $ 44))
                 ((EQL |n1| |m|)
                  (SPADCALL (SPADCALL |f| (QREFELT $ 59)) (QREFELT $ 42)))
                 ('T
                  (SEQ (LETT |k| (SPADCALL |n1| |m| (QREFELT $ 76)) . #2#)
                       (LETT |ris| (|spadConstant| $ 44) . #2#)
                       (LETT |n| |n1| . #2#)
                       (SEQ G190
                            (COND
                             ((NULL (COND ((< |n| |m|) 'NIL) ('T 'T)))
                              #3=(GO G191)))
                            (SEQ
                             (SEQ G190 (COND ((NULL (< |n| |n1|)) #3#))
                                  (SEQ
                                   (LETT |k|
                                         (QUOTIENT2 (* |k| (- |n1| |m|)) |n1|)
                                         . #2#)
                                   (EXIT (LETT |n1| (- |n1| 1) . #2#)))
                                  NIL #4=(GO G190) G191 (EXIT NIL))
                             (LETT |ris|
                                   (SPADCALL |ris|
                                             (SPADCALL
                                              (SPADCALL |k|
                                                        (SPADCALL |f|
                                                                  (QREFELT $
                                                                           59))
                                                        (QREFELT $ 77))
                                              (PROG1
                                                  (LETT #1# (- |n| |m|) . #2#)
                                                (|check-subtype| (>= #1# 0)
                                                                 '(|NonNegativeInteger|)
                                                                 #1#))
                                              (QREFELT $ 78))
                                             (QREFELT $ 43))
                                   . #2#)
                             (LETT |f| (SPADCALL |f| (QREFELT $ 61)) . #2#)
                             (EXIT
                              (LETT |n| (SPADCALL |f| (QREFELT $ 62)) . #2#)))
                            NIL #4# G191 (EXIT NIL))
                       (EXIT |ris|))))))))) 

(DEFUN |MLIFT;subslead| (|m| |pol| $)
  (PROG (|dm|)
    (RETURN
     (SEQ (LETT |dm| (SPADCALL |m| (QREFELT $ 62)) |MLIFT;subslead|)
          (EXIT
           (SPADCALL (SPADCALL |pol| |dm| (QREFELT $ 78))
                     (SPADCALL |m| (QREFELT $ 61)) (QREFELT $ 43))))))) 

(DEFUN |MLIFT;subscoef| (|um| |lterm| $)
  (PROG (|new| |i| #1=#:G1981 |k| |dm|)
    (RETURN
     (SEQ (LETT |dm| (SPADCALL |um| (QREFELT $ 62)) . #2=(|MLIFT;subscoef|))
          (LETT |new|
                (SPADCALL (SPADCALL |um| (QREFELT $ 59)) |dm| (QREFELT $ 78))
                . #2#)
          (SEQ (LETT |k| (- |dm| 1) . #2#) G190 (COND ((< |k| 0) (GO G191)))
               (SEQ
                (LETT |i|
                      (PROG1 (LETT #1# |k| . #2#)
                        (|check-subtype| (>= #1# 0) '(|NonNegativeInteger|)
                                         #1#))
                      . #2#)
                (COND
                 ((OR (NULL |lterm|)
                      (NULL (EQL (QCAR (|SPADfirst| |lterm|)) |i|)))
                  (EXIT
                   (LETT |new|
                         (SPADCALL |new|
                                   (SPADCALL (SPADCALL |um| |i| (QREFELT $ 79))
                                             |i| (QREFELT $ 78))
                                   (QREFELT $ 43))
                         . #2#))))
                (LETT |new|
                      (SPADCALL |new|
                                (SPADCALL (QCDR (|SPADfirst| |lterm|)) |i|
                                          (QREFELT $ 78))
                                (QREFELT $ 43))
                      . #2#)
                (EXIT (LETT |lterm| (CDR |lterm|) . #2#)))
               (LETT |k| (+ |k| -1) . #2#) (GO G190) G191 (EXIT NIL))
          (EXIT |new|))))) 

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

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

(MAKEPROP '|MultivariateLifting| '|infovec|
          (LIST
           '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|local| |#2|)
              (|local| |#3|) (|local| |#4|) (0 . |ground|)
              (|SparseUnivariatePolynomial| 8) (|Mapping| 8 9)
              (|SparseUnivariatePolynomial| 9)
              (|SparseUnivariatePolynomialFunctions2| 9 8) (5 . |map|)
              (|Union| 64 '"failed") (|Vector| 64) (|GenExEuclid| 8 11)
              (11 . |solveid|) (18 . |coerce|) (|Mapping| 9 8)
              (|SparseUnivariatePolynomialFunctions2| 8 9) (23 . |map|)
              (29 . |eval|) (|Mapping| 9 9) (36 . |map|) (|Union| 31 '"failed")
              (|List| 7) (|List| 8) (|List| 39) (|List| 13)
              |MLIFT;corrPoly;SupLLLLVRU;1| (|Integer|) (42 . |elt|) (48 . *)
              (54 . |One|) (58 . |One|) (62 . |One|) (|NonNegativeInteger|)
              (66 . |monomial|) (73 . -) (79 . |coerce|) (84 . +) (90 . |Zero|)
              (94 . -) (100 . |Zero|) (104 . |Zero|) (|Boolean|) (108 . =)
              (114 . |elt|) (120 . |eval|) (127 . |coerce|) (132 . *) (138 . *)
              (|List| 9) (|Record| (|:| |expt| 39) (|:| |pcoef| 9))
              (|List| (|List| 56)) |MLIFT;lifting1;SupLLLLLLVRU;2|
              (144 . |leadingCoefficient|) (149 . |degree|) (155 . |reductum|)
              (160 . |degree|) (|Union| 17 '"failed") (|List| 11)
              (165 . |tablePow|)
              (|Record| (|:| |deter| 31) (|:| |dterm| 57) (|:| |nfacts| 64)
                        (|:| |nlead| 55))
              (|NPCoef| 11 6 7 8 9) (172 . |npcoef|) (|Union| $ '"failed")
              (179 . |exquo|) |MLIFT;lifting;SupLLLLLRU;4|
              (|SparseUnivariatePolynomial| $) (185 . |univariate|)
              (191 . |multivariate|) (|IntegerCombinatoricFunctions| 33)
              (197 . |binomial|) (203 . *) (209 . |monomial|)
              (215 . |coefficient|))
           '#(|lifting1| 221 |lifting| 234 |corrPoly| 245) 'NIL
           (CONS (|makeByteWordVec2| 1 'NIL)
                 (CONS '#()
                       (CONS '#()
                             (|makeByteWordVec2| 79
                                                 '(1 9 8 0 10 2 14 11 12 13 15
                                                   3 18 16 11 8 17 19 1 9 0 8
                                                   20 2 22 13 21 11 23 3 9 0 0
                                                   7 0 24 2 13 0 25 0 26 2 31
                                                   13 0 33 34 2 13 0 0 0 35 0
                                                   13 0 36 0 8 0 37 0 9 0 38 3
                                                   9 0 0 7 39 40 2 9 0 0 0 41 1
                                                   13 0 9 42 2 13 0 0 0 43 0 13
                                                   0 44 2 13 0 0 0 45 0 6 0 46
                                                   0 8 0 47 2 13 48 0 0 49 2 30
                                                   39 0 33 50 3 9 0 0 28 29 51
                                                   1 9 0 7 52 2 9 0 0 0 53 2 13
                                                   0 0 9 54 1 13 9 0 59 2 9 39
                                                   0 7 60 1 13 0 0 61 1 13 39 0
                                                   62 3 18 63 39 8 64 65 3 67
                                                   66 13 64 55 68 2 13 69 0 0
                                                   70 2 9 72 0 7 73 2 9 0 72 7
                                                   74 2 75 33 33 33 76 2 9 0 33
                                                   0 77 2 13 0 9 39 78 2 13 9 0
                                                   39 79 9 0 27 13 28 31 29 55
                                                   57 30 17 8 58 7 0 27 13 28
                                                   64 29 55 30 8 71 7 0 27 13
                                                   28 29 30 31 17 8 32)))))
           '|lookupComplete|)) 
