\documentclass[spec, och, labwork2]{SCWorks}
\usepackage{preamble}

\begin{document}
\include{titlepage.tex}
\tableofcontents

\section{Постановка задачи}

Цель работы "--- изучение основных понятий универсальной алгебры и операций над
бинарными отношениями. Порядок выполнения работы:
\begin{enumerate}
    \item 
        Рассмотреть понятие алгебраической операции и классификацию свойств
        операций. Разработать алгоритмы проверки свойств операций:
        ассоциативность, коммутативность, идемпотентность, обратимость,
        дистрибутивность;
    \item
        Рассмотреть основные операции над бинарными отношениями. Разработать
        алгоритмы выполнения операций над бинарными отношениями;
    \item
        Рассмотреть основные операции над матрицами. Разработать алгоритмы
        выполнения операций над матрицами.
\end{enumerate}

\section{Теоретические сведения}

\subsection{Алгебраические операции}

\begin{definition}
    Отображение $f : A^n \to A$ называется алгебраической $n$-арной операцией
    или просто алгебраической операцией на множестве $A$. При этом $n$
    называется порядком или арностью алгебраической операции $f$.
\end{definition}

Далее для бинарной операции $f$ по возможности будем использовать
мультипликативную запись с помощью символа $\cdot$, т.е. вместо $f(x, y)$ писать
$x \cdot y$, или просто $xy$. При необходимости для бинарной операции $f$
используется также аддитивная запись с помощью символа $+$, т.е. вместо $f(x,
y)$ записывается $x + y$.

\begin{definition}
    Бинарная операция $\cdot$ на множестве A называется
    \begin{itemize}
        \item 
            ассоциативной, если $\forall x, y, z \in A$ выполняется равенство
            \[ x \cdot (y \cdot z) = (x \cdot y) \cdot z \]
        \item
            коммутативной, если $\forall x, y \in A$ выполняется равенство
            \[ x \cdot y = y \cdot x \]
        \item
            идемпотентной, если $\forall x \in A$ выполняется равенство
            \[ x \cdot x = x \]
        \item
            обратимой, если 
            \[ (\forall a \in A) \; \exists b \in A : a \cdot b = b \cdot a = e \]
            где $e \in A$ и выполняется $a \cdot e = e \cdot a = a$
        \item
            дистрибутивной относительно бинарной операции $+$, если 
            $\forall x, y, z \in A$ выполняются равенства
            \begin{align*}
                x \cdot (y + z) &= (x \cdot y) + (x \cdot z) \\
                (y + z) \cdot x &= (y \cdot x) + (z \cdot x)
            \end{align*}
    \end{itemize}
\end{definition}

\newpage % cringe

\subsection{Основные операции над бинарными отношениями}

\begin{enumerate}
    \item 
        Теоретико-множественные операции:
        \begin{itemize}
            \item объединение $\cup$;
            \item пересечение $\cap$;
            \item дополнение $\neg$.
        \end{itemize}
    \item 
        Обращение бинарных отношений: обратным для бинарного отношения $\rho
        \subset A \times B$ называется бинарное отношение $\rho^{-1} \subset B
        \times A$, определяющееся по формуле:
        \[ \rho^{-1} = \{ (b, a): (a, b) \in \rho \} \]
    \item
        Композиция композицией бинарных отношений $\rho \subset A \times B$ и
        $\sigma \subset B \times C$ называется бинарное отношение $\rho \sigma$,
        определяющееся по формуле:
        \[ \rho \sigma = \{ (a, c): (a, b) \in \rho \land (b, c) \in \sigma \} \]
\end{enumerate}

\subsection{Основные операции над матрицами}

