Добавил:
Rumpelstilzchen2018@yandex.ru Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2-й семестр / Методичка Дзержинский

.pdf
Скачиваний:
226
Добавлен:
25.12.2020
Размер:
1.09 Mб
Скачать

Она обычно выделяется точкой или маленьким кружочком стоящим перед правой частью

Различные нормальныеP→oQ алгоритмы отличаются друг от друга лишь алфавитами и системами допустимых подстановок. Чтобы задать какой-либо нормальный алгоритм достаточно задать алфавит и систему подстановок. Нормальный алгоритм определяет отображение F: A*→A* множеств слов в алфавите А.

Оказалось, что класс функций, вычислимых с помощью нормальных алгоритмов,

совпадает с классом частично-рекурсивных ф.

Пример:

А= 1,*

1) *→/\ 2)1→o1

Определение алгоритма:

Алгоритмом называется точное предписание, определяющее вычислительный процесс, который ведет от варьируемых исходных данных к искомому результату, то есть алгоритм – это совокупность правил, определяющих данный вычислительный процесс.

Анализ известных в математике алгоритмов дал возможность выявить характерные его свойства.

1.Дискретность: Выполнение алгоритма состоит из отдельных шагов. Каждый шаг обязательно завершается.

2.Элементарность шагов. Выполнение каждого шага работы алгоритма должно быть простым и не требовать какой-либо изобретательности от исполнителя.

3.Детерминированность. Результат выполнения каждого шага алгоритма однозначно определяется программой и результатами выполнения предыдущих шагов алгоритма.

4.Направленность: Должно быть указано, что надо считать результатом алгоритма.

5.Массовость: Исходные данные для алгоритма могут выбираться из заранее фиксированных множеств возможных исходных данных. Однако, это множество бесконечно. То есть алгоритм служит для решения целого класса задач.

Машины Тьюринга дают возможность строить формальные алгоритмы. Если существует программа для машины Тьюринга позволяющая решать

21

задачу, то задача называется алгоритмически разрешимой по Тьюрингу.

То есть Тьюрингов подход к ответу на вопрос «Что такое алгоритм?» очень прост «Алгоритм – это машина Тьюринга».

Вычислимость по Тьюрингу частично-рекурсивных функций

Утверждение: Любая частично-рекурсивная функция вычислима по Тьюрингу. И обратно: функция, вычислимая по Тьюрингу, является частичнорекурсивной.

Другими словами, для всякой функции, которую можно каким-либо способом вычислить, можно построить вычисляющую ее машину Тьюринга. Это утверждение, высказанное впервые Тьюрингом, называется тезисом ЧерчаТьюринга.

Какие бы классы алгоритмов до сих пор не строились, во всех случаях оказывается, что числовые функции, вычисляемые посредством этих алгоритмов, были частично-рекурсивными.

Утверждение: класс функций, вычислимых по Маркову, совпадает с классом функций, вычислимых по Тьюрингу, и следовательно, совпадает с классом частично-рекурсивных функций.

Возникает естественный вопрос «Существуют ли алгоритмически неразрешимые по Тьюрингу проблемы?» Имея точное определение вычислимости, удалось доказать, что некоторые проблемы неразрешимы.

Например:

1.Теорема Черча о неразрешимости логики предикатов: Не существует алгоритма, который для любой формулы логики предикатов устанавливает общезначима она или нет.

2.Проблема остановки неразрешима: Не существует никакого общего алгоритма, позволяющего установить, остановится ли некоторая конкретная программа (на любом языке программирования) ,запущенная после введения в нее некоторого конкретного набора данных. Смысл этого утверждения для теоретического программирования очевиден: не существует совершенно общего метода проверки программ на наличие в них бесконечных циклов.

22

Исчисление высказываний

Под высказыванием понимают повествовательное предложение, о котором можно сказать одно из двух – истинно оно или ложно. То есть высказывание – это утверждение, которое может быть только истинно или ложно.

