
(/VERSIONCHECK 2) 

(DEFUN |LSQM;conv| (|v| $)
  (PROG (|cond| |i| #0=#:G1821 |j| #1=#:G1822 |z|)
    (RETURN
      (SEQ (LETT |cond|
                 (SPADCALL (QREFELT $ 6) (QREFELT $ 6)
                     (|spadConstant| $ 10) (QREFELT $ 13))
                 . #2=(|LSQM;conv|))
           (LETT |z| 0 . #2#)
           (SEQ (LETT |i| 1 . #2#) (LETT #0# (QREFELT $ 6) . #2#) G190
                (COND ((QSGREATERP |i| #0#) #3=(GO G191)))
                (SEQ (EXIT (SEQ (LETT |j| 1 . #2#)
                                (LETT #1# (QREFELT $ 6) . #2#) G190
                                (COND ((QSGREATERP |j| #1#) #3#))
                                (SEQ (LETT |z| (+ |z| 1) . #2#)
                                     (EXIT
                                      (SPADCALL |cond| |i| |j|
                                       (SPADCALL |v| |z|
                                        (QREFELT $ 16))
                                       (QREFELT $ 17))))
                                (LETT |j| (QSADD1 |j|) . #2#)
                                #4=(GO G190) G191 (EXIT NIL))))
                (LETT |i| (QSADD1 |i|) . #2#) #4# G191 (EXIT NIL))
           (EXIT (SPADCALL |cond| (QREFELT $ 19))))))) 

(DEFUN |LSQM;coordinates;$VV;2| (|a| |b| $)
  (PROG (|res| |i| #0=#:G1828 |j| #1=#:G1829 |z|)
    (RETURN
      (SEQ (LETT |res|
                 (SPADCALL (QREFELT $ 9) (|spadConstant| $ 10)
                     (QREFELT $ 21))
                 . #2=(|LSQM;coordinates;$VV;2|))
           (LETT |z| 0 . #2#)
           (SEQ (LETT |i| 1 . #2#) (LETT #0# (QREFELT $ 6) . #2#) G190
                (COND ((QSGREATERP |i| #0#) #3=(GO G191)))
                (SEQ (EXIT (SEQ (LETT |j| 1 . #2#)
                                (LETT #1# (QREFELT $ 6) . #2#) G190
                                (COND ((QSGREATERP |j| #1#) #3#))
                                (SEQ (LETT |z| (+ |z| 1) . #2#)
                                     (EXIT
                                      (SPADCALL |res| |z|
                                       (SPADCALL |a| |i| |j|
                                        (QREFELT $ 22))
                                       (QREFELT $ 23))))
                                (LETT |j| (QSADD1 |j|) . #2#)
                                #4=(GO G190) G191 (EXIT NIL))))
                (LETT |i| (QSADD1 |i|) . #2#) #4# G191 (EXIT NIL))
           (EXIT |res|))))) 

(DEFUN |LSQM;convDM| (|v| $)
  (PROG (|sq|)
    (RETURN
      (SEQ (LETT |sq| (|LSQM;conv| |v| $) |LSQM;convDM|)
           (EXIT (SPADCALL |sq| (QREFELT $ 26))))))) 

(DEFUN |LSQM;basis;V;4| ($)
  (PROG (#0=#:G1837 |i| #1=#:G1838 #2=#:G1832 |ldp| |res|)
    (RETURN
      (SEQ (SETELT $ 9 (* (QREFELT $ 6) (QREFELT $ 6)))
           (LETT |ldp|
                 (PROGN
                   (LETT #0# NIL . #3=(|LSQM;basis;V;4|))
                   (SEQ (LETT |i| 1 . #3#)
                        (LETT #1# (QREFELT $ 9) . #3#) G190
                        (COND ((QSGREATERP |i| #1#) (GO G191)))
                        (SEQ (EXIT (LETT #0#
                                    (CONS
                                     (SPADCALL
                                      (PROG1 (LETT #2# |i| . #3#)
                                        (|check-subtype| (> #2# 0)
                                         '(|PositiveInteger|) #2#))
                                      (QREFELT $ 28))
                                     #0#) . #3#)))
                        (LETT |i| (QSADD1 |i|) . #3#) (GO G190) G191
                        (EXIT (NREVERSE0 #0#)))) . #3#)
           (EXIT (LETT |res|
                       (SPADCALL
                           (SPADCALL
                               (CONS (|function| |LSQM;convDM|) $)
                               |ldp| (QREFELT $ 33))
                           (QREFELT $ 35)) . #3#)))))) 

(DEFUN |LSQM;someBasis;V;5| ($) (SPADCALL (QREFELT $ 36))) 

(DEFUN |LSQM;rank;Pi;6| ($) (* (QREFELT $ 6) (QREFELT $ 6))) 

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

(DEFUN |LieSquareMatrix;| (|#1| |#2|)
  (PROG (DV$1 DV$2 |dv$| $ |pv$|)
    (RETURN
      (PROGN
        (LETT DV$1 (|devaluate| |#1|) . #0=(|LieSquareMatrix|))
        (LETT DV$2 (|devaluate| |#2|) . #0#)
        (LETT |dv$| (LIST '|LieSquareMatrix| DV$1 DV$2) . #0#)
        (LETT $ (GETREFV 72) . #0#)
        (QSETREFV $ 0 |dv$|)
        (QSETREFV $ 3
            (LETT |pv$|
                  (|buildPredVector| 0 0
                      (LIST (|HasCategory| |#2|
                                '(|PartialDifferentialRing| (|Symbol|)))
                            (|HasCategory| |#2| '(|DifferentialRing|))
                            (|HasCategory| |#2| '(|CommutativeRing|))
                            (|HasCategory| |#2|
                                '(|LinearlyExplicitRingOver|
                                     (|Integer|)))
                            (|HasCategory| |#2|
                                '(|RetractableTo|
                                     (|Fraction| (|Integer|))))
                            (|HasCategory| |#2|
                                '(|RetractableTo| (|Integer|)))
                            (|HasCategory| |#2| '(|Finite|))
                            (|HasCategory| |#2| '(|EuclideanDomain|))
                            (|HasCategory| |#2| '(|SetCategory|))
                            (|HasCategory| |#2| '(|Field|))
                            (|HasCategory| |#2| '(|IntegralDomain|))
                            (AND (|HasCategory| |#2| '(|SetCategory|))
                                 (|HasCategory| |#2|
                                     (LIST '|Evalable|
                                      (|devaluate| |#2|))))
                            (OR (AND (|HasCategory| |#2|
                                      '(|CommutativeRing|))
                                     (|HasCategory| |#2|
                                      (LIST '|Evalable|
                                       (|devaluate| |#2|))))
                                (AND (|HasCategory| |#2|
                                      '(|DifferentialRing|))
                                     (|HasCategory| |#2|
                                      (LIST '|Evalable|
                                       (|devaluate| |#2|))))
                                (AND (|HasCategory| |#2| '(|Finite|))
                                     (|HasCategory| |#2|
                                      (LIST '|Evalable|
                                       (|devaluate| |#2|))))
                                (AND (|HasCategory| |#2|
                                      '(|SetCategory|))
                                     (|HasCategory| |#2|
                                      (LIST '|Evalable|
                                       (|devaluate| |#2|))))
                                (AND (|HasCategory| |#2|
                                      (LIST '|Evalable|
                                       (|devaluate| |#2|)))
                                     (|HasCategory| |#2|
                                      '(|LinearlyExplicitRingOver|
                                        (|Integer|))))
                                (AND (|HasCategory| |#2|
                                      (LIST '|Evalable|
                                       (|devaluate| |#2|)))
                                     (|HasCategory| |#2|
                                      '(|PartialDifferentialRing|
                                        (|Symbol|))))))) . #0#))
        (|haddProp| |$ConstructorCache| '|LieSquareMatrix|
            (LIST DV$1 DV$2) (CONS 1 $))
        (|stuffDomainSlots| $)
        (QSETREFV $ 6 |#1|)
        (QSETREFV $ 7 |#2|)
        (AND (|HasCategory| $ '(|shallowlyMutable|))
             (|augmentPredVector| $ 8192))
        (AND (|HasCategory| $ '(|finiteAggregate|))
             (|augmentPredVector| $ 16384))
        (AND (|HasCategory| $ '(|finiteAggregate|))
             (|HasCategory| |#2| '(|SetCategory|))
             (|augmentPredVector| $ 32768))
        (QSETREFV $ 8
            (|AssociatedLieAlgebra| |#2| (|SquareMatrix| |#1| |#2|)))
        (QSETREFV $ 9 (* |#1| |#1|))
        $)))) 

(MAKEPROP '|LieSquareMatrix| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL (|AssociatedLieAlgebra| 7 18)
             (|local| |#1|) (|local| |#2|) '|Rep| '|n2| (0 . |Zero|)
             (|NonNegativeInteger|) (|Matrix| 7) (4 . |new|)
             (|Integer|) (|DirectProduct| 9 7) (11 . |elt|)
             (17 . |setelt|) (|SquareMatrix| 6 7) (25 . |squareMatrix|)
             (|Vector| 7) (30 . |new|) (36 . |elt|) (43 . |setelt|)
             (|Vector| $) |LSQM;coordinates;$VV;2| (50 . |coerce|)
             (|PositiveInteger|) (55 . |unitVector|) (|List| $$)
             (|Mapping| $$ 15) (|List| 15) (|ListFunctions2| 15 $$)
             (60 . |map|) (|Vector| $$) (66 . |vector|)
             |LSQM;basis;V;4| |LSQM;someBasis;V;5| |LSQM;rank;Pi;6|
             (|Boolean|) (|List| 7) (|Equation| 7) (|List| 41)
             (|Mapping| 39 7) (|Mapping| 7 7) (|List| 64)
             (|SparseUnivariatePolynomial| (|Polynomial| 7))
             (|Union| $ '"failed") (|List| $) (|List| 20)
             (|SparseUnivariatePolynomial| 7)
             (|Record| (|:| |particular| $) (|:| |basis| 48))
             (|Union| 51 '"failed")
             (|Record| (|:| |mat| 55) (|:| |vec| (|Vector| 14)))
             (|Matrix| $) (|Matrix| 14) (|Symbol|) (|List| 56)
             (|List| 11) (|Union| 60 '"failed") (|Fraction| 14)
             (|Union| 14 '"failed") (|List| (|Polynomial| 7))
             (|Vector| 12) (|DirectProduct| 6 7)
             (|Record| (|:| |mat| 12) (|:| |vec| 20))
             (|Union| 7 '"failed") (|List| 40) (|Mapping| 7 7 7)
             (|SingleInteger|) (|String|) (|OutputForm|))
          '#(~= 71 |zero?| 77 |unit| 82 |trace| 86 |symmetric?| 91
             |subtractIfCan| 96 |structuralConstants| 102 |square?| 111
             |someBasis| 116 |size?| 120 |size| 126 |scalarMatrix| 130
             |sample| 135 |rowEchelon| 139 |row| 144 |rightUnits| 150
             |rightUnit| 154 |rightTraceMatrix| 158 |rightTrace| 167
             |rightRegularRepresentation| 172 |rightRecip| 183
             |rightRankPolynomial| 188 |rightPower| 192 |rightNorm| 198
             |rightMinimalPolynomial| 203 |rightDiscriminant| 208
             |rightCharacteristicPolynomial| 217 |rightAlternative?|
             222 |retractIfCan| 226 |retract| 241 |represents| 256
             |reducedSystem| 267 |recip| 289 |rank| 294 |random| 303
             |qelt| 307 |powerAssociative?| 314 |plenaryPower| 318
             |parts| 324 |one?| 329 |nullity| 334 |nullSpace| 339
             |nrows| 344 |noncommutativeJordanAlgebra?| 349 |ncols| 353
             |more?| 358 |minordet| 364 |minRowIndex| 369 |minColIndex|
             374 |members| 379 |member?| 384 |maxRowIndex| 390
             |maxColIndex| 395 |matrix| 400 |map!| 405 |map| 411
             |lookup| 424 |listOfLists| 429 |lieAlgebra?| 434
             |lieAdmissible?| 438 |less?| 442 |leftUnits| 448
             |leftUnit| 452 |leftTraceMatrix| 456 |leftTrace| 465
             |leftRegularRepresentation| 470 |leftRecip| 481
             |leftRankPolynomial| 486 |leftPower| 490 |leftNorm| 496
             |leftMinimalPolynomial| 501 |leftDiscriminant| 506
             |leftCharacteristicPolynomial| 515 |leftAlternative?| 520
             |latex| 524 |jordanAlgebra?| 529 |jordanAdmissible?| 533
             |jacobiIdentity?| 537 |inverse| 541 |index| 546 |hash| 551
             |flexible?| 556 |exquo| 560 |every?| 566 |eval| 572 |eq?|
             598 |enumerate| 604 |empty?| 608 |empty| 613 |elt| 617
             |differentiate| 638 |diagonalProduct| 688 |diagonalMatrix|
             693 |diagonal?| 698 |diagonal| 703 |determinant| 708
             |count| 713 |copy| 725 |coordinates| 730 |convert| 752
             |conditionsForIdempotents| 762 |commutator| 771
             |commutative?| 777 |columnSpace| 781 |column| 786 |coerce|
             792 |characteristic| 817 |basis| 821
             |associatorDependence| 825 |associator| 829 |associative?|
             836 |apply| 840 |any?| 846 |antisymmetric?| 852
             |antiCommutator| 857 |antiCommutative?| 863
             |antiAssociative?| 867 |alternative?| 871 ^ 875 |Zero| 887
             |Pfaffian| 891 |One| 896 D 900 = 950 / 956 - 962 + 973 **
             979 * 997 |#| 1045)
          'NIL
          (CONS (|makeByteWordVec2| 13
                    '(0 0 0 0 0 0 0 3 0 0 1 2 4 0 0 0 0 0 0 0 0 0 0 0 0
                      0 0 0 0 0 7 0 0 0 13 0 0 0 0 0 0 0 5 6 13))
                (CONS '#(|FramedNonAssociativeAlgebra&|
                         |SquareMatrixCategory&|
                         |FiniteRankNonAssociativeAlgebra&|
                         |DifferentialExtension&|
                         |NonAssociativeAlgebra&|
                         |FullyLinearlyExplicitRingOver&|
                         |RectangularMatrixCategory&| |Algebra&| NIL
                         |Module&| |PartialDifferentialRing&|
                         |DifferentialRing&| NIL |Ring&| NIL
                         |NonAssociativeRng&| NIL NIL NIL NIL
                         |AbelianGroup&| NIL NIL |AbelianMonoid&|
                         |Monoid&| NIL |Monad&| |HomogeneousAggregate&|
                         |SemiGroup&| |AbelianSemiGroup&| |Finite&|
                         |FullyRetractableTo&| |Aggregate&|
                         |SetCategory&| |Evalable&| NIL
                         |RetractableTo&| NIL NIL NIL |BasicType&| NIL
                         |RetractableTo&| |RetractableTo&|
                         |InnerEvalable&|)
                      (CONS '#((|FramedNonAssociativeAlgebra| 7)
                               (|SquareMatrixCategory| 6 7
                                   (|DirectProduct| 6 7)
                                   (|DirectProduct| 6 7))
                               (|FiniteRankNonAssociativeAlgebra| 7)
                               (|DifferentialExtension| 7)
                               (|NonAssociativeAlgebra| 7)
                               (|FullyLinearlyExplicitRingOver| 7)
                               (|RectangularMatrixCategory| 6 6 7
                                   (|DirectProduct| 6 7)
                                   (|DirectProduct| 6 7))
                               (|Algebra| 7)
                               (|LinearlyExplicitRingOver| 7)
                               (|Module| 7)
                               (|PartialDifferentialRing| 56)
                               (|DifferentialRing|)
                               (|LinearlyExplicitRingOver| 14) (|Ring|)
                               (|BiModule| 7 7) (|NonAssociativeRng|)
                               (|Rng|) (|RightModule| 7)
                               (|LeftModule| 7) (|LeftModule| $$)
                               (|AbelianGroup|)
                               (|CancellationAbelianMonoid|)
                               (|SemiRing|) (|AbelianMonoid|)
                               (|Monoid|) (|SemiRng|) (|Monad|)
                               (|HomogeneousAggregate| 7) (|SemiGroup|)
                               (|AbelianSemiGroup|) (|Finite|)
                               (|FullyRetractableTo| 7) (|Aggregate|)
                               (|SetCategory|) (|Evalable| 7)
                               (|CoercibleTo| (|Matrix| 7))
                               (|RetractableTo| 7) (|finiteAggregate|)
                               (|Type|) (|unitsKnown|) (|BasicType|)
                               (|CoercibleTo| 71) (|RetractableTo| 60)
                               (|RetractableTo| 14)
                               (|InnerEvalable| 7 7))
                            (|makeByteWordVec2| 71
                                '(0 7 0 10 3 12 0 11 11 7 13 2 15 7 0
                                  14 16 4 12 7 0 14 14 7 17 1 18 0 12
                                  19 2 20 0 11 7 21 3 0 7 0 14 14 22 3
                                  20 7 0 14 7 23 1 8 0 18 26 1 15 0 27
                                  28 2 32 29 30 31 33 1 34 0 29 35 2 0
                                  39 0 0 1 1 0 39 0 1 0 11 47 1 1 0 7 0
                                  1 1 0 39 0 1 2 0 47 0 0 1 1 0 63 24 1
                                  0 0 63 1 1 0 39 0 1 0 0 24 37 2 0 39
                                  0 11 1 0 7 11 1 1 0 0 7 1 0 0 0 1 1 8
                                  0 0 1 2 0 64 0 14 1 0 11 52 1 0 11 47
                                  1 1 0 12 24 1 0 0 12 1 1 0 7 0 1 2 0
                                  12 0 24 1 1 0 12 0 1 1 11 47 0 1 0 10
                                  46 1 2 0 0 0 27 1 1 0 7 0 1 1 11 50 0
                                  1 1 0 7 24 1 0 0 7 1 1 0 50 0 1 0 0
                                  39 1 1 5 59 0 1 1 6 61 0 1 1 0 66 0 1
                                  1 5 60 0 1 1 6 14 0 1 1 0 7 0 1 2 0 0
                                  20 24 1 1 0 0 20 1 2 4 53 54 24 1 1 4
                                  55 54 1 1 0 12 54 1 2 0 65 54 24 1 1
                                  0 47 0 1 1 11 11 0 1 0 0 27 38 0 7 0
                                  1 3 0 7 0 14 14 1 0 0 39 1 2 0 0 0 27
                                  1 1 15 40 0 1 1 0 39 0 1 1 11 11 0 1
                                  1 11 45 0 1 1 0 11 0 1 0 0 39 1 1 0
                                  11 0 1 2 0 39 0 11 1 1 3 7 0 1 1 0 14
                                  0 1 1 0 14 0 1 1 15 40 0 1 2 16 39 7
                                  0 1 1 0 14 0 1 1 0 14 0 1 1 0 0 67 1
                                  2 14 0 44 0 1 2 0 0 44 0 1 3 0 0 68 0
                                  0 1 1 7 27 0 1 1 0 67 0 1 0 0 39 1 0
                                  0 39 1 2 0 39 0 11 1 0 11 52 1 0 11
                                  47 1 1 0 12 24 1 0 0 12 1 1 0 7 0 1 2
                                  0 12 0 24 1 1 0 12 0 1 1 11 47 0 1 0
                                  10 46 1 2 0 0 0 27 1 1 0 7 0 1 1 11
                                  50 0 1 1 0 7 24 1 0 0 7 1 1 0 50 0 1
                                  0 0 39 1 1 0 70 0 1 0 0 39 1 0 0 39 1
                                  0 0 39 1 1 10 47 0 1 1 7 0 27 1 1 0
                                  69 0 1 0 0 39 1 2 11 47 0 7 1 2 15 39
                                  43 0 1 3 12 0 0 7 7 1 3 12 0 0 40 40
                                  1 2 12 0 0 41 1 2 12 0 0 42 1 2 0 39
                                  0 0 1 0 7 48 1 1 0 39 0 1 0 0 0 1 2 0
                                  7 0 14 1 3 0 7 0 14 14 22 4 0 7 0 14
                                  14 7 1 1 2 0 0 1 2 2 0 0 11 1 2 1 0 0
                                  56 1 2 1 0 0 57 1 3 1 0 0 57 58 1 3 1
                                  0 0 56 11 1 3 0 0 0 44 11 1 2 0 0 0
                                  44 1 1 0 7 0 1 1 0 0 40 1 1 0 39 0 1
                                  1 0 64 0 1 1 3 7 0 1 2 16 11 7 0 1 2
                                  15 11 43 0 1 1 0 0 0 1 2 0 20 0 24 25
                                  2 0 12 24 24 1 1 0 20 0 1 1 0 12 24 1
                                  1 0 20 0 1 1 0 0 20 1 1 0 62 24 1 0 0
                                  62 1 2 0 0 0 0 1 0 0 39 1 1 8 45 0 1
                                  2 0 64 0 14 1 1 5 0 60 1 1 0 12 0 1 1
                                  0 0 7 1 1 0 0 14 1 1 0 71 0 1 0 0 11
                                  1 0 0 24 36 0 11 49 1 3 0 0 0 0 0 1 0
                                  0 39 1 2 0 0 12 0 1 2 15 39 43 0 1 1
                                  0 39 0 1 2 0 0 0 0 1 0 0 39 1 0 0 39
                                  1 0 0 39 1 2 0 0 0 11 1 2 0 0 0 27 1
                                  0 0 0 1 1 3 7 0 1 0 0 0 1 1 2 0 0 1 2
                                  2 0 0 11 1 2 1 0 0 56 1 3 1 0 0 56 11
                                  1 2 1 0 0 57 1 3 1 0 0 57 58 1 2 0 0
                                  0 44 1 3 0 0 0 44 11 1 2 0 39 0 0 1 2
                                  10 0 0 7 1 1 0 0 0 1 2 0 0 0 0 1 2 0
                                  0 0 0 1 2 10 0 0 14 1 2 0 0 0 11 1 2
                                  0 0 0 27 1 2 0 64 64 0 1 2 0 64 0 64
                                  1 2 0 0 7 0 1 2 0 0 0 7 1 2 0 0 0 0 1
                                  2 0 0 14 0 1 2 0 0 11 0 1 2 0 0 27 0
                                  1 1 15 11 0 1)))))
          '|lookupComplete|)) 