\begin{enumerate}
    \item \textbf{Сумма и разность матриц.}
    
        Суммой $A + B$ матриц $A = (a_{ij})$ и $B = (b_{ij})$ размерности $N
        \times M$ называется матрица $C = (c_{ij})$ размерности $N \times M$,
        где $c_{ij} = a_{ij} + b_{ij} \; (\forall 0 \leq i < N) (\forall 0 \leq j < M)$.

        Разностью $A - B$ матриц $A = (a_{ij})$ и $B = (b_{ij})$ размерности $N
        \times M$ называется матрица $C = (c_{ij})$ размерности $N \times M$, 
        где $c_{ij} = a_{ij} - b_{ij} \; (\forall 0 \leq i < N) (\forall 0 \leq j < M)$.

    \item \textbf{Произведение матрицы на скаляр.}
    
        Произведением матрицы $A = (a_{ij})$ размерности $N \times M$ на скаляр
        $\alpha$ называется матрица $C = (c_{ij})$ размерности $N \times M$, где
        $c_{ij} = \alpha \cdot a_{ij} \; (\forall 0 \leq i < N) (\forall 0 \leq j < M)$.

    \item \textbf{Транспонирование матрицы.}
    
        Транспонированной по отношению к матрице $A = (a_{ij})$ размерности $N
        \times M$ называется матрица $A^T = (a^T_{ij})$ размерности $M \times N$
        где $a^T_{ij} = a_{ji} \; (\forall 0 \leq i < N) (\forall 0 \leq j < M)$.

    \item \textbf{Произведение матриц.}
    
        Произведением матрицы $A = (a_{ij})$ размерности $N \times M$ на матрицу
        $B = (b_{ij})$ размерности $M \times K$ называется матрица $C =
        (c_{ij})$ размерности $N \times K$, где $\displaystyle c_{ij} = 
        \sum_{k = 0}^{K - 1} a_{ik} + \sum_{k = 0}^{K - 1} b_{kj} \; 
        (\forall 0 \leq i < N) (\forall 0 \leq j < M)$
    
    \item \textbf{Обращение матрицы.}

        Обратная матрица $A^{-1}$ "--- это такая матрица, при умножении которой
        на исходную матрицу $A$ получается единичная матрица $E$. То есть:
        \[AA^{-1} = A^{-1}A = E\] 

\end{enumerate}

\section{Алгоритмы проверки свойств операций}

%
\subsection{Проверка на ассоциативность}

\textit{Вход.} Таблица Кэли $M = (m_{ij})$ размерности $N \times N$
для операции $\cdot$ на множестве $A$.

\textit{Выход.} <<Операция является ассоциативной>> или <<Операция не является
ассоциативной>>.

\begin{enumerate}
    \item
        Если $(\forall 0 \leq i, j, k < N)$ выполняется равенство $m_{pk} =
        m_{jq}$, где $p$ "--- индекс $m_{ji}$, а $q$ "--- индекс $m_{ik}$, то
        ответ "--- <<Операция является ассоциативной>>;
    \item
        Иначе, ответ "--- <<Операция не является ассоциативной>>.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^3)$.

%
\subsection{Проверка на коммутативность}

\textit{Вход.} Таблица Кэли $M = (m_{ij})$ размерности $N \times N$
для операции $\cdot$ на множестве $A$.

\textit{Выход.} <<Операция является коммутативной>> или <<Операция не является
коммутативной>>.

\begin{enumerate}
    \item 
        Если $(\forall 0 \leq i, j < N) \; m_{ij} = m_{ji}$, то ответ "---
        <<Операция является коммутативной>>;
    \item Иначе, ответ "--- <<Операция не является коммутативной>>.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^2)$.

%
\subsection{Проверка на идемпотентность}

\textit{Вход.} Таблица Кэли $M = (m_{ij})$ размерности $N \times N$
для операции $\cdot$ на множестве $A$.

\textit{Выход.} <<Операция является идемпотентной>> или <<Операция не является
идемпотентной>>.

\begin{enumerate}
    \item 
        Если $(\forall 0 \leq i < N) \; m_{ii} = a$, где $a$ "--- $i$-й элемент
        множества $A$, то ответ "--- <<Операция является идемпотентной>>;
    \item Иначе, ответ "--- <<Операция не является идемпотентной>>.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N)$.

%
\subsection{Проверка на обратимость}

\textit{Вход.} Таблица Кэли $M = (m_{ij})$ размерности $N \times N$
для операции $\cdot$ на множестве $A$.

\textit{Выход.} <<Операция является обратимой>> или <<Операция не является
обратимой>>.

\begin{enumerate}
    \item 
        Если $(\forall 0 \leq i, j < N) \; m_{ij} = m_{ji} = 1$, то ответ "---
        <<Операция является обратимой>>;
    \item Иначе, ответ "--- <<Операция не является обратимой>>.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^2)$.

%
\subsection{Проверка на дистрибутивность}

\textit{Вход.} Таблица Кэли $A = (a_{ij})$ размерности $N \times N$
для операции $\cdot$ на множестве $S$, таблица Кэли $B = (b_{ij})$
размерности $N \times N$ для операции $+$ на множестве $S$