Пусть есть множество высказываний, фраз, принимающих значение «истина» или «ложь». Будем называть их элементарными высказываниями и обозначать прописными буквами латинского алфавита.

Из элементарных высказываний строятся более сложные высказывания с помощью логических связок «не», «и», «или», «то же, что» («эквивалентно»), «из…..следует….» («….влечет…»)

Связки логики высказываний представляют функции алгебры логики: отрицанием высказывания А называется высказывание С ¬А Ᾱ, которое истинно только тогда, когда А ложно. Конъюнкцией высказывай А и В называется высказывание С, которое истинно только тогда, когда А и В истинны С=А/\В. Дизъюнкцией высказываний А и В называется высказывание С, которое ложно тогда и только тогда, когда оба высказывания ложны С=АVB. Импликацией высказываний А и В называется высказывание С, которое ложно тогда и только тогда, когда А истинно, а В ложно С=А→В.

Эквиваленцией высказываний А и В называется высказывание С, которое истинно только тогда, когда значения высказываний А и В совпадают. С=А~В (А=А↔В).

С помощью связок можно получить составные высказывания, которым соответствует формула.

Такие высказывания будем называть сложными. Каждое сложное высказывание, как и элементарное, принимает значение «истина» или «ложь», („И“, „/\“), („T’’. „F’’), („t”, „f’’).

Определение формулы:

1.Всякое элементарное высказывание является формулой

2.Если А и В формулы, то Ā, (A \/ B),(A /\ B ),(A→B)(A↔B)

тоже формулы

3.Формулы получаются с помощью правил 1. И 2.

23

Определение: Две формулы назовем равносильными, если для любых наборов значениях переменных они принимают одинаковые значения.

Определение: Сложное высказывание (формула) называется общезначимым, тождественно-истинным или тавтологией, если оно истинно при любых наборах значений переменных (элементарных высказываний).

Так как множество высказываний с операциями (/\, \/, -) является булевой алгеброй, то то, что было изложено в курсе «Основы дискретной математики» для булевой алгебры булевых векторов будет справедливо и для булевой алгебры высказываний (это изоморфизм булевых алгебр).

Определение: Пусть S – множество высказываний S= H1, H2, …Hn , высказывание А есть логическое следствие высказываний H1,…,Hn (или называется логическим следствием из S). Если всякий раз, когда все Hi равны «…Истина» («Т») («И»), значение А также равно «Т».

Семантические таблицы

Для проверки того является ли высказывание тавтологией или противоречием метод таблиц истинности удобен при небольшом количестве атомов (переменных) , однако при числе атомов u=10 таблица истинности будет содержать 210=1024 строк, поэтому существует более совершенные и экономичные методы.

При помощи семантических таблиц Бета можно определить значения, которые принимают данные высказывания ложь или истина.

Пусть «а» высказывание. Обозначим через fa – утверждение „a- ложно“, через ta – утверждение „a-истинно“. fa и ta называются помеченными формулами.

Вершинами семантической таблицы называются все помеченные формулы, встречающиеся в этой таблице.

Элементарные семантические таблицы.

24

Атомарные семантические таблицы.

Таблица 6

1a)

1б)

2a)

 

2б)

 

 

tA

fA

t( a1 ʌ a2 )

ƒ( a1 ʌ a2 )

 

 

 

|

 

|

 

 

 

 

ta1

 

ƒa1

or ƒa2

 

 

 

|

 

 

 

 

 

 

ta2

 

 

 

 

3a)

3б)

4a)

 

3б)

 

 

t(¬a)

ƒ(¬a)

t( a1 ʌ а2 )

ƒ( a1 ʌ a2 )

 

|

|

|

 

|

 

 

ƒ(a)

t(a)

ta1 or ta2

ƒa1

 

 

 

 

 

|

 

 

 

 

 

 

ƒa2

 

 

 

 

 

 

 

 

5а)

