<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://70.231.62.181/index.php?action=history&amp;feed=atom&amp;title=Samuelson%E2%80%93Berkowitz_algorithm</id>
	<title>Samuelson–Berkowitz algorithm - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://70.231.62.181/index.php?action=history&amp;feed=atom&amp;title=Samuelson%E2%80%93Berkowitz_algorithm"/>
	<link rel="alternate" type="text/html" href="http://70.231.62.181/index.php?title=Samuelson%E2%80%93Berkowitz_algorithm&amp;action=history"/>
	<updated>2026-06-22T13:25:42Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>http://70.231.62.181/index.php?title=Samuelson%E2%80%93Berkowitz_algorithm&amp;diff=8499443&amp;oldid=prev</id>
		<title>imported&gt;David Eppstein: more specific short description</title>
		<link rel="alternate" type="text/html" href="http://70.231.62.181/index.php?title=Samuelson%E2%80%93Berkowitz_algorithm&amp;diff=8499443&amp;oldid=prev"/>
		<updated>2025-05-28T04:59:38Z</updated>

		<summary type="html">&lt;p&gt;more specific short description&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Short description|Method for matrix characteristic polynomials}}&lt;br /&gt;
{{Expand German|Algorithmus von Samuelson-Berkowitz|date=July 2020}}&lt;br /&gt;
In mathematics, the &amp;#039;&amp;#039;&amp;#039;Samuelson–Berkowitz algorithm&amp;#039;&amp;#039;&amp;#039; efficiently computes the [[characteristic polynomial]] of an &amp;lt;math&amp;gt;n\times n&amp;lt;/math&amp;gt; matrix whose entries may be elements of any unital [[commutative ring]].  Unlike the [[Faddeev–LeVerrier algorithm]], it performs no divisions, so may be applied to a wider range of algebraic structures.&lt;br /&gt;
&lt;br /&gt;
==Description of the algorithm==&lt;br /&gt;
&lt;br /&gt;
The Samuelson–Berkowitz algorithm applied to a matrix &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; produces a vector whose entries are the coefficient of the characteristic polynomial of &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt;.  It computes this coefficients vector recursively as the product of a [[Toeplitz matrix]] and the coefficients vector an &amp;lt;math&amp;gt;(n-1)\times(n-1)&amp;lt;/math&amp;gt; [[Submatrix#Submatrix|principal submatrix]].&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;A_0&amp;lt;/math&amp;gt; be an &amp;lt;math&amp;gt;n\times n&amp;lt;/math&amp;gt; matrix partitioned so that&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; A_0 = \left[ \begin{array}{c|c}&lt;br /&gt;
                    a_{1,1} &amp;amp; R \\ \hline&lt;br /&gt;
                    C &amp;amp; A_1&lt;br /&gt;
                    \end{array}  \right] &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;first principal submatrix&amp;#039;&amp;#039; of &amp;lt;math&amp;gt;A_0&amp;lt;/math&amp;gt; is the &amp;lt;math&amp;gt;(n-1)\times(n-1)&amp;lt;/math&amp;gt; matrix &amp;lt;math&amp;gt;A_1&amp;lt;/math&amp;gt;.  Associate with &amp;lt;math&amp;gt;A_0&amp;lt;/math&amp;gt; the &amp;lt;math&amp;gt;(n+1)\times n&amp;lt;/math&amp;gt; [[Toeplitz matrix]] &amp;lt;math&amp;gt;T_0&amp;lt;/math&amp;gt;&lt;br /&gt;
defined by&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; T_0 = \left[ \begin{array}{c}&lt;br /&gt;
                    1 \\ &lt;br /&gt;
                    -a_{1,1}&lt;br /&gt;
                    \end{array}  \right] &amp;lt;/math&amp;gt;&lt;br /&gt;
if &amp;lt;math&amp;gt;A_0&amp;lt;/math&amp;gt; is &amp;lt;math&amp;gt;1\times 1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; T_0 = \left[ \begin{array}{c c}&lt;br /&gt;
                    1        &amp;amp; 0 \\ &lt;br /&gt;
                    -a_{1,1} &amp;amp; 1 \\&lt;br /&gt;
                    -RC      &amp;amp; -a_{1,1}&lt;br /&gt;
                    \end{array} \right] &amp;lt;/math&amp;gt;&lt;br /&gt;
if &amp;lt;math&amp;gt;A_0&amp;lt;/math&amp;gt; is &amp;lt;math&amp;gt;2\times 2&amp;lt;/math&amp;gt;,&lt;br /&gt;
and in general&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; T_0 = \left[ \begin{array}{c c c c c}&lt;br /&gt;
                    1        &amp;amp; 0        &amp;amp; 0        &amp;amp; 0        &amp;amp; \cdots\\ &lt;br /&gt;
                    -a_{1,1} &amp;amp; 1        &amp;amp; 0        &amp;amp; 0        &amp;amp; \cdots\\&lt;br /&gt;
                    -RC      &amp;amp; -a_{1,1} &amp;amp; 1        &amp;amp; 0        &amp;amp; \cdots\\&lt;br /&gt;
                    -RA_1C   &amp;amp; -RC      &amp;amp; -a_{1,1} &amp;amp; 1        &amp;amp; \cdots\\&lt;br /&gt;
                    -RA_1^2C &amp;amp; -RA_1C   &amp;amp; -RC      &amp;amp; -a_{1,1} &amp;amp; \cdots\\&lt;br /&gt;
                    \vdots   &amp;amp; \vdots   &amp;amp; \vdots   &amp;amp; \vdots   &amp;amp; \ddots&lt;br /&gt;
                    \end{array}  \right] &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That is, all super diagonals of &amp;lt;math&amp;gt;T_0&amp;lt;/math&amp;gt; consist of zeros, the main diagonal consists of ones, the first subdiagonal consists of &amp;lt;math&amp;gt;-a_{1,1}&amp;lt;/math&amp;gt; and the &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;th subdiagonal&lt;br /&gt;
consists of &amp;lt;math&amp;gt;-RA_1^{k-2}C&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The algorithm is then applied recursively to &amp;lt;math&amp;gt;A_1&amp;lt;/math&amp;gt;, producing the Toeplitz matrix &amp;lt;math&amp;gt;T_1&amp;lt;/math&amp;gt; times the characteristic polynomial of &amp;lt;math&amp;gt;A_2&amp;lt;/math&amp;gt;, etc.  Finally, the characteristic polynomial of the &amp;lt;math&amp;gt;1\times 1&amp;lt;/math&amp;gt; matrix &amp;lt;math&amp;gt;A_{n-1}&amp;lt;/math&amp;gt; is simply &amp;lt;math&amp;gt;T_{n-1}&amp;lt;/math&amp;gt;.  The Samuelson–Berkowitz algorithm then states that the vector &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; defined by&lt;br /&gt;
:&amp;lt;math&amp;gt; v=T_0 T_1 T_2\cdots T_{n-1} &amp;lt;/math&amp;gt;&lt;br /&gt;
contains the coefficients of the characteristic polynomial of &amp;lt;math&amp;gt;A_0&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Because each of the &amp;lt;math&amp;gt;T_i&amp;lt;/math&amp;gt; may be computed independently, the algorithm is highly [[Parallel algorithm|parallelizable]].&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
* {{cite journal |first=Stuart J. |last=Berkowitz |title=On computing the determinant in small parallel time using a small number of processors |journal=Information Processing Letters |volume=18 |issue=3 |date=30 March 1984 |pages=147–150 |doi=10.1016/0020-0190(84)90018-8}}&lt;br /&gt;
* {{cite journal |last2=Cook |first2=Stephen |last1=Soltys |first1=Michael |title=The Proof Complexity of Linear Algebra |journal=Annals of Pure and Applied Logic |volume=130 |issue=1–3 |date=December 2004 |pages=277–323 |doi=10.1016/j.apal.2003.10.018 |citeseerx=10.1.1.308.6521 |url=http://prof.msoltys.com/wp-content/uploads/2015/04/soltys-cook-apal.pdf}}&lt;br /&gt;
*{{cite tech report |first=Michael |last=Kerber |title=Division-Free computation of sub-resultants using Bezout matrices |id=Tech. Report MPI-I-2006-1-006 |publisher=Max-Planck-Institut für Informatik |location=Saarbrucken |date=May 2006 |url=https://pure.mpg.de/pubman/faces/ViewItemOverviewPage.jsp?itemId=item_1819171 |format=PS}}&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:Samuelson-Berkowitz algorithm}}&lt;br /&gt;
[[Category:Linear algebra]]&lt;br /&gt;
[[Category:Polynomials]]&lt;br /&gt;
[[Category:Numerical linear algebra]]&lt;/div&gt;</summary>
		<author><name>imported&gt;David Eppstein</name></author>
	</entry>
</feed>