\textit{Выход.} <<Операция является дистрибутивной>> или <<Операция не является
дистрибутивной>>.

% \begin{align*}
%     x \cdot (y + z) &= (x \cdot y) + (x \cdot z) \\
%     (y + z) \cdot x &= (y \cdot x) + (z \cdot x)
% \end{align*}

% i - x, j - y, k - z

\begin{enumerate}
    \item
        Если $(\forall 0 \leq i, j, k < N)$ выполняются равенства $a_{it}
        = b_{pq}$ и $a_{ti} = b_{rs}$, где $t$ "--- индекс $b_{jk}$,
        $p$ "--- индекс $a_{ij}$, $q$ "--- индекс $a_{ik}$, $r$ "---
        индекс $a_{ji}$, $s$ "--- индекс $a_{ki}$, то ответ "---
        <<Операция является дистрибутивной>>;
    \item Иначе, ответ "--- <<Операция не является дистрибутивной>>.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^3)$.

\section{Алгоритмы выполнения операций над бинарными отношениями}

%
\subsection{Вычисление объединения бинарных отношений}

\textit{Вход.} Матрица $A(\rho) = (a_{ij})$ бинарного отношения $\rho$
размерности $N \times N$, матрица $B(\sigma) = (b_{ij})$ бинарного отношения
$\sigma$ размерности $N \times N$.

\textit{Выход.} Матрица $C(\rho \cup \sigma) = (c_{ij})$ бинарного отношения
$\rho \cup \sigma$.

\begin{enumerate}
    \item $(\forall 0 \leq i, j < N - 1) \; c_{ij} = a_{ij} \lor b_{ij}$.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^2)$.

%
\subsection{Вычисление пересечения бинарных отношений}

\textit{Вход.} Матрица $A(\rho) = (a_{ij})$ бинарного отношения $\rho$
размерности $N \times N$, матрица $B(\sigma) = (b_{ij})$ бинарного отношения
$\sigma$ размерности $N \times N$.

\textit{Выход.} Матрица $C(\rho \cap \sigma) = (c_{ij})$ бинарного отношения
$\rho \cap \sigma$.

\begin{enumerate}
    \item $(\forall 0 \leq i, j < N - 1) \; c_{ij} = a_{ij} \land b_{ij}$.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^2)$.

%
\subsection{Вычисление дополнения бинарного отношения}

\textit{Вход.} Матрица $M(\rho) = (m_{ij})$ бинарного отношения $\rho$
размерности $N \times N$.

\textit{Выход.} Матрица $M'(M(\rho)) = (m'_{ij})$ дополнения бинарного отношения
$\rho$.

\begin{enumerate}
    \item $(\forall 0 \leq i, j < N - 1) \; m'_{ij} = 1 - m_{ij}$.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^2)$.

%
\subsection{Вычисление обратного бинарного отношения}

\textit{Вход.} Матрица $M(\rho) = (m_{ij})$ бинарного отношения $\rho$
размерности $N \times N$.

\textit{Выход.} Матрица $M'(M(\rho)) = (m'_{ij})$ бинарного отношения
$\rho^{-1}$.

\begin{enumerate}
    \item Ответом является матрица транспонированная матрица $M^T = M'$.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^2)$.

%
\subsection{Вычисление композиции бинарных отношений}

\textit{Вход.} Матрица $A(\rho) = (a_{ij})$ бинарного отношения $\rho$
размерности $N \times N$, матрица $B(\sigma) = (b_{ij})$ бинарного отношения
$\sigma$ размерности $N \times N$.

\textit{Выход.} Матрица $C(\rho\sigma) = (c_{ij})$ бинарного отношения
$\rho\sigma$.

\begin{enumerate}
    \item Ответом является матрица $C = A \cdot B$, вычисленная с помощью
    алгоритма 5.4 Произведения матриц.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^3)$.

\section{Алгоритмы выполнения операций над матрицами}

%
\subsection{Сумма и разность матриц}

\textit{Вход.} Матрица $A = (a_{ij})$ размерности $N \times M$, матрица
$B = (b_{ij})$ размерности $N \times M$.

\textit{Выход.} Матрица $C = (c_{ij})$ размерности $N \times M$.