5б)

6а)

 

6б)

 

 

t( a1 → a2 )

ƒ( a1 → a2 )

t( a1 ↔ a2 )

 

ƒ( a1 ↔ a2 )

|

|

|

 

 

|

 

ƒa1 or ta2

ta1

ta1

or ƒa1

 

ta1 or

ƒa1

 

|

|

|

|

|

 

 

ƒa2

ta2

ƒa2

 

ƒa2

ta2

 

 

 

 

 

 

 

Обозначение:

Для любого высказывания а:

fa (высказывание а ложно) и

ta (высказывание а истинно)

называются помеченными вершинами.

Определение:

Вершинами семантической таблицы называются все помеченные формулы, содержащиеся в этой таблице.

25

Определение:

Вершина семантической таблицы называется особой, если она встречается как корень в некоторой атомарной семантической таблице.

Иначе – вершина называется обычной.

Определение:

Ветвь семантической таблицы называется противоречивой, если для некоторого высказывания а помеченные вершины ta и fa содержатся в данной ветви.

Определение:

Семантическая таблица называется замкнутой, если каждая ее непротиворечивая ветвь не содержит обычных вершин.

Семантическую таблицу называют противоречивой, если все ее ветви противоречивы.

Индуктивное определение семантической таблицы

Построим семантическую таблицу высказывания следующим образом:

Шаг 1 Поместить помеченную формулу tk ( fk ) в корень таблицы

Далее по индукции.

Шаг n. Пусть построена семантическая таблица Tn

Шаг n+1. Расширить таблицу Tn до Тn+1 ,при этом использовать некоторую вершину таблицы Tn ,которая в дальнейшем использоваться не будет. Из всех обычных вершин Tn , ближайших к корню ,выбрать самую левую, и обозначить ее за х . К концу каждой непротиворечивой ветви присоединить атомарную таблицу, имеющую корнем х.

При этом х становится особой вершиной . В результате получается таблица Tn+1 .

Построение заканчивается ,когда все непротиворечивые ветви не содержат обычных вершин.

Пример: Закон Пирса

(((А→ B)→ A)→ A) ƒ(((А→ B)→ A)→ A)

|

26

ƒ((А→ B)→ A)

|

ƒ(A)

|

t(А) or ƒ(A→B)

| |

t(А)

|

ƒ(B)

|

Вывод: закон Пирса - тавтология. t(((А→ B)→ A)→ A)

|

ƒ((А→ B)→ A) or tA

|

t(А→ B)

|

t( А)

|

ƒА

|

ƒА or tB

Противоречивых ветвей нет. Значит закон Пирса-тавтология.

Определение:

Доказательством или выводом по Бету высказывания k называется противоречивая семантическая таблица ,в корне которой помещена ƒk.

Определение:

Замкнутая противоречивая семантическая таблица, имеющая в качестве корня tk. Называется опровержением по Бету высказывания k .

Определение:

Говорят ,что высказывание доказуемо по Бету ,если существует доказательство по Бету.

Обозначение:

27

| b K K доказуемо по Бету

| b (((А→ B)→ A)→ A)

Пример 1:

K=(А ʌ А)ᴠ(B v (C ʌ D))

Определим условие истинности K.

t((А ʌ А)ᴠ(B v(C ʌ D)))

 

 

|

t(А ʌ

А)

or t(B v (C ʌ D))

|

 

|

tA

tB or t(C ʌ D)

|

 

|

t(

А)

t(C)

|

 

|

ƒ(А)

t(D)

|

 

 

Высказывание k истинно при истинном означивании V.

V1 (B)=t, V2(C)=t, V2(D)=t.

V1(А)=tǁƒ

V1(C)=tǁƒ

V1(B)=tǁƒ

Аксиоматическая система вывода

Логика высказываний ,подобно другим математическим системам может быть представлена как аксиоматическая система с логическими аксиомами и правилами вывода. Аксиомы – это некоторые тавтологии ,правило вывода R выводит высказывание σ из последовательности высказываний σ1, σ2,… σn

