
(/VERSIONCHECK 2) 

(DEFUN |LINDEP;aNonZeroSolution| (|m| $)
  (PROG (|ns|)
    (RETURN
     (COND
      ((NULL
        (LETT |ns| (SPADCALL |m| (QREFELT $ 10)) |LINDEP;aNonZeroSolution|))
       (CONS 1 "failed"))
      ('T (CONS 0 (|SPADfirst| |ns|))))))) 

(DEFUN |LINDEP;linearlyDependent?;VB;2| (|v| $)
  (PROG (|n|)
    (RETURN
     (COND
      ((ZEROP (LETT |n| (QVSIZE |v|) |LINDEP;linearlyDependent?;VB;2|)) 'T)
      ((EQL |n| 1)
       (SPADCALL (SPADCALL |v| (SPADCALL |v| (QREFELT $ 15)) (QREFELT $ 16))
                 (QREFELT $ 18)))
      ('T
       (SPADCALL
        (SPADCALL (SPADCALL (SPADCALL |v| (QREFELT $ 20)) (QREFELT $ 22))
                  (QREFELT $ 24))
        (QREFELT $ 25))))))) 

(DEFUN |LINDEP;linearDependence;VU;3| (|v| $)
  (PROG (|n|)
    (RETURN
     (COND
      ((ZEROP (LETT |n| (QVSIZE |v|) |LINDEP;linearDependence;VU;3|))
       (CONS 0 (GETREFV 0)))
      ((EQL |n| 1)
       (COND
        ((SPADCALL (SPADCALL |v| (SPADCALL |v| (QREFELT $ 15)) (QREFELT $ 16))
                   (QREFELT $ 18))
         (CONS 0 (SPADCALL 1 (|spadConstant| $ 11) (QREFELT $ 28))))
        (#1='T (CONS 1 "failed"))))
      (#1#
       (|LINDEP;aNonZeroSolution|
        (SPADCALL (SPADCALL |v| (QREFELT $ 20)) (QREFELT $ 22)) $)))))) 

(DEFUN |LINDEP;solveLinear;VRU;4| (|v| |c| $)
  (COND
   ((SPADCALL |c| (QREFELT $ 18))
    (CONS 0 (SPADCALL (QVSIZE |v|) (|spadConstant| $ 31) (QREFELT $ 28))))
   ((SPADCALL |v| (QREFELT $ 32)) (CONS 1 "failed"))
   ('T
    (SPADCALL (SPADCALL |v| (QREFELT $ 20)) (SPADCALL 1 |c| (QREFELT $ 33))
              (QREFELT $ 34))))) 

(DEFUN |LINDEP;solveLinear;MVU;5| (|m| |v| $)
  (PROG (|sys|)
    (RETURN
     (SEQ
      (COND
       ((SPADCALL |v| (SPADCALL (QVSIZE |v|) (QREFELT $ 36)) (QREFELT $ 37))
        (CONS 0
              (SPADCALL (SPADCALL |m| (QREFELT $ 38)) (|spadConstant| $ 31)
                        (QREFELT $ 28))))
       ('T
        (SEQ
         (LETT |sys| (SPADCALL |m| |v| (QREFELT $ 41))
               |LINDEP;solveLinear;MVU;5|)
         (EXIT (SPADCALL (QCAR |sys|) (QCDR |sys|) (QREFELT $ 43)))))))))) 

(DEFUN |LINDEP;solveLinear;VRU;6| (|v| |c| $)
  (COND
   ((SPADCALL |c| (QREFELT $ 18))
    (CONS 0 (SPADCALL (QVSIZE |v|) (|spadConstant| $ 45) (QREFELT $ 47))))
   ((SPADCALL |v| (QREFELT $ 32)) (CONS 1 "failed"))
   ('T
    (SPADCALL (SPADCALL |v| (QREFELT $ 20)) (SPADCALL 1 |c| (QREFELT $ 33))
              (QREFELT $ 49))))) 

(DEFUN |LINDEP;solveLinear;MVU;7| (|m| |v| $)
  (PROG (|sys|)
    (RETURN
     (SEQ
      (COND
       ((SPADCALL |v| (SPADCALL (QVSIZE |v|) (QREFELT $ 36)) (QREFELT $ 37))
        (CONS 0
              (SPADCALL (SPADCALL |m| (QREFELT $ 38)) (|spadConstant| $ 45)
                        (QREFELT $ 47))))
       ('T
        (SEQ
         (LETT |sys| (SPADCALL |m| |v| (QREFELT $ 41))
               |LINDEP;solveLinear;MVU;7|)
         (EXIT
          (SPADCALL (SPADCALL (ELT $ 51) (QCAR |sys|) (QREFELT $ 55))
                    (SPADCALL (ELT $ 51) (QCDR |sys|) (QREFELT $ 57))
                    (QREFELT $ 59)))))))))) 

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

(DEFUN |LinearDependence;| (|#1| |#2|)
  (PROG (|pv$| #1=#:G719 $ |dv$| DV$2 DV$1)
    (RETURN
     (PROGN
      (LETT DV$1 (|devaluate| |#1|) . #2=(|LinearDependence|))
      (LETT DV$2 (|devaluate| |#2|) . #2#)
      (LETT |dv$| (LIST '|LinearDependence| DV$1 DV$2) . #2#)
      (LETT $ (GETREFV 60) . #2#)
      (QSETREFV $ 0 |dv$|)
      (QSETREFV $ 3
                (LETT |pv$|
                      (|buildPredVector| 0 0
                                         (LIST
                                          (LETT #1#
                                                (|HasCategory| |#1| '(|Field|))
                                                . #2#)
                                          (|not| #1#)))
                      . #2#))
      (|haddProp| |$ConstructorCache| '|LinearDependence| (LIST DV$1 DV$2)
                  (CONS 1 $))
      (|stuffDomainSlots| $)
      (QSETREFV $ 6 |#1|)
      (QSETREFV $ 7 |#2|)
      (COND
       ((|testBitVector| |pv$| 1)
        (PROGN
         (QSETREFV $ 35
                   (CONS (|dispatchFunction| |LINDEP;solveLinear;VRU;4|) $))
         (QSETREFV $ 34
                   (CONS (|dispatchFunction| |LINDEP;solveLinear;MVU;5|) $))))
       ('T
        (PROGN
         (QSETREFV $ 50
                   (CONS (|dispatchFunction| |LINDEP;solveLinear;VRU;6|) $))
         (QSETREFV $ 49
                   (CONS (|dispatchFunction| |LINDEP;solveLinear;MVU;7|) $)))))
      $)))) 

(MAKEPROP '|LinearDependence| '|infovec|
          (LIST
           '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|local| |#2|) (|List| 27)
              (|Matrix| 6) (0 . |nullSpace|) (5 . |One|) (9 . |One|)
              (|Integer|) (|Vector| 7) (13 . |minIndex|) (18 . |elt|)
              (|Boolean|) (24 . |zero?|) (|Matrix| 7) (29 . |transpose|)
              (|Matrix| $) (34 . |reducedSystem|) (|NonNegativeInteger|)
              (39 . |nullity|) (44 . |positive?|)
              |LINDEP;linearlyDependent?;VB;2| (|Vector| 6) (49 . |new|)
              (|Union| 27 '"failed") |LINDEP;linearDependence;VU;3|
              (55 . |Zero|) (59 . |empty?|) (64 . |new|) (70 . |solveLinear|)
              (76 . |solveLinear|) (82 . |zero|) (87 . =) (93 . |ncols|)
              (|Record| (|:| |mat| 9) (|:| |vec| 27)) (|Vector| $)
              (98 . |reducedSystem|) (|LinearSystemMatrixPackage| 6 27 27 9)
              (104 . |particularSolution|) (|Fraction| 6) (110 . |Zero|)
              (|Vector| 44) (114 . |new|) (|Union| 46 '"failed")
              (120 . |solveLinear|) (126 . |solveLinear|) (132 . |coerce|)
              (|Matrix| 44) (|Mapping| 44 6)
              (|MatrixCategoryFunctions2| 6 27 27 9 44 46 46 52) (137 . |map|)
              (|VectorFunctions2| 6 44) (143 . |map|)
              (|LinearSystemMatrixPackage| 44 46 46 52)
              (149 . |particularSolution|))
           '#(|solveLinear| 155 |linearlyDependent?| 179 |linearDependence|
              184)
           'NIL
           (CONS (|makeByteWordVec2| 1 'NIL)
                 (CONS '#()
                       (CONS '#()
                             (|makeByteWordVec2| 59
                                                 '(1 9 8 0 10 0 6 0 11 0 7 0 12
                                                   1 14 13 0 15 2 14 7 0 13 16
                                                   1 7 17 0 18 1 19 0 14 20 1 7
                                                   9 21 22 1 9 23 0 24 1 13 17
                                                   0 25 2 27 0 23 6 28 0 6 0 31
                                                   1 14 17 0 32 2 14 0 23 7 33
                                                   2 0 29 19 14 34 2 0 29 14 7
                                                   35 1 14 0 23 36 2 14 17 0 0
                                                   37 1 19 23 0 38 2 7 39 21 40
                                                   41 2 42 29 9 27 43 0 44 0 45
                                                   2 46 0 23 44 47 2 0 48 19 14
                                                   49 2 0 48 14 7 50 1 44 0 6
                                                   51 2 54 52 53 9 55 2 56 46
                                                   53 27 57 2 58 48 52 46 59 2
                                                   1 29 14 7 35 2 1 29 19 14 34
                                                   2 2 48 19 14 49 2 2 48 14 7
                                                   50 1 0 17 14 26 1 0 29 14
                                                   30)))))
           '|lookupComplete|)) 