\begin{enumerate}
    \item 
        $(\forall 0 \leq i < N) (\forall 0 \leq j < M) \;
        c_{ij} = a_{ij} + b_{ij}$ (либо $c_{ij} = a_{ij} - b_{ij}$)
\end{enumerate}

Трудоёмкость алгоритма --- $O(N \cdot M)$.

%
\subsection{Произведение матрицы на скаляр}

\textit{Вход.} Матрица $A = (a_{ij})$ размерности $N \times M$, скаляр $\alpha$.

\textit{Выход.} Матрица $A' = (a'_{ij})$ размерности $N \times M$.

\begin{enumerate}
    \item 
        $(\forall 0 \leq i < N) (\forall 0 \leq j < M) \;
        a'_{ij} = \alpha \cdot a_{ij}$
\end{enumerate}

Трудоёмкость алгоритма --- $O(N \cdot M)$.

%
\subsection{Транспонирование матрицы}

\textit{Вход.} Матрица $A = (a_{ij})$ размерности $N \times M$.

\textit{Выход.} Матрица $A^T = (a^T_{ij})$ размерности $M \times N$.

\begin{enumerate}
    \item $(\forall 0 \leq i < N) (\forall 0 \leq j < M) \; a^T_{ji} = a_{ij}$
\end{enumerate}

Трудоёмкость алгоритма --- $O(N \cdot M)$.

%
\subsection{Произведение матриц}

\textit{Вход.} Матрица $A = (a_{ij})$ размерности $N \times M$, матрица $B =
(b_{ij})$ размерности $M \times K$.

\textit{Выход.} Матрица $C = (c_{ij}) = A \cdot B$ размерности $N \times K$.

\begin{enumerate}
    \item 
        $ \displaystyle
        (\forall 0 \leq i < N) (\forall 0 \leq j < M) \;
        c_{ij} = \sum_{k = 0}^{K - 1} a_{ik} + \sum_{k = 0}^{K - 1} b_{kj}$
\end{enumerate}

Трудоёмкость алгоритма --- $O(N \cdot M \cdot K)$.

%
\subsection{Обращение матрицы}

\textit{Вход.} Матрица $A = (a_{ij})$ размерности $N \times N$.

\textit{Выход.} Матрица $A^{-1} = (a'_{ij})$ размерности $N \times N$.

\begin{enumerate}
    \item Находим определитель матрицы $|A|$;
    \item 
        Находим матрицу $A^T$, вычисленная с помощью алгоритма 5.3
        Транспонирования матриц;
    \item 
        Вычисляем элементы союзной матрицы $A^*$ как алгебраические дополнения
        матрицы $A^T$;
    \item 
        Ответом является матрица $A^{-1} = |A|^{-1} \cdot A^*$, вычисленная с
        помощью алгоритма 5.2 Произведения матрицы на скаляр.
\end{enumerate}

Трудоёмкость алгоритма --- $O(N^3)$.

\section{Программная реализация}

\inputminted[fontsize=\small, breaklines=true, style=bw, linenos]{c}{../lab3.py}

\section{Результаты тестирования}

\begin{figure}[H]
    \centering
    \includegraphics[width=0.8\textwidth]{test1.png}
    \caption{Проверка свойств некоторой бинарной операции}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=0.8\textwidth]{test2.png}
    \caption{Проверка свойства дистрибутивности для двух операций}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=0.8\textwidth]{test3.png}
    \caption{Выполнение основных операций над бинарными отношениями}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=0.8\textwidth]{test4.png}
    \caption{Проверка операции произведения двух матриц}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=0.8\textwidth]{test5.png}
    \caption{Проверка операции транспонирования матрицы}
\end{figure}

\section{Решение задач}

\subsection*{Задание 1}

Необходимо исследовать на ассоциативность бинарную операцию, заданную следующей
таблицей Кэли:
\begin{equation*}
    \begin{bmatrix}
        . & a & b & c & d \\
        a & a & b & a & b \\
        b & a & b & a & b \\
        c & a & b & c & d \\
        d & a & b & c & d \\
    \end{bmatrix}
\end{equation*}

\input{task1.tex}

Можно заметить, что условие ассоциативности $(\forall 0 \leq i, j, k < N)$
выполнено, поэтому можно сделать вывод, что бинарная операция, заданная
данной таблицей Кэли обладает свойство ассоциативности.

\subsection*{Задание 2}