Определение: каждое высказывание следующего вида является аксиомой

1.ϕ→(τ→ϕ)

2.(ϕ→(τ→σ))→((ϕ→τ)→(ϕ→σ))

28

3.(ɿϕ→ɿτ)→(τ→ϕ)

Высказывания ϕ, τ, σ могут быть произвольными. Все эти аксиомы являются тавтологиями.

Определение: Правило вывода Modus Ponens(Правило заключения) утверждает, что высказывания τ выводится из высказываний ϕ и ϕ→τ

ϕ

ϕ,ϕ→τ | τ

ϕ и ϕ→τ называются гипотезами, а τ -заключением

Новые высказывания получаются при помощи этих трех аксиом и “правила заключения” !

Пример: как можно применить аксиомы и правило вывода для вывода формулы логики высказывания

A→A

Сначала возьмем первую аксиому и вместо ϕ ставим А; вместо τ = B→A получим А→((В→А)→А)

Вторую аксиому запишем ,заменив в ней ϕ на А , τ на (В→А) ;

σ на А (А→((В→А)→А))→((А→(В→А))→(А→А))

из этих двух высказываний по правилу вывода получаем

(А→(В→А))→(А→А)

Используя вновь первую аксиому в виде

А→(В→А) по правилу вывода выводим высказывание А→А.

Следовательно высказывание А→А выводимо в нашей аксиоматической системе.

Следующая теорема позволяет производить в высказываниях замену одних подформул на другие, логически им эквивалентные .

Теорема (о подстановке эквивалентных формул)

Пусть высказывание σ↔ σ1 выводимо в логике высказываний , σ – подформул высказывания ϕ, и высказывание ϕ1 получено в результате подстановки в высказывание ϕ вместо некоторых вхождений формулы σ эквивалентной ей формулы σ1. Тогда высказывание ϕ↔ϕ1 , также выводимо в

29

логике высказываний. Формально это записывается так : | σ↔ σ1 <=> | ϕ↔ ϕ1

Дадим формальное определение доказательства высказывания аксиоматическим методом .

Пусть S – множество высказываний.

Доказательством или выводом из S называется такая конечная последовательность высказываний σ12,….., σn , что для каждого I 1 ≤ I ≤ n верно:

а) σi принадлежит S или б) σi – аксиома или

в) σi получено из σj и σk где 1 ≤ j, k≤ j

по правилу заключения

Высказывание σ называется: доказуемым или выводимым из множества высказываний S, если существует такое доказательство σ1, σ2,… σn из S,что σn совпадает с σ. Для обозначения выводимости высказывания σ из множества высказывания S будем использовать запись S | σ .

Высказывание σ называется доказуемым или выводимым ,если | σ ,то есть σ выводимо в аксиоматической системе при помощи правила заключения из аксиом.

Отметим ,что если S пустое множество ,то понятия выводимого из множества S высказывания совпадает с понятием выводимого высказывания

.Заметим что если σ выводимо из бесконечного множества S ,то σ выводимо из некоторого конечного подмножества ,так как доказательство всегда конечно . Следующая Теорема является основной в теории доказательств

Теорема дедукции .

Пусть S - множество высказываний .

K, L – высказывания .Тогда S ᴜ { k } | L <=> S | (K→L)

На эту теорему мы в дальнейшем будем часто ссылаться . Отметим , что :Если высказывания σ и (σ→τ) доказуемы по Бету то σ и (σ→τ) логически истинны ,следовательно , τ также логически истинно и доказуемо по Бету . Каждая тавтология может быть доказана из аксиом последовательным применением правила заключения. Наши аксиомы будучи логическими истинными высказываниями , доказуемомы по Бету. Используя правило вывода мы из логически истинных высказываний получаем также логически истинные

30

Соседние файлы в папке 2-й семестр