Вход

Оценка времени проверки булевой функции на линейность на машине Тьюринга

Рекомендуемая категория для самостоятельной подготовки:
Курсовая работа*
Код 591499
Дата создания 2015
Страниц 34
Мы сможем обработать ваш заказ (!) 17 сентября в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
1 600руб.
КУПИТЬ

Содержание

Введение 3
Теоретическая часть 6
1. Булевы функции 6
2. Машина Тьюринга 8
Практическая часть 10
1. Разработка алгоритма 10
2. Реализация алгоритма на машине Тьюринга 13
3. Тестирование и определение параметров работы программы 25
Заключение 28
Список использованной литературы 29


Введение

Логика образует такой пласт общечеловеческой культуры, без освоения которого в настоящее время не может состояться ни одна мыслящая личность. Основы логической культуры закладываются в школе и в первую очередь на уроках математики, ибо, как точно подметил еще Л.Н. Толстой, «математика имеет задачей не обучение исчислению, но обучение приемам человеческой мысли при исчислении».
Математическая логика – вершина развития логики, достигнутая ею в XX в. Органично соединив в себе традиционную логику, восходящую к Аристотелю, и методы современной математики, она получила глубокие результаты, которые легли в основу проектирования и создания электронно-вычислительных машин и программного обеспечения к ним, нашли широчайшее применение в областях информатики и систем искусственного интеллекта.
Теория булевых функций, возникшая из алгебры логики, лежит в фундаменте современной дискретной математики. Наряду с булевыми предикатами булевы функции являют собой самые простые объекты дискретной природы. Язык булевых функций хорошо приспособлен для описания подразделения целого на части и взаимосвязи этих частей. Поэтому он широко используется в самых разнообразных областях человеческого знания: будь то собственно математика или кибернетика (теория множеств и математическая логика, алгебра, теория графов и комбинаторика, теория информации, теория формальных языков и языков программирования, синтез управляющих систем и распознавание образов и т.д.), техника (анализ и построение различных устройств коммутации, управления и переработки информации, включая современные ЭВМ, тестирование сложных систем и построение надежных схем из ненадежных элементов), экономика, биология или социология. Список областей, где могут применяться и с успехом применяются результаты и методы теории булевых функций, нетрудно продолжить и далее.
В вопросах приложений булевых функций наиболее часто встречаются две основные задачи: можно ли выразить заданную функцию или заданный класс функций булевыми функциями из имеющегося запаса булевых функций, и если это возможно, то каким образом и с какой сложностью? Это в свою очередь приводит к задаче описания замкнутых классов булевых функций и проверки функции на принадлежность к заданному классу.
Теория автоматов – раздел дискретной математики, изучающий абстрактные автоматы – вычислительные машины, представленные в виде математических моделей – и задачи, которые они могут решать. В 30-е гг. XX в., задолго до появления компьютеров, Алан Тьюринг исследовал абстрактную машину, которая, по крайней мере в области вычислений, обладала всеми возможностями современных вычислительных машин. Целью Тьюринга было точно описать границу между тем, что вычислительная машина может делать, и тем, чего она не может. Полученные им результаты применимы не только к абстрактным машинам Тьюринга, но и к реальным современным компьютерам.
Затем, в 60–70-х гг. Стивен Кук развил результаты Тьюринга о вычислимости и невычислимости. Ему удалось разделить задачи на те, которые могут быть эффективно решены вычислительной машиной, и те, которые, в принципе, могут быть решены, но требуют для этого так много машинного времени, что компьютер оказывается практически бесполезным для решения почти всех экземпляров задачи, за исключением небольшого числа. Задачи последнего класса называют «трудно разрешимыми» или «NP-трудными». Даже при экспоненциальном росте быстродействия вычислительных машин («закон Мура») весьма маловероятно, что нам удастся достигнуть значительных успехов в решении задач этого класса на классических компьютерах.
Моделирование алгоритмов на машине Тьюринга помогает нам уяснить принципиальные возможности программного обеспечения. В частности, теория сложности вычислений позволяет определить, можем ли мы решить ту или иную задачу «в лоб» и написать соответствующую программу для ее решения (если эта задача не принадлежит классу «трудно разрешимых»), или же нам следует искать решение данной трудно разрешимой задачи в обход, используя приближенный, эвристический, или какой-либо другой метод, с помощью которого удастся ограничить время, затрачиваемое программой на ее решение.
Оценка времени проверки булевой функции на линейность на машине Тьюринга является примером одной из таких задач, имеющих как практическую, так и теоретическую ценность.
В данной работе будет рассмотрен класс линейных булевых функций и задача проверки произвольной булевой функции, заданной своим вектором значений, на принадлежность к этому классу c помощью машины Тьюринга.

Фрагмент работы для ознакомления

В данной работе дан краткий исторический обзор развития таких имеющих важное прикладное и теоретическое значение математических дисциплин как логика, математическая логика, теория булевых функций, дискретная математика, теория автоматов.
В теоретической части рассмотрены понятие булевой функции, способы задания булевой функции, понятие линейности булевой функции, полином Жегалкина, алгебраическая нормальная форма, описаны способы задания машины Тьюринга.
В практической части рассмотрен метод треугольника Паскаля построения полинома Жегалкина для заданной своим вектором значений булевой функции. Разработан алгоритм проверки произвольной булевой функции, заданной своим вектором значений, на принадлежность к классу линейных булевых функций. Построена программа машины Тьюринга, реализующая этот алгоритм.
Для написания и отладки программ для машины Тьюринга использовались эмуляторы «Тренажер для изучения универсального исполнителя Машина Тьюринга» Константина Полякова и «Эмулятор Машины Тьюринга» Максима Куприянова, позволяющий автоматически подсчитывать число шагов исполняющейся программы машины Тьюринга.
Результаты тестирования показывают, что программа дает верные результаты для всех нульарных, унарных и бинарных булевых функций.
На основании проведенных исследований сделан вывод о том, что зависимость числа шагов программы машины Тьюринга, определяющей принадлежность заданной вектором своих значений булевой функции к классу линейных функций, имеет показательную зависимость от числа переменных n и квадратичную зависимость от длины вектора 2n булевой функции.

Список литературы

1. Игошин В.И. Математическая логика и теория алгоритмов: учеб. пособие для студ. высш. учеб. заведений / В.И. Игошин. – М.: Издательский центр «Академия», 2008. – 448 с.
2. Карпов Ю.Г. Теория автоматов / Ю.Г. Карпов. – СПб.: Питер, 2003. – 208 с.
3. Куприянов М. Эмулятор Машины Тьюринга [Электронный ресурс] / М. Куприянов. – Режим доступа: https://kouprianov.com/2011/11/turing-machine-emulator/
4. Марченков С.С. Замкнутые классы булевых функций / С.С. Марченков. – М.: ФИЗМАТЛИТ, 2000. – 128 с.
5. Пильщиков В.Н. Машина Тьюринга и алгоритмы Маркова. Решение задач / В.Н. Пильщиков, В.Г. Абрамов, А.А. Вылиток, И.В. Горячая. – М.: МГУ, 2006. – 47 с.
6. Поляков К.Ю. Тренажер для изучения универсального исполнителя «Машина Тьюринга» [Электронный ресурс] / К.Ю. Поляков. – Режим доступа: http://kpolyakov.spb.ru/prog/turing.htm
7. Яблонский С.В. Введение в дискретную математику: Учеб. пособие для вузов / С.В. Яблонский. – М.: Наука, 1986. – 384 с.

Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00446
© Рефератбанк, 2002 - 2024