New version with improved title page
This commit is contained in:
BIN
img/.DS_Store
vendored
Normal file
BIN
img/.DS_Store
vendored
Normal file
Binary file not shown.
BIN
img/msu-eps-converted-to.pdf
Normal file
BIN
img/msu-eps-converted-to.pdf
Normal file
Binary file not shown.
BIN
img/msu.eps
Normal file
BIN
img/msu.eps
Normal file
Binary file not shown.
17219
img/msu_new.eps
Normal file
17219
img/msu_new.eps
Normal file
File diff suppressed because it is too large
Load Diff
BIN
img/msu_new.png
Normal file
BIN
img/msu_new.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 84 KiB |
87
text.tex
87
text.tex
@@ -1,4 +1,4 @@
|
|||||||
\documentclass[11pt,a4paper]{scrartcl}
|
\documentclass[12pt,a4paper,bibliography=totoc]{scrartcl}
|
||||||
\usepackage[affil-it]{authblk} % для указания ВУЗа
|
\usepackage[affil-it]{authblk} % для указания ВУЗа
|
||||||
\usepackage{fontspec}
|
\usepackage{fontspec}
|
||||||
\usepackage{minted} % для включения исходников
|
\usepackage{minted} % для включения исходников
|
||||||
@@ -10,7 +10,7 @@
|
|||||||
\setsansfont{CMU Sans Serif}
|
\setsansfont{CMU Sans Serif}
|
||||||
\setmainfont{CMU Serif}
|
\setmainfont{CMU Serif}
|
||||||
\setmonofont{Ubuntu Mono}
|
\setmonofont{Ubuntu Mono}
|
||||||
\newfontfamily{\cyrillicfonttt}{Ubuntu Mono}
|
\newfontfamily{\cyrillicfonttt}{Iosevka}
|
||||||
|
|
||||||
\defaultfontfeatures{Scale=MatchLowercase,Mapping=tex-text}
|
\defaultfontfeatures{Scale=MatchLowercase,Mapping=tex-text}
|
||||||
\usepackage{polyglossia}
|
\usepackage{polyglossia}
|
||||||
@@ -37,19 +37,68 @@
|
|||||||
\affil{ } % хак, чтобы не печатать ВУЗ дважды
|
\affil{ } % хак, чтобы не печатать ВУЗ дважды
|
||||||
|
|
||||||
\date{Москва, 2018}
|
\date{Москва, 2018}
|
||||||
\title{Нахождение минимальных клонов трёхзначных и четырёзначных логик}
|
\title{Нахождение минимальных клонов двухзначных и трёхзначных логик}
|
||||||
\addto\captionsrussian{\def\refname{Список используемых источников}}
|
\addto\captionsrussian{\def\refname{Список используемых источников}}
|
||||||
|
|
||||||
\makeindex
|
\makeindex
|
||||||
\begin{document}
|
\begin{document}
|
||||||
\maketitle
|
\thispagestyle{empty}
|
||||||
|
|
||||||
|
\begin{center}
|
||||||
|
\vspace{-3cm}
|
||||||
|
\includegraphics[width=0.5\textwidth]{img/msu_new.eps}\\
|
||||||
|
{Московский государственный университет имени М.В.~Ломоносова}\\
|
||||||
|
Факультет вычислительной математики и кибернетики\\
|
||||||
|
Кафедра математической кибернетики
|
||||||
|
|
||||||
|
\vspace{5cm}
|
||||||
|
|
||||||
|
{\Large Лобанов~Алексей~Андреевич}
|
||||||
|
|
||||||
|
\vspace{1cm}
|
||||||
|
|
||||||
|
{\Large\bfseries
|
||||||
|
Нахождение минимальных клонов двухзначных и трёхзначных логик\\}
|
||||||
|
|
||||||
|
\vspace{1cm}
|
||||||
|
|
||||||
|
{\large КУРСОВАЯ РАБОТА}
|
||||||
|
\end{center}
|
||||||
|
\vfill
|
||||||
|
\begin{flushright}
|
||||||
|
\textbf{Научный руководитель:}\\
|
||||||
|
доцент, д.ф.-м.н. \\
|
||||||
|
С.Н.~Селезнёва
|
||||||
|
\end{flushright}
|
||||||
|
\vfill
|
||||||
|
\begin{center}
|
||||||
|
Москва, 2018
|
||||||
|
\end{center}
|
||||||
|
\enlargethispage{4\baselineskip}
|
||||||
\newpage
|
\newpage
|
||||||
|
%\maketitle
|
||||||
|
%\newpage
|
||||||
|
|
||||||
|
\tableofcontents
|
||||||
|
|
||||||
|
\newpage
|
||||||
\section{Введение}
|
\section{Введение}
|
||||||
По данной теме, для случая трёхзначной логики уже есть результаты \cite{csakany} и \cite{machida}. Для случая четырёхзначной логики есть работа \cite{scholzel}, однако в данной курсовой работе проверяются только два условия:
|
В данной работе рассматривается задача построения всех минимальных замкнутых классов в трёхзначных и четырёхзначных логиках.
|
||||||
отсутствие функции большинства и полупроекции.
|
Ранее, в работе \cite{csakany} уже получены все такие классы для случая трёхзначной логики,
|
||||||
|
а в \cite{machida} эти функции записаны в форме полиномов над $\mathbb{E}^3$.
|
||||||
|
В \cite{scholzel} было указано сколько таких классов для случая четырёхзначной логики.
|
||||||
|
|
||||||
|
Эта задача интересна тем, что сложность проверки выполнимости системы ограничений например в коньюктивных запросов к БД зависит только от того, какие функции сохраняют все отношения этой системы
|
||||||
|
|
||||||
|
Например,
|
||||||
|
|
||||||
|
|
||||||
|
\newpage
|
||||||
\section{Постановка задачи}
|
\section{Постановка задачи}
|
||||||
|
\subsection{Основные определения}
|
||||||
|
Все определения: функция, формула, замкнутый класс, идемпотентная функция, функция большинства, полупроекция
|
||||||
|
|
||||||
|
\subsection{Формулировка задач}
|
||||||
В рамках данной курсовой работы рассматриваются следующие задачи:
|
В рамках данной курсовой работы рассматриваются следующие задачи:
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
\item Написать программу,
|
\item Написать программу,
|
||||||
@@ -63,11 +112,14 @@ $f$ трёхзначной логики.
|
|||||||
\item Написать программу,
|
\item Написать программу,
|
||||||
которая строит все клоны,
|
которая строит все клоны,
|
||||||
порождаемые какой-то идемпотентной двухместной функцией
|
порождаемые какой-то идемпотентной двухместной функцией
|
||||||
$f$ четырехзначной логики, не содержащие функций большинства и полупроекций. Получить экспериментальный результат
|
$f$ четырехзначной логики,
|
||||||
|
не содержащие функций большинства и полупроекций.
|
||||||
|
Получить экспериментальный результат
|
||||||
в виде списка функций двух переменных,
|
в виде списка функций двух переменных,
|
||||||
содержащихся в каждом таком клоне.
|
содержащихся в каждом таком клоне.
|
||||||
\end{enumerate}
|
\end{enumerate}
|
||||||
|
|
||||||
|
\newpage
|
||||||
\section{Основная часть}
|
\section{Основная часть}
|
||||||
Введём некоторые обозначения:
|
Введём некоторые обозначения:
|
||||||
$I_k^2$ -- все идемпотентные функции k-значной логики,
|
$I_k^2$ -- все идемпотентные функции k-значной логики,
|
||||||
@@ -81,6 +133,9 @@ $f_k^x$, $f_k^y$ -- функции k-значной логики, тождест
|
|||||||
Любая функция из $I_k^2$, кроме, быть может, $f_k^x$ и $f_k^y$ встречается не более, чем в одном минимальном классе
|
Любая функция из $I_k^2$, кроме, быть может, $f_k^x$ и $f_k^y$ встречается не более, чем в одном минимальном классе
|
||||||
\end{stm}
|
\end{stm}
|
||||||
|
|
||||||
|
Если условия 1 2 4, то задача проверки выполнимости ограничений полиномиальна, например коньюктивные запросы к БД, если просто 5, то NP полна, а если 3, то непонятно.
|
||||||
|
|
||||||
|
|
||||||
Алгоритм представим в виде трёх частей:
|
Алгоритм представим в виде трёх частей:
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
\item \textbf{Генерация функций для перебора} В этой части мы должны оставить для рассмотрения только те функции $f\left( x, y\right)$ из $I_k^2$, которые удовлетворяют следующим свойствам:
|
\item \textbf{Генерация функций для перебора} В этой части мы должны оставить для рассмотрения только те функции $f\left( x, y\right)$ из $I_k^2$, которые удовлетворяют следующим свойствам:
|
||||||
@@ -190,6 +245,7 @@ $f_k^x$, $f_k^y$ -- функции k-значной логики, тождест
|
|||||||
\end{algorithm}
|
\end{algorithm}
|
||||||
Для реализации полученных алгоритмов для выполнения на ЭВМ был выбран язык программирования C++14.
|
Для реализации полученных алгоритмов для выполнения на ЭВМ был выбран язык программирования C++14.
|
||||||
|
|
||||||
|
\newpage
|
||||||
\section{Полученные результаты}
|
\section{Полученные результаты}
|
||||||
С помощью написанных программ для ЭВМ на языке программирования C++14 удалось получить решения поставленных задач.
|
С помощью написанных программ для ЭВМ на языке программирования C++14 удалось получить решения поставленных задач.
|
||||||
|
|
||||||
@@ -215,7 +271,16 @@ $$
|
|||||||
|
|
||||||
Для случая четырёхзначной логики таких функций 2279.
|
Для случая четырёхзначной логики таких функций 2279.
|
||||||
|
|
||||||
\section*{Приложение. Исходный код программы на C++14}
|
\newpage
|
||||||
|
\begin{thebibliography}{}
|
||||||
|
\bibitem{csakany} B.Csakany -- All minimal clones on three-element set
|
||||||
|
\bibitem{machida} Hajime Machida, Michael Pinsker -- Polynomials as Generators of Minimal Clones
|
||||||
|
\bibitem{scholzel} Karsten Schölzel -- The minimal clones generated by semiprojections on a four-element set
|
||||||
|
\end{thebibliography}
|
||||||
|
|
||||||
|
\newpage
|
||||||
|
\section*{Приложение АА. Исходный код программы на C++14}
|
||||||
|
\addcontentsline{toc}{section}{Приложение А. Исходный код программы на C++14}
|
||||||
\subsection*{main.cpp}
|
\subsection*{main.cpp}
|
||||||
\inputminted{C++}{main.cpp}
|
\inputminted{C++}{main.cpp}
|
||||||
\subsection*{al\_utility.hpp}
|
\subsection*{al\_utility.hpp}
|
||||||
@@ -225,10 +290,4 @@ $$
|
|||||||
\subsection*{finite\_function.hpp}
|
\subsection*{finite\_function.hpp}
|
||||||
\inputminted{C++}{finite_function.hpp}
|
\inputminted{C++}{finite_function.hpp}
|
||||||
|
|
||||||
\begin{thebibliography}{}
|
|
||||||
\bibitem{csakany} B.Csakany -- All minimal clones on three-element set
|
|
||||||
\bibitem{machida} Hajime Machida, Michael Pinsker -- Polynomials as Generators of Minimal Clones
|
|
||||||
\bibitem{scholzel} Karsten Schölzel -- The minimal clones generated by semiprojections on a four-element set
|
|
||||||
\end{thebibliography}
|
|
||||||
|
|
||||||
\end{document}
|
\end{document}
|
||||||
Reference in New Issue
Block a user