Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Матлогика Пономарев.pdf
Скачиваний:
264
Добавлен:
05.06.2015
Размер:
1.76 Mб
Скачать

12

Математическая логика

то B1=л или B1 = и,

если высказывание «число 6 делится на 1, 2, 3 и представляет сумму делителей 1, 2, 3», то (E12)= и,

если высказывание «если 3 - целое число, то оно вещественное», то (A3A2)=и,

если высказывание «если 3 – простое число, то оно целое», то (A1A3)=и,

если высказывание «3 - простое число, тогда и только тогда, когда оно целое», то (А1А2)=и.

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

Правила вывода новых высказываний, основанные на известных высказываниях и отношениях между ними, представляют исчисление высказываний. В этом случае высказывания, из которых делают вывод новых высказываний, называют посылками, а получаемое новое выска-

зывание – заключением.

1.1.1. Алгебра высказываний

Множество пропозициональных переменных Τ={A, B, C,…} и множество логических операторов и отношений Σ={¬, &, , , , } представляют алгебру высказыва-

1.1. Логика высказываний

13

ний:

Αвыск.=<Τ, Σ, и, л>,

где и, л –значения «истина» или «ложь» для пропозициональных переменных и правильно построенных алгебраических выражений. Символы логических операций: «¬» - отрицание, «&» - конъюнкция, « » - дизъюнкция, «» - импликация, «» - эквивалентность служат для формального описания сложных высказываний, а символ «» - равносильности формирует отношение сравнения двух правильно построенных выражений.

Любая пропозициональная переменная есть элемен-

тарная формула, т. е. Ai =Fi.

Высказывание, которое может быть получено из элементарных высказываний посредством логических операций, называют формулой алгебры логики, т.е. если F1 и F2

– формулы, то ¬F1, ¬F2, (F1&F2), (F1 F2), (F1F2) и (F1F2), (F1F2) - также формулы.

Никаких других формул в логике высказываний нет. Значение формулы полностью определяется значе-

ниями входящих в нее пропозициональных переменных. 1.1.1.1. Логические операции

Логические операции бывают унарными (или одноместными) и бинарными (или двухместными). Если значения операндов принадлежат множеству {и, л}, то и результаты логических операций также принадлежат множеству {и, л}. Исполнение логических операций удобно опи-

сывать таблицами истинности.

Отрицание (¬F) есть одноместная операция, посред-

14 Математическая логика

ством которой ее значение есть отрицание значения операнда.

В программировании для этого используют оператор NOT, т.е. (NOT F). Если F - высказывание, то F также высказывание. Если ¬F есть высказывание, то ¬(¬F) также есть высказывание.

F

 

 

Пример 1.3. Верно ли, что А:=«4 - про-

 

 

F

стое число» или А=и?

и

 

л

л

 

и

«Нет, неверно, что 4 – простое число»,

 

 

 

т.е. ¬А = и .

 

Конъюнкция (F1&F2) есть двухместная операция, по-

средством которой из двух формул F1 и F2 получают новую формулу F, описывающую сложное высказывание. Формула F=(F1&F2) истинна тогда и только тогда, когда истинны значения двух операндов F1 и F2.

F1

F2 F1&F

В программировании для этого исполь-

 

 

2

зуют оператор AND, т.е. (F1_AND_F2).

л

л

л

На естественном языке эта операция опи-

л

и

л

сывается соединительными словами: «... и

и

л

л

…», «... также …», «как ..., так...», «... не-

и

и

и

смотря на …» и др.

Из определения операций конъюнкции и отрицания очевидно, что (FF)=л.

Если даны F1, F2, …, Fn, то формула F=(F1&F2&&Fn)=и тогда и только тогда, когда истинны все формулы F1, F2,…, Fn.

Пример 1.4. Даны высказывания A:=«компьютер содержит основной микропроцессор», B:=«компьютер содержит оперативную память», C:=«компьютер содержит контроллеры», D:=«компьютер содержит порты ввода –

1.1. Логика высказываний

15

вывода».

Тогда формула F=(A&B&C&D) отражает высказывание «компьютер содержит основной микропроцессор, оперативную память, контроллеры и порты ввода-вывода»

[17].

Дизъюнкция (F1 F2) есть двухместная операция, посредством которой из двух формул F1 и F2 получают новую формулу F, описывающую сложное высказывание. Формула F=(F1 F2) ложно тогда и только тогда, когда ложны значения двух операндов F1 или F2.

F

F

F1 F

В программировании для этого исполь-

1

2

2

зуют оператор OR, т.е. (F1_OR_F2).

л

л

