<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://en.formulasearchengine.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=86.69.126.0%2F24</id>
	<title>formulasearchengine - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://en.formulasearchengine.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=86.69.126.0%2F24"/>
	<link rel="alternate" type="text/html" href="https://en.formulasearchengine.com/wiki/Special:Contributions/86.69.126.0/24"/>
	<updated>2026-08-24T22:29:31Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.47.0-wmf.7</generator>
	<entry>
		<id>https://en.formulasearchengine.com/w/index.php?title=Tak_(function)&amp;diff=13457</id>
		<title>Tak (function)</title>
		<link rel="alternate" type="text/html" href="https://en.formulasearchengine.com/w/index.php?title=Tak_(function)&amp;diff=13457"/>
		<updated>2013-04-01T00:58:39Z</updated>

		<summary type="html">&lt;p&gt;86.69.126.183: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{refimprove|date=December 2010}}&lt;br /&gt;
In mathematics, &#039;&#039;&#039;block matrix pseudoinverse&#039;&#039;&#039; is a formula of [[pseudoinverse]] of a [[partitioned matrix]]. This is useful for decomposing or approximating many algorithms updating parameters in [[signal processing]], which are based on [[least squares]] method.&lt;br /&gt;
&lt;br /&gt;
== Derivation ==&lt;br /&gt;
Consider a column-wise partitioned matrix:&lt;br /&gt;
:&amp;lt;math&amp;gt; [\mathbf A, \mathbf B], \qquad \mathbf A \in \reals^{n\times m}, \qquad \mathbf B \in \reals^{p\times m}, \qquad m \geq n+p.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the above matrix is full rank, the [[pseudoinverse]] matrices of it and its transpose are as follows.&lt;br /&gt;
:&amp;lt;math&amp;gt; &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A,  &amp;amp; \mathbf B&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+} = ([\mathbf A, \mathbf B]^T [\mathbf A, \mathbf B])^{-1} [\mathbf A, \mathbf B]^T,&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt; &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A^T  \\ \mathbf B^T &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+} = [\mathbf A, \mathbf B] ([\mathbf A, \mathbf B]^T [\mathbf A, \mathbf B])^{-1}. &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
The pseudoinverse requires (&#039;&#039;n&#039;&#039;&amp;amp;nbsp;+&amp;amp;nbsp;&#039;&#039;p&#039;&#039;)-square matrix inversion.&lt;br /&gt;
&lt;br /&gt;
To reduce complexity and introduce parallelism, we derive the following decomposed formula. From a block matrix inverse&amp;lt;math&amp;gt; \mathbf ([\mathbf A, \mathbf B]^T [\mathbf A, \mathbf B])^{-1}&amp;lt;/math&amp;gt;, we can have{{citation needed|date=December 2010}}{{Original research|date=December 2010}}&lt;br /&gt;
:&amp;lt;math&amp;gt;  &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A,  &amp;amp; \mathbf B &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+} = \left[\mathbf P_B^\perp \mathbf A( \mathbf A^T \mathbf P_B^\perp \mathbf A)^{-1}, \quad \mathbf P_A^\perp \mathbf B(\mathbf B^T \mathbf P_A^\perp \mathbf B)^{-1}\right]^T, &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;  &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A^T  \\ \mathbf B^T &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+} = \left[\mathbf P_B^\perp \mathbf A( \mathbf A^T \mathbf P_B^\perp \mathbf A)^{-1}, \quad \mathbf P_A^\perp \mathbf B(\mathbf B^T \mathbf P_A^\perp \mathbf B)^{-1}\right],&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
where [[orthogonal projection]] matrices are defined by&lt;br /&gt;
::&amp;lt;math&amp;gt;&lt;br /&gt;
\begin{align}&lt;br /&gt;
\mathbf P_A^\perp &amp;amp; = \mathbf I - \mathbf A (\mathbf A^T \mathbf A)^{-1} \mathbf A^T, \\ \mathbf P_B^\perp &amp;amp; = \mathbf I - \mathbf B (\mathbf B^T \mathbf B)^{-1} \mathbf B^T.&lt;br /&gt;
\end{align}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interestingly, from the [[idempotence]] of projection matrix, we can verify that the pseudoinverse of block matrix consists of pseudoinverse of projected matrices:&lt;br /&gt;
:&amp;lt;math&amp;gt;  &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A,  &amp;amp; \mathbf B&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+} &lt;br /&gt;
= &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
(\mathbf P_B^{\perp}\mathbf A)^{+}&lt;br /&gt;
\\ &lt;br /&gt;
(\mathbf P_A^{\perp}\mathbf B)^{+} &lt;br /&gt;
\end{bmatrix}, &amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;  &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A^T  \\ \mathbf B^T &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+} &lt;br /&gt;
= [(\mathbf A^T \mathbf P_B^{\perp})^{+}, &lt;br /&gt;
\quad (\mathbf B^T \mathbf P_A^{\perp})^{+} ]. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Thus, we decomposed the block matrix pseudoinverse into two submatrix pseudoinverses, which cost &#039;&#039;n&#039;&#039;- and &#039;&#039;p&#039;&#039;-square matrix inversions, respectively.&lt;br /&gt;
&lt;br /&gt;
Note that the above formulae are not necessarily valid if &amp;lt;math&amp;gt;[\mathbf A, \mathbf B]&amp;lt;/math&amp;gt; does not have full rank – for example, if &amp;lt;math&amp;gt;\mathbf A \neq 0&amp;lt;/math&amp;gt;, then&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A,  &amp;amp; \mathbf A&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+} &lt;br /&gt;
= \frac{1}{2}&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A^{+}  \\ \mathbf A^{+} &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\neq&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
(\mathbf P_A^{\perp}\mathbf A)^{+}&lt;br /&gt;
\\ &lt;br /&gt;
(\mathbf P_A^{\perp}\mathbf A)^{+} &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
= 0&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Application to least squares problems ==&lt;br /&gt;
&lt;br /&gt;
Given the same matrices as above, we consider the following least squares problems, which&lt;br /&gt;
appear as multiple objective optimizations or constrained problems in signal processing.&lt;br /&gt;
Eventually, we can implement a parallel algorithm for least squares based on the following results.&lt;br /&gt;
&lt;br /&gt;
=== Column-wise partitioning in over-determined least squares ===&lt;br /&gt;
&lt;br /&gt;
Suppose a solution &lt;br /&gt;
&amp;lt;math&amp;gt; \mathbf x = \begin{bmatrix}&lt;br /&gt;
\mathbf x_1 \\&lt;br /&gt;
\mathbf x_2 \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt; solves an over-determined system:&lt;br /&gt;
:&amp;lt;math&amp;gt; &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A, &amp;amp; \mathbf B &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf x_1 \\&lt;br /&gt;
\mathbf x_2 \\&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
= &lt;br /&gt;
\mathbf d&lt;br /&gt;
, &lt;br /&gt;
\qquad \mathbf d \in \reals^{m\times 1}.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using the block matrix pseudoinverse, we have&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
\mathbf x&lt;br /&gt;
= &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A, &amp;amp; \mathbf B&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+}\,&lt;br /&gt;
\mathbf d&lt;br /&gt;
= &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
(\mathbf P_B^{\perp} \mathbf A)^{+}\\&lt;br /&gt;
(\mathbf P_A^{\perp} \mathbf B)^{+} &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\mathbf d&lt;br /&gt;
.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Therefore, we have a decomposed solution:&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
\mathbf x_1&lt;br /&gt;
= &lt;br /&gt;
(\mathbf P_B^{\perp} \mathbf A)^{+}\,&lt;br /&gt;
\mathbf d&lt;br /&gt;
,&lt;br /&gt;
\qquad&lt;br /&gt;
\mathbf x_2&lt;br /&gt;
= &lt;br /&gt;
(\mathbf P_A^{\perp} \mathbf B)^{+} &lt;br /&gt;
\,&lt;br /&gt;
\mathbf d&lt;br /&gt;
.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Row-wise partitioning in under-determined least squares ===&lt;br /&gt;
&lt;br /&gt;
Suppose a solution &amp;lt;math&amp;gt; \mathbf x &amp;lt;/math&amp;gt; solves an under-determined system:&lt;br /&gt;
:&amp;lt;math&amp;gt; &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A^T  \\ \mathbf B^T &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
\mathbf x &lt;br /&gt;
= &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf e \\ \mathbf f &lt;br /&gt;
\end{bmatrix}, &lt;br /&gt;
\qquad \mathbf e \in \reals^{n\times 1},&lt;br /&gt;
\qquad \mathbf f \in \reals^{p\times 1}.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The minimum-norm solution is given by&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
\mathbf x&lt;br /&gt;
= &lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A^T  \\ \mathbf B^T &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
^{+}\,&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf e \\ \mathbf f &lt;br /&gt;
\end{bmatrix}.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using the block matrix pseudoinverse, we have&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
\mathbf x&lt;br /&gt;
= &lt;br /&gt;
[(\mathbf A^T\mathbf P_B^{\perp})^{+}, &lt;br /&gt;
\quad (\mathbf B^T\mathbf P_A^{\perp})^{+} ]&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf e \\ \mathbf f &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
= &lt;br /&gt;
(\mathbf A^T\mathbf P_B^{\perp})^{+}\,\mathbf e&lt;br /&gt;
+&lt;br /&gt;
(\mathbf B^T\mathbf P_A^{\perp} )^{+}\,\mathbf f &lt;br /&gt;
.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Comments on matrix inversion ==&lt;br /&gt;
&lt;br /&gt;
Instead of &amp;lt;math&amp;gt; \mathbf ([\mathbf A, \mathbf B]^T [\mathbf A, \mathbf B])^{-1}&amp;lt;/math&amp;gt;, &lt;br /&gt;
we need to calculate directly or indirectly{{citation needed|date=December 2010}}{{original research?|date=December 2010}}&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; &lt;br /&gt;
\quad   (\mathbf A^T \mathbf A)^{-1},&lt;br /&gt;
\quad   (\mathbf B^T \mathbf B)^{-1},&lt;br /&gt;
\quad   (\mathbf A^T \mathbf P_B^{\perp} \mathbf A)^{-1}, &lt;br /&gt;
\quad   (\mathbf B^T \mathbf P_A^{\perp} \mathbf B)^{-1}&lt;br /&gt;
.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In a dense and small system, we can use [[singular value decomposition]], [[QR decomposition]], or [[Cholesky decomposition]] to replace the matrix inversions with numerical routines. In a large system, we may employ [[iterative methods]] such as Krylov subspace methods.&lt;br /&gt;
&lt;br /&gt;
Considering [[parallel algorithms]], we can compute &amp;lt;math&amp;gt;(\mathbf A^T \mathbf A)^{-1}&amp;lt;/math&amp;gt; and &lt;br /&gt;
&amp;lt;math&amp;gt;(\mathbf B^T \mathbf B)^{-1}&amp;lt;/math&amp;gt; in parallel. Then, we finish to compute &amp;lt;math&amp;gt;(\mathbf A^T \mathbf P_B^{\perp} \mathbf A)^{-1}&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;(\mathbf B^T \mathbf P_A^{\perp} \mathbf B)^{-1}&amp;lt;/math&amp;gt; also in parallel.&lt;br /&gt;
&lt;br /&gt;
== Block matrix inversion ==&lt;br /&gt;
Let a block matrix be&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{bmatrix}&lt;br /&gt;
A &amp;amp; B \\&lt;br /&gt;
C &amp;amp; D&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
.&amp;lt;/math&amp;gt;&lt;br /&gt;
We can get an inverse formula by combining the previous results in.&amp;lt;ref&amp;gt;{{Cite web |url=http://ccrma.stanford.edu/~jos/lattice/Block_matrix_decompositions.html|title=Block matrix decompositions |title=Block matrix decompositions |last=Smith |first=Julius O |archiveurl=http://web.archive.org/web/20080915181439/http://ccrma.stanford.edu/~jos/lattice/Block_matrix_decompositions.html |archivedate=2008-09-15}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{bmatrix}&lt;br /&gt;
A &amp;amp; B \\&lt;br /&gt;
C &amp;amp; D&lt;br /&gt;
\end{bmatrix}^{-1}&lt;br /&gt;
=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
                 (A - BD^{-1}C)^{-1}         &amp;amp; -A^{-1}B(D - CA^{-1}B)^{-1} \\&lt;br /&gt;
                 -D^{-1}C(A - BD^{-1}C)^{-1} &amp;amp; (D - CA^{-1}B)^{-1}  &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
                 S^{-1}_D         &amp;amp; -A^{-1}BS^{-1}_A \\&lt;br /&gt;
                 -D^{-1}CS^{-1}_D &amp;amp; S^{-1}_A&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
,&amp;lt;/math&amp;gt;&lt;br /&gt;
where &amp;lt;math&amp;gt;S_A&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;S_D&amp;lt;/math&amp;gt;, respectively, [[Schur complements]] of &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;&lt;br /&gt;
and &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt;, are defined by &amp;lt;math&amp;gt;S_A = D - C A^{-1}B&amp;lt;/math&amp;gt;, and &amp;lt;math&amp;gt;S_D =&lt;br /&gt;
A - BD^{-1}C&amp;lt;/math&amp;gt;. This relation is derived by using Block Triangular&lt;br /&gt;
Decomposition. It is called &#039;&#039;simple block matrix inversion.&#039;&#039;&amp;lt;ref&amp;gt;[http://ieeexplore.ieee.org/xpls/abs_all.jsp?isnumber=30419&amp;amp;arnumber=1399280&amp;amp;count=249&amp;amp;index=181 S. Jo, S. W. Kim and T. J. Park, &amp;quot;Equally constrained affine projection algorithm,&amp;quot; &#039;&#039;in Conference Record of the Thirty-Eighth Asilomar Conference on Signals, Systems and Computers,&#039;&#039; vol. 1, pp. 955–959, Nov. 7–10, 2004.]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we can obtain the inverse of the symmetric block matrix: &lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A^T \mathbf A &amp;amp; \mathbf A^T \mathbf B \\&lt;br /&gt;
\mathbf B^T \mathbf A &amp;amp; \mathbf B^T \mathbf B&lt;br /&gt;
\end{bmatrix}^{-1}&lt;br /&gt;
=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
                 (\mathbf A^T \mathbf A-\mathbf A^T \mathbf B(\mathbf B^T \mathbf B)^{-1}\mathbf B^T \mathbf A)^{-1}         &lt;br /&gt;
                 &amp;amp; -(\mathbf A^T \mathbf A)^{-1}\mathbf A^T \mathbf B(\mathbf B^T \mathbf B-\mathbf B^T \mathbf A(\mathbf A^T \mathbf A)^{-1}\mathbf A^T \mathbf B)^{-1} &lt;br /&gt;
\\&lt;br /&gt;
                 -(\mathbf B^T \mathbf B)^{-1}\mathbf B^T \mathbf A(\mathbf A^T \mathbf A-\mathbf A^T \mathbf B(\mathbf B^T \mathbf B)^{-1}\mathbf B^T \mathbf A)^{-1} &lt;br /&gt;
                 &amp;amp; (\mathbf B^T \mathbf B-\mathbf B^T \mathbf A(\mathbf A^T \mathbf A)^{-1}\mathbf A^T \mathbf B)^{-1}  &lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
:::&amp;lt;math&amp;gt;&lt;br /&gt;
=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
                 (\mathbf A^T \mathbf P_B^\perp \mathbf A)^{-1}         &lt;br /&gt;
                 &amp;amp; -(\mathbf A^T \mathbf A)^{-1}\mathbf A^T \mathbf B(\mathbf B^T \mathbf P_A^\perp \mathbf B)^{-1}&lt;br /&gt;
\\&lt;br /&gt;
                 -(\mathbf B^T \mathbf B)^{-1}\mathbf B^T \mathbf A(\mathbf A^T \mathbf P_B^\perp \mathbf A)^{-1}&lt;br /&gt;
                 &amp;amp; (\mathbf B^T \mathbf P_A^{\perp} \mathbf B)^{-1}&lt;br /&gt;
\end{bmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Since the block matrix is symmetric, we also have&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
\mathbf A^T \mathbf A &amp;amp; \mathbf A^T \mathbf B \\&lt;br /&gt;
\mathbf B^T \mathbf A &amp;amp; \mathbf B^T \mathbf B&lt;br /&gt;
\end{bmatrix}^{-1}&lt;br /&gt;
=&lt;br /&gt;
\begin{bmatrix}&lt;br /&gt;
                 (\mathbf A^T \mathbf P_B^{\perp} \mathbf A)^{-1}         &lt;br /&gt;
                 &amp;amp; &lt;br /&gt;
                 -(\mathbf A^T \mathbf P_B^{\perp} \mathbf A)^{-1}&lt;br /&gt;
                  \mathbf A^T \mathbf B(\mathbf B^T \mathbf B)^{-1}&lt;br /&gt;
\\&lt;br /&gt;
                  -(\mathbf B^T \mathbf P_A^{\perp} \mathbf B)^{-1}&lt;br /&gt;
                   \mathbf B^T \mathbf A (\mathbf A^T \mathbf A)^{-1}&lt;br /&gt;
                 &amp;amp; (\mathbf B^T \mathbf P_A^{\perp} \mathbf B)^{-1}&lt;br /&gt;
\end{bmatrix}.&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, we can see how the Schur complements are connected to the projection matrices of the symmetric, partitioned matrix.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
*[[Invertible matrix#Blockwise inversion]]&lt;br /&gt;
&lt;br /&gt;
==References ==&lt;br /&gt;
{{Reflist}}&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* [http://www.ee.ic.ac.uk/hp/staff/dmb/matrix/intro.html The Matrix Reference Manual] by [http://www.ee.ic.ac.uk/hp/staff/dmb/dmb.html Mike Brookes]&lt;br /&gt;
* [http://www.csit.fsu.edu/~burkardt/papers/linear_glossary.html Linear Algebra Glossary] by [http://www.csit.fsu.edu/~burkardt/ John Burkardt]&lt;br /&gt;
* [http://www2.imm.dtu.dk/pubdb/views/edoc_download.php/3274/pdf/imm3274.pdf The Matrix Cookbook] by [http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=3274/ Kaare Brandt Petersen]&lt;br /&gt;
* [http://see.stanford.edu/materials/lsoeldsee263/08-min-norm.pdf Lecture 8: Least-norm solutions of undetermined equations] by [http://www.stanford.edu/~boyd/ Stephen P. Boyd]&lt;br /&gt;
&lt;br /&gt;
{{Numerical linear algebra}}&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:Block Matrix Pseudoinverse}}&lt;br /&gt;
[[Category:Numerical linear algebra]]&lt;br /&gt;
[[Category:Matrix theory]]&lt;/div&gt;</summary>
		<author><name>86.69.126.183</name></author>
	</entry>
</feed>