Aaow,F   HH $d H6$$ff@  d#)  Footnote TableFootnotee*c*d. e. / - c:;,.!?ano `eRe6/ala dTOCHeading1Heading2   *EquationVariables3.0a     J K L  j ʝ h  n  q  M N O P Q r s t u v w x      \[matrix] wmatrix identity-matrix augment-matrix$  gauss-jordan inverse det;determinant  transpose +;matrix arithmetic - * Sedgwick, Robert Strang, Gilbert  Algorithms Introduction to Linear AlgebraU e X U X  e. V ` c,.W _ U u k /U <$lastpagenum>V *<$daynum01> <$shortmonthname> <$shortyear>W "<$monthnum>/<$daynum>/<$shortyear>X )<$daynum> <$shortmonthname> <$shortyear> Y "<$monthnum>/<$daynum>/<$shortyear>Z <$monthname> <$daynum>, <$year> [ "<$monthnum>/<$daynum>/<$shortyear>\  <$fullfilename>j ]  <$filename>n ^  <$paratext[Title]>_  <$paratext[Heading]> `  <$curpagenum> a  <$marker1>b  <$marker2>c  (Continued)d + (Sheet <$tblsheetnum> of <$tblsheetcount>) e Heading & Page <$paratext> on page<$pagenum>f Pagepage<$pagenum> g See Heading & Page%See <$paratext> on page<$pagenum>. h  Table Allm7Table<$paranumonly>, <$paratext>, on page<$pagenum>ei Table Number & Page'Table<$paranumonly> on page<$pagenum> j  Table & Page7Table<$paranumonly>, <$paratext>, on page<$pagenum>r  f f A.  k k  l l  e Area   A>I V ("I /umќJ aK n$dL e ?M oٜN $eaۜO fiݜP  Q  R eleS te3T >4U gW a\ a1. ] n ^ htb ` olse  2. cl aro ppaq "w n$y e& * <ex, nu1 e 4 nu7 pt>: <umA ambB <$E >geF  J a3. L >arQ  4. gS  U W a +dqa  l f  db t dXc  e e  $HYd c $H$fiݜq e  UUl" ) then the argument matrix would be  >*<UUl" g& and gauss-jordan would return   *oUUd _ representing x = 2 and y = 1. The algorithm for Gauss-Jordan was taken from Sedgewick [1]. *UUl  O inverse  ( x  ::   ) =>   [Function] *UU$] tReturns the inverse of the given matrix. For inverse to work, the matrix must be square, and this function signals *UU] lan error if the argument matrix is not square. This function uses a modified Gauss-Jordon algorithm from *UUD] 9Sedgewick [1] with quick error checking from Strang [2]. *UUl  K det  ( x  ::   ) =>   [Function] *UUd _Returns the determinant of the given matrix. This function uses an algorithm from Strang [2]. *UUl  Q transpose  ( x  ::   ) =>   [Function] *UUd pTransposes the given matrix. Transpose takes each element, [i,j], and effectively stores it in location [j,i]. MTU d seFuture Revisions *2UUd foCWrite functions for row-operations, eigen-value, and eigen-vector.  JRTU d x References mat*hUUl maW[1]:  Sedgwick, Robert.   Algorithms . 1993. Addison-Wesley Publishing Co. or *~UUl hej[2]:  Strang, Gilbert.   Introduction to Linear Algebra . 1993. Wellesley-Cambridge Press. *UUd s  c$He c  om$Hl d d kinHHf k a  deHHls s nct&..ȝg h erm&..&..us'6Rightarrow[times[matrix[3,2,num[1.00000000,"1"],num[2.00000000,"2"],num[3.00000000,"3"],num[4.00000000,"4"],num[5.00000000,"5"],num[6.00000000,"6"]],string[" augmented with "],matrix[(*n*)3,2,num[9.00000000,"9"],num[8.00000000,"8"],num[7.00000000,"7"],num[6.00000000,"6"],num[5.00000000,"5"],num[4.00000000,"4"]]],matrix[3,4,num[1.00000000,"1"],num[2.00000000,"2"],num[9.00000000,"9"],num[8.00000000,"8"],num[3.00000000,"3"],num[4.00000000,"4"],num[7.00000000,"7"],num[6.00000000,"6"],num[5.00000000,"5"],num[6.00000000,"6"],num[5.00000000,"5"],num[4.00000000,"4"]]]*H-ɝh j n p rucg g y . 93 .i j  . . ''matrix[3,3,num[1.00000000,"1"],num[0.00000000,"0"],num[0.00000000,"0"],num[0.00000000,"0"],num[1.00000000,"1"],num[0.00000000,"0"],num[0.00000000,"0"],num[0.00000000,"0"],num[1.00000000,"1"]].@)0j h p i i y TusHVU k l f a 000HVU lw w "4"H$ l k a sinH$ lx x [8.j*Ym n 000j*Yj*Y4"'equal[(*j4j*)plus[id[times[num[3.00000000,"3"],char[x]]],id[times[num[4.00000000,"4"],char[y]]]],plus[times[num[(*v*)10.00000000,"10"],id[times[num[2.00000000,"2"],char[x]]]],minus[id[times[num[3.00000000,"3"],char[y]]]]],num[1.00000000,"1"]]*n h p m m y W^*P o q W^*P W^*P  'matrix[2,3,num[3.00000000,"3"],num[4.00000000,"4"],num[10.00000000,"10"],num[2.00000000,"2"],minus[num[3.00000000,"3"]],num[1.00000000,"1"]]umdp5p 000 0*Qq c  o o d   P r  P  P 4"'3matrix[2,1,num[2.00000000,"2"],num[1.00000000,"1"]]HHМs a HH 00jf UUdJ ' qH"@* t u b haH"@* HR HR Footnote,pHr7 u t v b enuHr7 HzHz  Single Line.00H'v u  b ]*~ ~ FootnoteHVU ؜w a *HVU P k UUdN um 0H$ ڜx a 000H$ "2"3"]],nul 1"UUdO  $Hܜy p 0$Hun j n TU TU `P The Matrix Library UU`K  6UU L vThis library implements some basic matrix operations. These functions are not guarenteed to be stable or numerically BUU@L Zsound, nor are they very optimized, but for smaller applications they should be suitable. XUU(W The     class is a subclass of   , so all operations on   s and collections in general should work as idUUW '}expected. One important limitation of matrices is that they are limited to two dimensions, and trying to use any other size pUU@W results in an error. LUTU `\ Initialization UU`^ 0KThe generic function  make  will create matrices, with two keywords: UU`` "]ldimensions:  a sequence of two elements which represent the rows and columns of the matrix respectively UU`I `fill:  the objects that each element of matrix should be initialized to. This defaults to 0 UUhT  I matrix ( #rest row-vectors ) =>   [Function] UU`U reXMatrix will return a new matrix containing the given vectors as the rows of the matrix. oEUTU `e sm Functions 6UU(M  bf +  ( x  ::   ,  y  ::   ) =>   [Method] BUUM  f -  ( x  ::   ,  y  ::   ) =>   [Method] NUUM  cef *  ( x  ::   ,  y  ::   ) =>   [Method] ZUUM  b*  ( x  ::   ,  y  ::   ) =>   [Method] fUU@M  wiZ*  ( x  ::   ,  y  ::   ) => [Method] rUU`l ancBasic arithmetic operations. The \* method on two matrices uses the algorithm from Sedgewick [1]. ofUUho  ing identity-matrix  ( #key dimensions  ::   ) =>   [Function] <UUh"q iov This returns a matrix filled with zeros, and having ones down the major diagonal. The following is an example:  *UUhw  Fu augment-matrix  ( x  ::   ,  y  ::   ) =>    [Function] d] *UU y s This takes two matrices and returns a matrix that places the two arguments side by side in a single matrix. The M *UUH"y following is an example:  *EUUh  ixT gauss-jordan  ( x  ::   ) =>   [Function] be*QUU  ::rThis will take a matrix of dimension N by N+1, and return an N by 1 matrix. The result matrix is the solution to *]UUH" ethe system of equations represented by the argument matrix. For example, if your equations were  edޜz f ti-ml# ߜ{ z suel# ixUU hinQ wi0 22 May 97   H | z eH trix   nR ! Running H/F 2  #  $H} z $H icthat pla rgUUdS in ~ v wg  E H@P<  v b aixH@P< HH  Double LineUH   b i N y Double Linee r  of ua yr  eH  b  Single Line HZ b   TableFootnoteEUG$E  b EUG$E EoPEoP  TableFootnote* q c $r r d $H p $Hle y y  inl#  z wl# l{ { H  z HH l| |  $H z  Do$Hl} }   da Leftdz Rightdb  Referenced  p d c 0in@  ) *   Header. f  ) * Bulleted\t. Hf  ) *CellBody. f  ) * CellHeading. f  ) *a  tFootnote. z f T) * Heading1Body. f T ) * Heading2Body. f T ) *  HeadingRunInBody. f  ) *l yIndented. f  ) *g Numbered.\t. f E ) *  Numbered1.\tNumbered. f  ) * TableFootnote. f T ) *  TableTitleT:Table : .  f P) * TitleBody. @  *Header. @  *Footer.  @  ) %H    h  Body. *$$$f  ) *CStep. HHH f T) % HeadingBody. @  ) %H     h  Body. ff2ff233@  ) %H    h t Argument. ff2ff233@  ) %H     ho  Description. $$f S ) *H$ Step Step Number S:.\t. $$f SE ) *$1Step Step Number S:.\tStep. 33 @  ) %33Endnote1.\t. $$$f  ) *CBullet. ff233@  ) %H    h  DItem. ff2ff2 @  ) %H    h t t Function Bodyn. KK@  ) %$H e te . h   DItem2. HHHf D ) %  HeadingSub. 33 @  ) %. 33Endnote.\t. ]K$f B ) %]Bullet2 Bullet SymbolB:\t. $0f Q) % H1Heading 1Heading Rule. FirstBody. tdd33@  ) %H   e ht   Description2. @  ) % Function Heade. 33+33$f B ) %33+ Bullet Bullet SymbolnB:\t. ]f  ) % 2Heading .. . boff2K33@  ) %H  a g H ih  s Extra Key Arg. @  ) H  e t  he i Verbatim. @  ) *nca  Footer. f  ) %Body. f T ) *  TableTitleT:Table : . f  ) * CellHeading. f  ) *CellBody. HHH f T) % HeadingBody. $0f Q) % 1Heading 1Heading Rule. FirstBody. @  ) % Function Head. ff2ff2 @  ) %H    h   Function Body.   Vz ) * Vz *  ) *  )   Bullet Symbol ) %@ ) %  ) %Emphasis ) Computer * Superscript ) % Variable ) %Argument )   Step Number * Subscript % *EquationVariablesf2 @ ) %   ) % @ ) % Variable  ) %Argument _ ) Computer   )  )  ) ; )  )  ) Thin ) Medium ) Double )  %Thick@ )  Very Thin -     ) ) ) H H iH H H Format A   ) ) ) H sH H H H nFormat B  + Comment   U  V % W ) 9 1  d ) Black!T* WhiteddA+ Redoerdd, Greendd - Blued. ) Cyand/ Magentad 0 Yellow W.Times.R.400m Times-Roman W.Times.R.700 Times-BoldW.Palatino.R.400Palatino-RomanW.Palatino.R.700 Palatino-BoldW.Courier.R.400CourierW.Courier.R.700 Courier-BoldW.Palatino.I.400Palatino-Italic W.Helvetica.R.700Helvetica-Bold7Courier  Helveticat%Palatino*Times Regular Regular BoldItalicRegular*GǕg_6z0% [L9#<5/"A<}3¬R_E3Fe8AJG|$LoSuF'(qlķd\