л

Из определения операций дизъюнкции и

л

и

и

отрицания, очевидно, что (F¬F)=и.

и

л

и

Если даны F1, F2,…, Fn, то формула

и

и

и

F=(F1 F2 … Fn)=л тогда и только тогда

когда ложны все формулы F1, F2, …, Fn. Следует обратить внимание, что в повседневной речи союз «или» употребляется в двух смыслах: «исключающее или», когда истинность сложного высказывания определяется истинностью только одного высказываний (второе должно быть ложным), и «не исключающее или», когда истинность сложного высказывания определяется истинностью хотя бы одного из них. В математической ло-

гике используют только «не исключающее или». Пример 1.5. Даны высказывания A:= «в компьютере

применяют матричный принтер», B:= «в компьютере применяют струйный принтер», C:= «в компьютере применяют лазерный принтер», D:= «в компьютере применяют литерный принтер».

16

Математическая логика

Тогда формула F=(A B C D) отражает высказывание «в компьютере применяют матричный, струйный, лазерный или литерный принтеры» [17].

Пример 1.6. Даны высказывания A:= «монитор есть машинная программа, которая наблюдает, регулирует, контролирует или проверяет операции в системе обработки данных», B:= «монитор в языках программирования - это высокоуровневый механизм взаимодействия и синхронизации процессов, обеспечивающих доступ к неразделяемым ресурсам», C:= «монитор - это дисплей, используемый для контроля процессов и управления системой».

Тогда формула F=(A B C) отражает высказывание «монитор есть машинная программа, которая наблюдает, регулирует, контролирует или проверяет операции в системе обработки данных или в языках программирования – это высокоуровневый механизм взаимодействия и синхронизации процессов, обеспечивающих доступ к неразделяемым ресурсам или дисплей, используемый для контроля процессов и управления системой» [17].

Импликация (F1F2) есть двуместная операция, посредством которой из двух формул F1 и F2 получают формулу F, описывающую сложное высказывание. Формула F=(F1F2) ложно тогда и только тогда, когда истинно F1 и ложно F2. При этом F1 называют посылкой, а F2

заключением.

В программировании используют оператор

IMPLIES,

т. е. (F1_IMPLIES_F2).

 

 

 

1.1. Логика высказываний

17

 

 

 

На естественном языке эта операция

F

F2

F1F

1

 

2

выражается словами «если ..., то ...»,

л

л

и

«тогда ..., когда ...», «постольку ..., по-

л

и

и

скольку ...», «при наличии ..., следует

и

л

л

...», « из … следует …», «… влечет …»

и

и

и

и т. п. Высказывание,

находящееся

слева от логической связки , назы-

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

или следствием выражениями.

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

Пример 1.7. Даны высказывания A:= «по проводнику протекает электрический ток» и B:= «вокруг проводника есть магнитное поле». Тогда формула F=(AB) отражает высказывание «если по проводнику протекает электрический ток, то вокруг проводника возникает магнитное поле».

Пример 1.8. Пусть даны высказывания A:= «на упругое тело оказывают влияние внешние силы» и B:= «в упругом теле возникают внутренние силы, препятствующие изменению формы». Тогда формула F=(AB) отражает

18

Математическая логика

высказывание «если на упругое тело оказывают влияние внешней силы, то в нем возникают внутренние силы, препятствующие изменению формы».

Эквивалентность (F1F2) есть двухместная операция, посредством которой из двух формул F1 и F2 получают формулу F, описывающую сложное высказывание. Формула F=(F1F2) истинна тогда и только тогда, когда оба операнда F1 и F2 имеют одинаковые значения.

F

F

F1

В программировании для этого исполь-

1

2

F2

зуют оператор IFF, т.е. (F1__IFF_ F2). На

л

л

и

естественном языке эквивалентность вы-

л

 

л

ражается фразами «… эквивалентно …»,

и

л

л

«для того чтобы …, необходимо и доста-

и

и

и

точно, чтобы …», «... лишь при условии

…», «…, если и только если …», и т.п. Пример 1.9. Даны высказывания A:= «быть четным

числом» и B:= «число делится на два». Тогда формула F=(AB) отображает высказывание «для того, чтобы число было четным необходимо и достаточно, чтобы оно делилось на два».

Пример. Даны высказывания A:= «выполнить загрузку в компьютер операционной системы» и B:= «установить в компьютер дискету с записанной операционной системой».

Тогда формула F=(AB) отображает высказывание «для того, чтобы выполнить загрузку операционной системы в компьютер, необходимо и достаточно установить в компьютер дискету с записанной операционной системой».