scribble-math/docs/matrix.html
Jens Axel Søgaard 1ae55396e4 Inital commit
2012-06-20 17:20:30 +02:00

39 lines
86 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="content-type" content="text-html; charset=utf-8" /><title>Matrix Library</title><link rel="stylesheet" type="text/css" href="scribble.css" title="default" /><link rel="stylesheet" type="text/css" href="racket.css" title="default" /><link rel="stylesheet" type="text/css" href="scribble-style.css" title="default" /><script type="text/javascript" src="scribble-common.js"></script></head><body id="scribble-racket-lang-org"><div class="tocset"><div class="tocview"><div class="tocviewlist" style="margin-bottom: 1em;"><div class="tocviewtitle"><table cellspacing="0" cellpadding="0"><tr><td style="width: 1em;"><a href="javascript:void(0);" title="Expand/Collapse" class="tocviewtoggle" onclick="TocviewToggle(this,&quot;tocview_0&quot;);">&#9658;</a></td><td></td><td><a href="" class="tocviewselflink" pltdoc="x">Matrix Library</a></td></tr></table></div><div class="tocviewsublistonly" style="display: none;" id="tocview_0"><table cellspacing="0" cellpadding="0"><tr><td align="right">1&nbsp;</td><td><a href="#(part._.A_basic_example)" class="tocviewlink" pltdoc="x">A basic example</a></td></tr><tr><td align="right">2&nbsp;</td><td><a href="#(part._matrix._constructors)" class="tocviewlink" pltdoc="x">Constructors</a></td></tr><tr><td align="right">3&nbsp;</td><td><a href="#(part._matrix._operations)" class="tocviewlink" pltdoc="x">Operations</a></td></tr><tr><td align="right">4&nbsp;</td><td><a href="#(part._matrix._unary._operators)" class="tocviewlink" pltdoc="x">Unary Operators</a></td></tr><tr><td align="right">5&nbsp;</td><td><a href="#(part._matrix._comprehensions)" class="tocviewlink" pltdoc="x">Comprehensions</a></td></tr><tr><td align="right">6&nbsp;</td><td><a href="#(part._.Binary_.Operators)" class="tocviewlink" pltdoc="x">Binary Operators</a></td></tr></table></div></div></div><div class="tocsub"><table class="tocsublist" cellspacing="0"><tr><td><span class="tocsublinknumber">1<tt>&nbsp;</tt></span><a href="#(part._.A_basic_example)" class="tocsubseclink" pltdoc="x">A basic example</a></td></tr><tr><td><span class="tocsublinknumber">2<tt>&nbsp;</tt></span><a href="#(part._matrix._constructors)" class="tocsubseclink" pltdoc="x">Constructors</a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._row-vector))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">row-<wbr></wbr>vector</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._column-vector))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">column-<wbr></wbr>vector</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._make-matrix))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">make-<wbr></wbr>matrix</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._build-matrix))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">build-<wbr></wbr>matrix</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._submatrix))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">submatrix</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-augment))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>augment</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-augment*))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>augment*</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-copy))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>copy</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-row))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>row</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-column))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>column</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-identity))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>identity</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-diagonal))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>diagonal</span></span></span></a></td></tr><tr><td><span class="tocsublinknumber">3<tt>&nbsp;</tt></span><a href="#(part._matrix._operations)" class="tocsubseclink" pltdoc="x">Operations</a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-scale))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>scale</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-add))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>add</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-mul))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>mul</span></span></span></a></td></tr><tr><td><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-linear))" class="tocsubnonseclink" pltdoc="x"><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><span class="RktValLink">matrix-<wbr></wbr>linear</span></span></span></a></td></tr><tr><td><span class="tocsublinknumber">4<tt>&nbsp;</tt></span><a href="#(part._matrix._unary._operators)" class="tocsubseclink" pltdoc="x">Unary Operators</a></td></tr><tr><td><span class="tocsublinknumber">5<tt>&nbsp;</tt></span><a href="#(part._matrix._comprehensions)" class="tocsubseclink" pltdoc="x">Comprehensions</a></td></tr><tr><td><span class="tocsublinknumber">6<tt>&nbsp;</tt></span><a href="#(part._.Binary_.Operators)" class="tocsubseclink" pltdoc="x">Binary Operators</a></td></tr></table></div></div><div class="maincolumn"><div class="main"><div class="versionbox"><span class="versionNoNav">Version: 5.3.0.11</span></div><h2><a name="(part._matrix)"></a>Matrix Library</h2><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/generic-numbers.html#(def._((quote._~23~25kernel)._~3e))" class="RktValLink" pltdoc="x">&gt;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktVal">6</span><span class="RktPn">)</span></td></tr><tr><td><span class="relax">\(\left( \begin{array}{ccc}1&amp;2&amp;3\\4&amp;5&amp;6 \end{array} \right)\)</span></td></tr></table></blockquote><p><table cellspacing="0" class="defmodule"><tr><td><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/require.html#(form._((lib._racket/private/base..rkt)._require))" class="RktStxLink" pltdoc="x">require</a></span><span class="stt"> </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/require.html#(form._((lib._racket/private/base..rkt)._file))" class="RktStxLink" pltdoc="x">file</a></span><span class="stt"> </span><span class="RktVal">"../matrix.rkt"</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></p><p><div class="SIntrapara">A <span style="font-style: italic">matrix</span> is a rectangular array of numbers. A typical example:
</div><div class="SIntrapara"><blockquote class="SCentered"><p><span class="RktRes"><img src="pict.png" alt="image" width="65" height="85" /></span></p></blockquote></div><div class="SIntrapara">The horizontal lines are called <span style="font-style: italic">rows</span> and the vertical lines
are called <span style="font-style: italic">columns</span>. The matrix above has <span style="font-style: italic">m</span>=3 rows
and <span style="font-style: italic">n</span>=2 columns and is an example of an <span style="font-style: italic">3x2</span>-matrix.
In general a matrix with <span style="font-style: italic">m</span> rows and <span style="font-style: italic">n</span> columns is
called an <span style="font-style: italic">mxn</span>-matrix.</div></p><p>Matrices with one row (1xn) only are called <span style="font-style: italic">row vectors</span> and
matrices with one column (mx1) only are called <span style="font-style: italic">column vectors</span>.</p><p><div class="SIntrapara">The <span style="font-style: italic">entries</span> or <span style="font-style: italic">elements</span> of a matrix is referred to by their
row and column number. In this library the row and columns are counted from 0.
</div><div class="SIntrapara"><blockquote class="SCentered"><p><span class="RktRes"><img src="pict_2.png" alt="image" width="67" height="85" /></span></p></blockquote></div><div class="SIntrapara">Note: In standard mathematical notation row and column numbers are counted from 1.</div></p><h3>1<tt>&nbsp;</tt><a name="(part._.A_basic_example)"></a>A basic example</h3><p><div class="SIntrapara">First require the libary:
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><p><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/require.html#(form._((lib._racket/private/base..rkt)._require))" class="RktStxLink" pltdoc="x">require</a></span><span class="hspace">&nbsp;</span><span class="RktVal">"matrix.rkt"</span><span class="RktPn">)</span></p></blockquote></div><div class="SIntrapara">Create a 2x3 matrix with entries 1, 2, 3, 4, 5, and, 6.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktVal">6</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td><p><span class="RktOut">'foo</span></p></td></tr><tr><td><p><span class="RktOut">(matrix 4 4 '#(1 -2 3/4 -1/2 0 0 1 -2 0 0 0 0 0 0 0 0))</span></p></td></tr><tr><td><p><span class="RktOut">(list (matrix 4 1 '#(1 0 0 0)) (matrix 4 1 '#(3/4 1 0 0)))</span></p></td></tr><tr><td><p><span class="RktOut">(list (matrix 4 1 '#(-2 0 0 0)) (matrix 4 1 '#(-1/2 -2 0 0)))</span></p></td></tr><tr><td><p><span class="RktOut">'(1 3)</span></p></td></tr><tr><td><p><span class="RktOut">(matrix 2 1 '#(7/2 7/5))</span></p></td></tr></table></td></tr><tr><td><p><span class="RktRes">(matrix 2 3 '#(1 2 3 4 5 6))</span></p></td></tr></table></blockquote></div><div class="SIntrapara">Display the matrix as a picture:
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym">matrix-&gt;pict</span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktVal">6</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img src="pict_3.png" alt="image" width="45" height="29" /></p></td></tr></table></blockquote></div><div class="SIntrapara">Let&rsquo;s change the print handler, so we don&rsquo;t need to call <span class="RktVal">"matrix-&gt;pict"</span>
ourselves.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/eval.html#(def._((quote._~23~25kernel)._current-print))" class="RktValLink" pltdoc="x">current-print</a></span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/let.html#(form._((lib._racket/private/letstx-scheme..rkt)._let))" class="RktStxLink" pltdoc="x">let</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktPn">[</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/Writing.html#(def._((quote._~23~25kernel)._print))" class="RktValLink" pltdoc="x">print</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/eval.html#(def._((quote._~23~25kernel)._current-print))" class="RktValLink" pltdoc="x">current-print</a></span><span class="RktPn">)</span><span class="RktPn">]</span><span class="RktPn">)</span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/lambda.html#(form._((lib._racket/private/base..rkt)._~ce~bb))" class="RktStxLink" pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">v</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/Writing.html#(def._((quote._~23~25kernel)._print))" class="RktValLink" pltdoc="x">print</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/if.html#(form._((quote._~23~25kernel)._if))" class="RktStxLink" pltdoc="x">if</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span><span class="hspace">&nbsp;</span><span class="RktSym">v</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">matrix-&gt;pict</span><span class="hspace">&nbsp;</span><span class="RktSym">v</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym">v</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_4.png" alt="image" width="33" height="29" /></p></td></tr></table></blockquote></div><div class="SIntrapara">The basic operations are addition, subtraction and multiplication.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktSym">A</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td><p><span class="RktOut">'foo</span></p></td></tr><tr><td><p><span class="RktOut">(matrix 4 4 '#(1 -2 3/4 -1/2 0 0 1 -2 0 0 0 0 0 0 0 0))</span></p></td></tr><tr><td><p><span class="RktOut">(list (matrix 4 1 '#(1 0 0 0)) (matrix 4 1 '#(3/4 1 0 0)))</span></p></td></tr><tr><td><p><span class="RktOut">(list (matrix 4 1 '#(-2 0 0 0)) (matrix 4 1 '#(-1/2 -2 0 0)))</span></p></td></tr><tr><td><p><span class="RktOut">'(1 3)</span></p></td></tr><tr><td><p><span class="RktOut">(matrix 2 1 '#(7/2 7/5))</span></p></td></tr></table></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktSym">B</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-2</span></span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-4</span></span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktSym">A</span></td></tr><tr><td><p><img src="pict_4.png" alt="image" width="33" height="29" /></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktSym">B</span></td></tr><tr><td><p><img src="pict_5.png" alt="image" width="40" height="29" /></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-add))" class="RktValLink" pltdoc="x">matrix-add</a></span><span class="hspace">&nbsp;</span><span class="RktSym">A</span><span class="hspace">&nbsp;</span><span class="RktSym">B</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_6.png" alt="image" width="33" height="29" /></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix-sub</span></span></span><span class="hspace">&nbsp;</span><span class="RktSym">A</span><span class="hspace">&nbsp;</span><span class="RktSym">B</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_7.png" alt="image" width="33" height="29" /></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-mul))" class="RktValLink" pltdoc="x">matrix-mul</a></span><span class="hspace">&nbsp;</span><span class="RktSym">A</span><span class="hspace">&nbsp;</span><span class="RktSym">B</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_8.png" alt="image" width="55" height="29" /></p></td></tr></table></blockquote></div><div class="SIntrapara">Scale a matrix by a factor 2.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-scale))" class="RktValLink" pltdoc="x">matrix-scale</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_9.png" alt="image" width="33" height="29" /></p></td></tr></table></blockquote></div><div class="SIntrapara">Multiply a matrix on a column-vector.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-mul))" class="RktValLink" pltdoc="x">matrix-mul</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._column-vector))" class="RktValLink" pltdoc="x">column-vector</a></span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img src="pict_10.png" alt="image" width="20" height="29" /></p></td></tr></table></blockquote></div></p><h3>2<tt>&nbsp;</tt><a name="(part._matrix._constructors)"></a>Constructors</h3><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span><span class="RktVar">n</span><span class="hspace">&nbsp;</span><span class="RktVar">x</span><span class="hspace">&nbsp;</span><span class="RktMeta">...</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">index/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">n</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">index/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">x</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a mxn-matrix with elements <span class="RktVar">x</span><span class="stt"> </span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/stx-patterns.html#(form._((lib._racket/private/stxcase-scheme..rkt)._......))" class="RktStxLink" pltdoc="x">...</a></span>.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_4.png" alt="image" width="33" height="29" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._row-vector))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._row-vector))" class="RktValLink" pltdoc="x">row-vector</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">x</span><span class="hspace">&nbsp;</span><span class="RktMeta">...</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">x</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a row vector (a 1xn-matrix) with elements <span class="RktVar">x</span><span class="stt"> </span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/stx-patterns.html#(form._((lib._racket/private/stxcase-scheme..rkt)._......))" class="RktStxLink" pltdoc="x">...</a></span>.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._row-vector))" class="RktValLink" pltdoc="x">row-vector</a></span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_11.png" alt="image" width="45" height="15" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._column-vector))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._column-vector))" class="RktValLink" pltdoc="x">column-vector</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">x</span><span class="hspace">&nbsp;</span><span class="RktMeta">...</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">x</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a column vector (a mx1-matrix) with elements <span class="RktVar">x</span><span class="stt"> </span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/stx-patterns.html#(form._((lib._racket/private/stxcase-scheme..rkt)._......))" class="RktStxLink" pltdoc="x">...</a></span>.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._column-vector))" class="RktValLink" pltdoc="x">column-vector</a></span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_12.png" alt="image" width="20" height="43" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._make-matrix))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._make-matrix))" class="RktValLink" pltdoc="x">make-matrix</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span><span class="RktVar">n</span><span class="hspace">&nbsp;</span><span class="RktVar">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">n</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">x</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a mxn-matrix where all entries are <span class="RktVar">x</span>.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._make-matrix))" class="RktValLink" pltdoc="x">make-matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_13.png" alt="image" width="45" height="29" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._build-matrix))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._build-matrix))" class="RktValLink" pltdoc="x">build-matrix</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span><span class="RktVar">n</span><span class="hspace">&nbsp;</span><span class="RktVar">f</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">n</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">f</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">index/c</span><span class="hspace">&nbsp;</span><span class="RktSym">index/c</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/function-contracts.html#(form._((lib._racket/contract/base..rkt)._-~3e))" class="RktStxLink" pltdoc="x"><span class="nobreak">-&gt;</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span><span class="RktPn">)</span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a mxn-matrix where element (i,j) is <span class="RktPn">(</span><span class="RktVar">f</span><span class="stt"> </span><span class="RktSym">i</span><span class="stt"> </span><span class="RktSym">j</span><span class="RktPn">)</span>.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._build-matrix))" class="RktValLink" pltdoc="x">build-matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/generic-numbers.html#(def._((quote._~23~25kernel)._+))" class="RktValLink" pltdoc="x">+</a></span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_14.png" alt="image" width="58" height="43" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._submatrix))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._submatrix))" class="RktValLink" pltdoc="x">submatrix</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">i</span><span class="hspace">&nbsp;</span><span class="RktVar">j</span><span class="hspace">&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span><span class="RktVar">n</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">i</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">index/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">j</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">index/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">n</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a mxn-matrix with elements from row i to i+m and from column j to j+m.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktSym">A</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._build-matrix))" class="RktValLink" pltdoc="x">build-matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/lambda.html#(form._((lib._racket/private/base..rkt)._~ce~bb))" class="RktStxLink" pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktVar">i</span><span class="hspace">&nbsp;</span><span class="RktVar">j</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/generic-numbers.html#(def._((quote._~23~25kernel)._+))" class="RktValLink" pltdoc="x">+</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/generic-numbers.html#(def._((quote._~23~25kernel)._*))" class="RktValLink" pltdoc="x">*</a></span><span class="hspace">&nbsp;</span><span class="RktVar">i</span><span class="hspace">&nbsp;</span><span class="RktVal">5</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktVar">j</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktSym">A</span></td></tr><tr><td><p><img src="pict_15.png" alt="image" width="108" height="71" /></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._submatrix))" class="RktValLink" pltdoc="x">submatrix</a></span><span class="hspace">&nbsp;</span><span class="RktSym">A</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_16.png" alt="image" width="48" height="15" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-augment))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-augment))" class="RktValLink" pltdoc="x">matrix-augment</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr></table></blockquote></div><div class="SIntrapara">Augment the matrices M and N by "appending" their columns.
The number of rows in M and N must be the same.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-augment))" class="RktValLink" pltdoc="x">matrix-augment</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktVal">6</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">7</span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktVal">8</span><span class="hspace">&nbsp;</span><span class="RktVal">9</span><span class="hspace">&nbsp;</span><span class="RktVal">10</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img src="pict_17.png" alt="image" width="78" height="29" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-augment*))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-augment*))" class="RktValLink" pltdoc="x">matrix-augment*</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">Ms</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">Ms</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/data-structure-contracts.html#(def._((lib._racket/contract/private/misc..rkt)._listof))" class="RktValLink" pltdoc="x">listof</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span><span class="RktPn">)</span></td></tr></table></blockquote></div><div class="SIntrapara">Augment the matrices in the list Ms "appending" their columns.
The number of rows in alle the matrices must be the same.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-augment*))" class="RktValLink" pltdoc="x">matrix-augment*</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/pairs.html#(def._((quote._~23~25kernel)._list))" class="RktValLink" pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="RktPn">)</span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span></td></tr><tr><td><span class="RktPlain"><span class="hspace">&nbsp;&nbsp;</span></span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktVal">6</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img src="pict_18.png" alt="image" width="45" height="29" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-copy))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-copy))" class="RktValLink" pltdoc="x">matrix-copy</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr></table></blockquote></div><div class="SIntrapara">Copy the matrix M.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-copy))" class="RktValLink" pltdoc="x">matrix-copy</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_19.png" alt="image" width="33" height="15" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-row))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-row))" class="RktValLink" pltdoc="x">matrix-row</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">i</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">i</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">index/c</span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a row vector from the i&rsquo;th column of M.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktVal">6</span><span class="hspace">&nbsp;</span><span class="RktVal">7</span><span class="hspace">&nbsp;</span><span class="RktVal">8</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktVar">M</span></td></tr><tr><td><p><img src="pict_20.png" alt="image" width="58" height="29" /></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-row))" class="RktValLink" pltdoc="x">matrix-row</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_21.png" alt="image" width="58" height="15" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-column))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-column))" class="RktValLink" pltdoc="x">matrix-column</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">j</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">j</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">index/c</span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a column vector from the j&rsquo;th column of M.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;</span><span class="RktVal">5</span><span class="hspace">&nbsp;</span><span class="RktVal">6</span><span class="hspace">&nbsp;</span><span class="RktVal">7</span><span class="hspace">&nbsp;</span><span class="RktVal">8</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktVar">M</span></td></tr><tr><td><p><img src="pict_20.png" alt="image" width="58" height="29" /></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-column))" class="RktValLink" pltdoc="x">matrix-column</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_22.png" alt="image" width="20" height="29" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-identity))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-identity))" class="RktValLink" pltdoc="x">matrix-identity</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">m</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr><tr><td><span class="RktPn">(</span><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-identity))" class="RktValLink" pltdoc="x">matrix-identity</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span><span class="RktVar">n</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">m</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">n</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym">size/c</span></td></tr></table></blockquote></div><div class="SIntrapara">Return m x n matrix with ones on the diagonal and zeros elsewhere.
If only one argument is given, a square matrix is produced.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-identity))" class="RktValLink" pltdoc="x">matrix-identity</a></span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_23.png" alt="image" width="45" height="43" /></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-identity))" class="RktValLink" pltdoc="x">matrix-identity</a></span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_24.png" alt="image" width="33" height="43" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-diagonal))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-diagonal))" class="RktValLink" pltdoc="x">matrix-diagonal</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">xs</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">xs</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/data-structure-contracts.html#(def._((lib._racket/contract/private/misc..rkt)._listof))" class="RktValLink" pltdoc="x">listof</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span><span class="RktPn">)</span></td></tr></table></blockquote></div><div class="SIntrapara">Construct a square matrix with elements from xs on the diagonal and 0 elsewhere.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-diagonal))" class="RktValLink" pltdoc="x">matrix-diagonal</a></span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">(</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="RktVal">)</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_25.png" alt="image" width="45" height="43" /></p></td></tr></table></blockquote></div></p><h3>3<tt>&nbsp;</tt><a name="(part._matrix._operations)"></a>Operations</h3><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-scale))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-scale))" class="RktValLink" pltdoc="x">matrix-scale</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">s</span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">s</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr></table></blockquote></div><div class="SIntrapara">Multiply each element of M with s.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-scale))" class="RktValLink" pltdoc="x">matrix-scale</a></span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><img src="pict_26.png" alt="image" width="40" height="29" /></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-add))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-add))" class="RktValLink" pltdoc="x">matrix-add</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr></table></blockquote></div><div class="SIntrapara">Return the sum of M and N.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-2</span></span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-4</span></span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/pairs.html#(def._((quote._~23~25kernel)._list))" class="RktValLink" pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-add))" class="RktValLink" pltdoc="x">matrix-add</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><span class="RktRes">'(</span><img src="pict_4.png" alt="image" width="33" height="29" /><span class="RktRes"></span><span class="hspace">&nbsp;</span><span class="RktRes"></span><img src="pict_5.png" alt="image" width="40" height="29" /><span class="RktRes"></span><span class="hspace">&nbsp;</span><span class="RktRes"></span><img src="pict_6.png" alt="image" width="33" height="29" /><span class="RktRes">)</span></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-mul))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-mul))" class="RktValLink" pltdoc="x">matrix-mul</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr></table></blockquote></div><div class="SIntrapara">Return the product of M and N.
The number of columns in M must be equal to the number of rows in N.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/pairs.html#(def._((quote._~23~25kernel)._list))" class="RktValLink" pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-mul))" class="RktValLink" pltdoc="x">matrix-mul</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><span class="RktRes">'(</span><img src="pict_4.png" alt="image" width="33" height="29" /><span class="RktRes"></span><span class="hspace">&nbsp;</span><span class="RktRes"></span><img src="pict_27.png" alt="image" width="33" height="29" /><span class="RktRes"></span><span class="hspace">&nbsp;</span><span class="RktRes"></span><img src="pict_28.png" alt="image" width="33" height="29" /><span class="RktRes">)</span></p></td></tr></table></blockquote></div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" class="boxed RBoxed"><tr><td><span class="RktPn">(</span><a name="(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-linear))"></a><span title="Provided from: (file &quot;../matrix.rkt&quot;)"><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-linear))" class="RktValLink" pltdoc="x">matrix-linear</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">a</span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">b</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">a</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">b</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/number-types.html#(def._((quote._~23~25kernel)._number~3f))" class="RktValLink" pltdoc="x">number?</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><span class="badlink"><span class="RktValLink">matrix?</span></span></span></td></tr></table></blockquote></div><div class="SIntrapara">Return the linear combination of M and N <span class="relax">\(a*M + b*N\)</span>.
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix))" class="RktValLink" pltdoc="x">matrix</a></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">0</span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0"><tr><td></td></tr></table></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="file:///Applications/Racket%20Full%20v5.3.0.11/doc/reference/pairs.html#(def._((quote._~23~25kernel)._list))" class="RktValLink" pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#(def._(/.Users/soegaard/.Dropbox/.Git.Hub/bracket/matrix..rkt._matrix-linear))" class="RktValLink" pltdoc="x">matrix-linear</a></span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-1</span></span><span class="hspace">&nbsp;</span><span class="RktVar">M</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktVar">N</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><span class="RktRes">'(</span><img src="pict_29.png" alt="image" width="33" height="29" /><span class="RktRes"></span><span class="hspace">&nbsp;</span><span class="RktRes"></span><img src="pict_30.png" alt="image" width="33" height="29" /><span class="RktRes"></span><span class="hspace">&nbsp;</span><span class="RktRes"></span><img src="pict_31.png" alt="image" width="47" height="29" /><span class="RktRes">)</span></p></td></tr></table></blockquote></div></p><h3>4<tt>&nbsp;</tt><a name="(part._matrix._unary._operators)"></a>Unary Operators</h3><h3>5<tt>&nbsp;</tt><a name="(part._matrix._comprehensions)"></a>Comprehensions</h3><h3>6<tt>&nbsp;</tt><a name="(part._.Binary_.Operators)"></a>Binary Operators</h3></div></div><div id="contextindicator">&nbsp;</div></body></html>