Необходимо вычислить значение выражения
\begin{equation*}
    A^2 + \left( 10 - \frac{\lambda}{2} \right) \cdot A + \frac{\lambda}{2} \cdot E, \,
    \text{где } A = \begin{pmatrix}
        1 & -2 \\
        -3 & \lambda
    \end{pmatrix}, \, \lambda = 6
\end{equation*}

Вычислим значение $A^2 = (m_{ij})$:
\begin{align*}
    m_{11} &= 1 \cdot 1 + (-2) \cdot (-3) = 7 \\
    m_{12} &= 1 \cdot (-2) + (-2) \cdot \lambda = -14 \\
    m_{21} &= (-3) \cdot 1 + 6 \cdot (-3) = -21 \\
    m_{22} &= (-3) \cdot -2 + \lambda \cdot \lambda = 42
\end{align*}

Получаем $A^2 = \begin{pmatrix}
    7 & -14 \\
    -21 & 42
\end{pmatrix}$

$\displaystyle\left( 10 - \frac{\lambda}{2} \right)
= \displaystyle\left( 10 - \frac{6}{2} \right)
= \displaystyle\left( 10 - 3 \right) = 7$, поэтому 
\begin{equation*}
    \left( 10 - \frac{\lambda}{2} \right) \cdot A = 7 \cdot \begin{pmatrix}
        1 & -2 \\
        -3 & \lambda
    \end{pmatrix} = \begin{pmatrix}
        1 \cdot 7 & -2 \cdot 7 \\
        -3 \cdot 7 & \lambda \cdot 7
    \end{pmatrix} = \begin{pmatrix}
        7 & -14 \\
        -21 & 42
    \end{pmatrix}
\end{equation*}

Матрица $E$ "--- единичная матрица, поэтому
\begin{equation*}
    \frac{\lambda}{2} \cdot E = \begin{pmatrix}
        \frac{\lambda}{2} & 0 \\
        0 & \frac{\lambda}{2}
    \end{pmatrix} = \begin{pmatrix}
        3 & 0 \\
        0 & 3
    \end{pmatrix}
\end{equation*}

В результате получаем 
\begin{align*}
    A^2 &+ \left( 10 - \frac{\lambda}{2} \right) \cdot A + \frac{\lambda}{2} \cdot E = \\
    &= \begin{pmatrix}
        7 & -14 \\
        -21 & 42
    \end{pmatrix} + \begin{pmatrix}
        7 & -14 \\
        -21 & 42
    \end{pmatrix} + \begin{pmatrix}
        3 & 0 \\
        0 & 3
    \end{pmatrix} = \\
    &= \begin{pmatrix}
        7 + 7 + 3 & -14 - 14 + 0 \\
        -21 - 21 + 0 & 42 + 42 + 3
    \end{pmatrix} = \begin{pmatrix}
        17 & -28 \\
        -42 & 87
    \end{pmatrix}
\end{align*}

\subsection*{Задание 3}

Необходимо вычислить произведение матриц $A \cdot B$, где
$\lambda = 6$,
\begin{equation*}
    A = \begin{pmatrix}
        -1 & \lambda & 3 \\
        \frac{\lambda}{3} & 2 & 8 - \frac{\lambda}{3}
    \end{pmatrix} = \begin{pmatrix}
        -1 & 6 & 3 \\
        2 & 2 & 6
    \end{pmatrix}
\end{equation*}

\begin{equation*}
    B = \begin{pmatrix}
        -\lambda & 2 \\
        1 & 10 - \frac{\lambda}{2} \\
        -3 & \lambda
    \end{pmatrix} = \begin{pmatrix}
        -6 & 2 \\
        1 & 7 \\
        -3 & 6
    \end{pmatrix}
\end{equation*}

Вычислим произведение $A \cdot B = C = (c_{ij})$:
\begin{align*}
    c_{11} &= (-1) \cdot (-6) + 6 \cdot 1 + 3 \cdot (-3) = 6 + 6 - 9 = 3 \\
    c_{12} &= (-1) \cdot 2 + 6 \cdot 7 + 3 \cdot 6 = -2 + 42 + 18 = 58 \\
    c_{21} &= 2 \cdot (-6) + 2 \cdot 1 + 6 \cdot (-3) = -12 + 2 - 18 = -28 \\
    c_{22} &= 2 \cdot 2 + 2 \cdot 7 + 6 \cdot 6 = 4 + 14 + 36 = 54
\end{align*}

