Участник:Бугаков Юрий/Построение матрицы Адамара произвольного размера: различия между версиями
Eplusr (обсуждение | вклад) Нет описания правки |
|||
| Строка 3: | Строка 3: | ||
== Общее описание алгоритма == | == Общее описание алгоритма == | ||
=== Общее описание алгоритма === | |||
Важную роль в алгебре и комбинаторике играют матрицы Адамара, которые впервые были введены в математический обиход в конце прошлого века одним из крупнейших французских математиков Жаком Адамаром (1865-1963). Их применение в науке и технике посвящены тысячи публикаций. Они предоставляют эффективные возможности для организации хранения, обработки и передачи информации. | |||
Квадратная матрица Н порядка ''n'' с элементами ±1 называется матрицей Адамара, если выполняется условие | |||
:<math> H_n\,H_n^T = n\,E_n </math> | |||
Нетрудно показать, что различные строки матрицы Адамара попарно ортогональны. Также можно увидеть из определения, что n четно и любые две строки совпадают ровно в n/2 позициях и различаются в остальных. | |||
Матрицу Адамара можно определить эквивалентным образом: | |||
:<math> | |||
H_{n} = H_1\otimes H_{n-1} | |||
</math> | |||
:<math> | |||
\begin{align} | |||
H_1 = | |||
&\begin{pmatrix}\begin{array}{rr} | |||
1 & 1\\ | |||
1 & -1 | |||
\end{array}\end{pmatrix} | |||
\end{align} | |||
</math> | |||
где <math> \otimes </math> представляет собой тензорное произведение, то есть | |||
:<math> | |||
H_{n} = | |||
\begin{pmatrix} | |||
H_{n-1} & H_{n-1}\\ | |||
H_{n-1} & -H_{n-1}\end{pmatrix} | |||
</math> | |||
:<math> | |||
\begin{align} | |||
H_1 = | |||
&\begin{pmatrix}\begin{array}{rr} | |||
1 & 1\\ | |||
1 & -1 | |||
\end{array}\end{pmatrix} | |||
\end{align} | |||
</math> | |||
С матрицами Адамара связан ряд нерешенных проблем, одна из которых состоит в следующем. Мы уже видели, что порядок n матрицы Адамара при n ≥ 3 может быть лишь четным. Более того, при n ≥ 4 порядок обязан делиться на 4. До сих пор остается открытым вопрос: для любого ли n, кратного 4, существует матрица Адамара порядка n? Неизвестно, в частности, существует ли матрица Адамара порядка 268 (это наименьший порядок, кратный 4, для которого матрица Адамара еще не построена). | |||
Часто размерность матрицы Адамара считают равной степени 2 и нормализируют её. Определение принимает следующий вид: | |||
Матрицей Адамара ''H''<sub>''n''</sub> эта матрица размера 2<sup>''n''</sup> × 2<sup>''n''</sup>, для которой справедливо равенство | |||
:<math>H_n = H_{1} \otimes H_{n-1}</math> | |||
:<math>\begin{align} | |||
H_1 = \frac{1}{\sqrt2} | |||
&\begin{pmatrix}\begin{array}{rr} | |||
1 & 1\\ | |||
1 & -1 | |||
\end{array}\end{pmatrix} | |||
\end{align}</math> | |||
где <math> \otimes </math> представляет собой тензорное произведение. | |||
Также, мы можем вычислить значения каждого элемента матрицы Адамара <math>H_n</math>. Для этого представим порядковые номера ''k'' и ''l'' элемента <math>h_{kl}</math> в виде двоичного разложения | |||
: <math>k = \sum^{m-1}_{i=0} {k_i 2^i} = k_{m-1} 2^{m-1} + k_{m-2} 2^{m-2} + \cdots + k_1 2 + k_0</math> | |||
и | |||
: <math>l = \sum^{m-1}_{i=0} {l_i 2^i} = l_{m-1} 2^{m-1} + l_{m-2} 2^{m-2} + \cdots + l_1 2 + l_0</math> | |||
где ''k''<sub>''j''</sub> и ''l''<sub>''j''</sub> коэффициенты двоичного разложения чисел ''k'' и ''l'' (1 или 0). | |||
Тогда каждый элемент матрицы Адамара <math>H_n</math> имеет вид | |||
:<math>h_{k,l} = \frac{1}{2^\frac{n}{2}} (-1)^{\sum_j k_j l_j}</math> | |||
Представим некоторые частные примеры матриц Адамара: | |||
:<math>\begin{align} | |||
H_0 = &+1\\ | |||
H_1 = \frac{1}{\sqrt2} | |||
&\begin{pmatrix}\begin{array}{rr} | |||
1 & 1\\ | |||
1 & -1 | |||
\end{array}\end{pmatrix} | |||
\end{align}</math> | |||
:<math>\begin{align} | |||
H_2 = \frac{1}{2} | |||
&\begin{pmatrix}\begin{array}{rrrr} | |||
1 & 1 & 1 & 1\\ | |||
1 & -1 & 1 & -1\\ | |||
1 & 1 & -1 & -1\\ | |||
1 & -1 & -1 & 1 | |||
\end{array}\end{pmatrix}\\ | |||
H_3 = \frac{1}{2^{\frac{3}{2}}} | |||
&\begin{pmatrix}\begin{array}{rrrrrrrr} | |||
1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\ | |||
1 & -1 & 1 & -1 & 1 & -1 & 1 & -1\\ | |||
1 & 1 & -1 & -1 & 1 & 1 & -1 & -1\\ | |||
1 & -1 & -1 & 1 & 1 & -1 & -1 & 1\\ | |||
1 & 1 & 1 & 1 & -1 & -1 & -1 & -1\\ | |||
1 & -1 & 1 & -1 & -1 & 1 & -1 & 1\\ | |||
1 & 1 & -1 & -1 & -1 & -1 & 1 & 1\\ | |||
1 & -1 & -1 & 1 & -1 & 1 & 1 & -1 | |||
\end{array}\end{pmatrix}\\ | |||
\end{align}</math> | |||
== Математическое описание алгоритма == | == Математическое описание алгоритма == | ||
Версия от 07:50, 14 октября 2016
Свойства и структура алгоритмов
Общее описание алгоритма
Общее описание алгоритма
Важную роль в алгебре и комбинаторике играют матрицы Адамара, которые впервые были введены в математический обиход в конце прошлого века одним из крупнейших французских математиков Жаком Адамаром (1865-1963). Их применение в науке и технике посвящены тысячи публикаций. Они предоставляют эффективные возможности для организации хранения, обработки и передачи информации.
Квадратная матрица Н порядка n с элементами ±1 называется матрицей Адамара, если выполняется условие
- [math]\displaystyle{ H_n\,H_n^T = n\,E_n }[/math]
Нетрудно показать, что различные строки матрицы Адамара попарно ортогональны. Также можно увидеть из определения, что n четно и любые две строки совпадают ровно в n/2 позициях и различаются в остальных.
Матрицу Адамара можно определить эквивалентным образом:
- [math]\displaystyle{ H_{n} = H_1\otimes H_{n-1} }[/math]
- [math]\displaystyle{ \begin{align} H_1 = &\begin{pmatrix}\begin{array}{rr} 1 & 1\\ 1 & -1 \end{array}\end{pmatrix} \end{align} }[/math]
где [math]\displaystyle{ \otimes }[/math] представляет собой тензорное произведение, то есть
- [math]\displaystyle{ H_{n} = \begin{pmatrix} H_{n-1} & H_{n-1}\\ H_{n-1} & -H_{n-1}\end{pmatrix} }[/math]
- [math]\displaystyle{ \begin{align} H_1 = &\begin{pmatrix}\begin{array}{rr} 1 & 1\\ 1 & -1 \end{array}\end{pmatrix} \end{align} }[/math]
С матрицами Адамара связан ряд нерешенных проблем, одна из которых состоит в следующем. Мы уже видели, что порядок n матрицы Адамара при n ≥ 3 может быть лишь четным. Более того, при n ≥ 4 порядок обязан делиться на 4. До сих пор остается открытым вопрос: для любого ли n, кратного 4, существует матрица Адамара порядка n? Неизвестно, в частности, существует ли матрица Адамара порядка 268 (это наименьший порядок, кратный 4, для которого матрица Адамара еще не построена).
Часто размерность матрицы Адамара считают равной степени 2 и нормализируют её. Определение принимает следующий вид:
Матрицей Адамара Hn эта матрица размера 2n × 2n, для которой справедливо равенство
- [math]\displaystyle{ H_n = H_{1} \otimes H_{n-1} }[/math]
- [math]\displaystyle{ \begin{align} H_1 = \frac{1}{\sqrt2} &\begin{pmatrix}\begin{array}{rr} 1 & 1\\ 1 & -1 \end{array}\end{pmatrix} \end{align} }[/math]
где [math]\displaystyle{ \otimes }[/math] представляет собой тензорное произведение.
Также, мы можем вычислить значения каждого элемента матрицы Адамара [math]\displaystyle{ H_n }[/math]. Для этого представим порядковые номера k и l элемента [math]\displaystyle{ h_{kl} }[/math] в виде двоичного разложения
- [math]\displaystyle{ k = \sum^{m-1}_{i=0} {k_i 2^i} = k_{m-1} 2^{m-1} + k_{m-2} 2^{m-2} + \cdots + k_1 2 + k_0 }[/math]
и
- [math]\displaystyle{ l = \sum^{m-1}_{i=0} {l_i 2^i} = l_{m-1} 2^{m-1} + l_{m-2} 2^{m-2} + \cdots + l_1 2 + l_0 }[/math]
где kj и lj коэффициенты двоичного разложения чисел k и l (1 или 0).
Тогда каждый элемент матрицы Адамара [math]\displaystyle{ H_n }[/math] имеет вид
- [math]\displaystyle{ h_{k,l} = \frac{1}{2^\frac{n}{2}} (-1)^{\sum_j k_j l_j} }[/math]
Представим некоторые частные примеры матриц Адамара:
- [math]\displaystyle{ \begin{align} H_0 = &+1\\ H_1 = \frac{1}{\sqrt2} &\begin{pmatrix}\begin{array}{rr} 1 & 1\\ 1 & -1 \end{array}\end{pmatrix} \end{align} }[/math]
- [math]\displaystyle{ \begin{align} H_2 = \frac{1}{2} &\begin{pmatrix}\begin{array}{rrrr} 1 & 1 & 1 & 1\\ 1 & -1 & 1 & -1\\ 1 & 1 & -1 & -1\\ 1 & -1 & -1 & 1 \end{array}\end{pmatrix}\\ H_3 = \frac{1}{2^{\frac{3}{2}}} &\begin{pmatrix}\begin{array}{rrrrrrrr} 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\ 1 & -1 & 1 & -1 & 1 & -1 & 1 & -1\\ 1 & 1 & -1 & -1 & 1 & 1 & -1 & -1\\ 1 & -1 & -1 & 1 & 1 & -1 & -1 & 1\\ 1 & 1 & 1 & 1 & -1 & -1 & -1 & -1\\ 1 & -1 & 1 & -1 & -1 & 1 & -1 & 1\\ 1 & 1 & -1 & -1 & -1 & -1 & 1 & 1\\ 1 & -1 & -1 & 1 & -1 & 1 & 1 & -1 \end{array}\end{pmatrix}\\ \end{align} }[/math]