В результате получаем
\begin{equation*}
    A \cdot B = \begin{pmatrix}
        3 & 58 \\
        -28 & 54
    \end{pmatrix}
\end{equation*}

\subsection*{Задание 4}

Необходимо решить матричное уравнение $2 \cdot X + 6 \cdot A = B$, где
$\lambda = 6$,
\begin{equation*}
    A = \begin{pmatrix}
        -1 & \lambda & 3 \\
        -\lambda & 4 & -1 \\
        \frac{\lambda}{3} & 2 & 8 - \frac{\lambda}{3}
    \end{pmatrix} = \begin{pmatrix}
        -1 & 6 & 3 \\
        -6 & 4 & -1 \\
        2 & 2 & 6
    \end{pmatrix}
\end{equation*}

\begin{equation*}
    B = \begin{pmatrix}
        -\lambda & -3 & 2 \\
        1 & \lambda + 1 & 10 - \frac{\lambda}{2} \\
        -3 & 5 & \lambda
    \end{pmatrix} = \begin{pmatrix}
        -6 & -3 & 2 \\
        1 & 7 & 7 \\
        -3 & 5 & 6
    \end{pmatrix}
\end{equation*}

Преобразуем исходное уравнение:
\begin{align*}
    2 \cdot X + 6 \cdot A &= B \\
    2 \cdot X &= B - 6 \cdot A \\
    X &= 0.5 \cdot B - 3 \cdot A   
\end{align*}

Вычислим слагаемые в правой части:
\begin{align*}
    0.5 \cdot B &= 0.5 \cdot \begin{pmatrix}
        -6 & -3 & 2 \\
        1 & 7 & 7 \\
        -3 & 5 & 6
    \end{pmatrix} = \\
    &= \begin{pmatrix}
        -6 \cdot 0.5 & -3 \cdot 0.5 & 2 \cdot 0.5 \\
        1 \cdot 0.5 & 7 \cdot 0.5 & 7 \cdot 0.5 \\
        -3 \cdot 0.5 & 5 \cdot 0.5 & 6 \cdot 0.5
    \end{pmatrix} = \begin{pmatrix}
        -3 & -1.5 & 1 \\
        0.5 & 3.5 & 3.5 \\
        -1.5 & 2.5 & 3
    \end{pmatrix}
\end{align*}

\begin{align*}
    3 \cdot A &= 3 \cdot \begin{pmatrix}
        -1 & 6 & 3 \\
        -6 & 4 & -1 \\
        2 & 2 & 6
    \end{pmatrix} = \\
    &= \begin{pmatrix}
        -1 \cdot 3 & 6 \cdot 3 & 3 \cdot 3 \\
        -6 \cdot 3 & 4 \cdot 3 & -1 \cdot 3 \\
        2 \cdot 3 & 2 \cdot 3 & 6 \cdot 3
    \end{pmatrix} = \begin{pmatrix}
        -3 & 18 & 9 \\
        -18 & 12 & -3 \\
        6 & 6 & 18
    \end{pmatrix}
\end{align*}

В результате получаем:
\begin{align*}
    X &= 0.5 \cdot B - 3 \cdot A = \begin{pmatrix}
        -3 & -1.5 & 1 \\
        0.5 & 3.5 & 3.5 \\
        -1.5 & 2.5 & 3
    \end{pmatrix} + \begin{pmatrix}
        -3 & 18 & 9 \\
        -18 & 12 & -3 \\
        6 & 6 & 18
    \end{pmatrix} = \\
    &= \begin{pmatrix}
        -3 - 3 & -1.5 + 18 & 1 + 9 \\
        0.5 - 18 & 3.5 + 12 & 3.5 - 3 \\
        -1.5 + 6 & 2.5 + 6 & 3 + 18
    \end{pmatrix} = \begin{pmatrix}
        -6 & 16.5 & 10 \\
        -17.5 & 15.5 & 0.5 \\
        4.5 & 8.5 & 21
    \end{pmatrix}
\end{align*}

\conclusion

В ходе выполнения данной лабораторной работы были изучены основные свойства
алгебраических операций, основные операции над бинарными отношениями, основные
операции над матрицами. Были разработаны алгоритмы для программной реализации
данных операций, а также была произведена оценка сложности данных алгоритмов.
Программная реализация на языке Python с библиотекой numpy успешно прошла
тестирование.

\end{document}
