Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SB_13.doc
Скачиваний:
8
Добавлен:
11.05.2015
Размер:
962.05 Кб
Скачать
  1. Основы логики

Математическая логика – од­на из базовых математических дисциплин информатики. Элементар­ными объектами в логике являются высказывания, например: «Луна – спутник Земли», «6 < 3», «6 > 3». Значением (величиной) конкретного высказывания может быть истина или ложь. Приве­денные примеры высказываний являются константами, их значения неизменны.

Высказывание может зависеть от чего-либо, тогда его значение ино­гда может быть истинным, а иногда – ложным, например: «Сегодня солнечная погода», «x >7». Первое высказывание зависит от погоды в момент его чтения, а второе – от текущего значения переменной x.

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

Название операции

Альтернативные названия

Знаки

Примеры

Конъюнкция

Логическое умножение,

Логическое И

Λ & and

A Λ B

A & B

A and B

Дизъюнкция

Логическое сложение,

Логическое ИЛИ

V | or

A V B

A | B

A or B

Отрицание

Инверсия

¬

not

¬A

not A

Следование

Импликация

A →B

Эквивалентность

Тождество

A ≡ B

Исключающее ИЛИ

xor

A B

A xor B

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

Таблицы истинности для указанных логических операций:

A

B

A Λ B

A V B

¬A

A →B

A ≡ B

A B

0

0

0

0

1

1

1

0

0

1

0

1

1

1

0

1

1

0

0

1

0

0

0

1

1

1

1

1

0

1

1

0

Три операции – конъюнкция, дизъюнкция и отрицание – являются базовыми. Все остальные операции могут быть выражены через базовые. Например,

исключающее ИЛИ: = (b) Λ (¬V ¬b);

следование: → b  = (¬b);

эквивалентность: (≡ b) = ( Λ b) V (¬Λ ¬b).

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

1. Выражения с константами:

0 V A = A, 1 V = 1, 0 Λ = 0, 1 Λ A = A.

2. Выражения с одной переменной:

A = A, Λ A = A, V ¬ A = 1, Λ ¬ A = 0.

3. Выражения со скобками и одинаковыми операциями (ассоциативность):

(Λ B) Λ Λ (B Λ C), (B) V V (C).

4. Выражения со скобками и разными операциями (дистрибутивность):

Λ (C) = (Λ B) V (Λ C), V (Λ C) = (B) Λ (C).

5. Перестановка операндов в выражениях (коммутативность):

Λ Λ A, A.

6. Выражения с операцией отрицания (законы де Моргана):

¬(Λ B) = ¬V ¬B, ¬(B) = ¬Λ ¬B.

7. Двойное отрицание (закон отрицания отрицания):

¬¬A = ¬(¬A) = A.

A3 (2 мин)

Дан фрагмент таблицы истинности выражения F:

x1

x2

x3

x4

x5

x6

x7

F

1

1

0

1

1

1

1

0

1

0

1

0

1

1

0

0

0

1

0

1

1

0

0

1

Каким из приведенных ниже выражений может быть F?

1) ¬x1 /\ x2 /\ ¬x3 /\ x4 /\ x5 /\ ¬x6 /\ ¬x7

2) ¬x1 \/ x2 \/ ¬x3 \/ x4 \/ ¬x5 \/ ¬x6 \/ x7

3) x1 /\ ¬x2 /\ x3 /\ ¬x4 /\ x5 /\ x6 /\ ¬x7

4) x1 \/ ¬x2 \/ x3 \/ ¬x4 \/ ¬x5 \/ x6 \/ ¬x7

РЕШЕНИЕ

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

Ответ 1): выражение будет истинным, если истинны x2, x4 и x5, а остальные операнды – ложны. Во всех остальных случаях выражение будет ложным. Это соответствует каждой строке таблицы истинности.

Ответ 3): выражение будет истинным, если истинны x1, x3, x5 и x6, а остальные операнды – ложны. Это не соответствует последней строке таблицы.

Ответ 2): выражение будет ложным, если ложны x2, x4 и x7, а остальные операнды – истинны. Это не соответствует первой строке таблицы.

Ответ 4): выражение будет ложным, если ложны x1, x3 и x6, а остальные операнды – истинны. Это не соответствует второй строке таблицы.

Ответ: 1.

A10 (2 мин)

На числовой прямой даны два отрезка: P = [2, 10] и Q = [6, 14].

Выберите такой отрезок A, что формула

( (x А) → (x P) ) \/ (x Q)

тождественно истинна, то есть принимает значение 1 при любом значении

переменной х.

1) [0, 3]

2) [3, 11]

3) [11, 15]

4) [15, 17]

РЕШЕНИЕ

Введем обозначения: XA = (x А); XP = (x P); XQ = (x Q). Тогда высказывание примет вид ((XA → XP)) \/ XQ. Составим таблицу истинности для высказывания:

XA

XP

XA → XP

XQ

0

0

1

0

1

0

0

1

1

1

0

1

1

0

1

0

1

1

1

1

1

0

0

0

0

1

0

0

1

1

1

1

1

0

1

1

1

1

1

1

Исходное высказывание будет ложным, только если XA истинно, а XP и XQ ложны, т.е., (x P) и (x Q). Отсюда следует, что если x [2, 14], то исходное высказывание будет ложным, только если (x A). Этому условию удовлетворяет ответ 4), значит, он неверный.

Исходное высказывание будет истинным, если XA ложно, вне зависимости от XP и XQ. Этому условию удовлетворяют все ответы. Поэтому дальнейшие размышления нужно проводить для истинного значения XA.

Пусть [0,3]. Тогда XQ всегда ложно, а XP будет ложным для некоторых значений x. Следовательно, ответ 1) неверный.

Пусть [3,11]. Тогда либо XP, либо XQ, либо оба условия вместе будут истинными. Следовательно, ответ 2) верный.

Пусть [11,15]. Тогда XP всегда ложно, а XQ будет ложным для некоторых значений x. Следовательно, ответ 3) неверный.

Ответ: 2.

B15 (10мин)

Сколько существует различных наборов значений логических переменных x1, x2, x3, x4, y1, y2 y3, y4, которые удовлетворяют всем перечисленным ниже условиям?

(x1 → x2) /\ (x2 → x3) /\ (x3 → x4) = 1

y1 \/ y2) /\ (¬y2 \/ y3) /\ (¬y3 \/ y4) = 1

(y1 → x1) /\ (y2 → x2) /\ (y3 → x3) /\ (y4 → x4) = 1

В ответе не нужно перечислять все различные наборы значений переменных x1, x2, x3, x4, y1, y2 y3, y4, при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.

Ответ: ___________________________.

РЕШЕНИЕ

Перепишем второе равенство в виде:

(y1 → y2) /\ (y2 →y3) /\ (y3 →y4) = 1

Для того чтобы три равенства выполнялись, все 10 выражений, стоящих в скобках, должны быть истинными. Эти выражения связывают попарно друг с другом все переменные. Очевидно, нужно найти закономерности в этих связях.

Рассмотрим первое равенство. Результат операции следования равен 1 при нулевом (ложном) значении первого операнда и любом значении второго операнда или при истинных (равных 1) значениях обоих операндов. Следовательно, каждая скобка дает 3 варианта решения. Во второй и третьей скобках первый операнд совпадает со вторым операндом в предыдущей скобке. Если значение этого операнда равно 0, то следующая переменная может быть равна как 0, так и 1. Но если значение операнда равно 1, то следующая переменная может быть равна только 1. Значит, как только очередная переменная становится равной 1, все следующие переменные могут быть равны только 1. Занесем возможные наборы значений переменных во фрагмент таблицы истинности для x-переменных:

x1

x2

x3

x4

1.

0

0

0

0

2.

0

0

0

1

3.

0

0

1

1

4.

0

1

1

1

5.

1

1

1

1

Получаем 5 вариантов решений для первого равенства.

Второе равенство тоже дает подобные 5 вариантов решений для y-переменных:

y1

y2

y3

y4

1.

0

0

0

0

2.

0

0

0

1

3.

0

0

1

1

4.

0

1

1

1

5.

1

1

1

1

Общее число решений можно вычислить, сопоставляя друг с другом решения для первого и второго равенства и проверяя их соответствие третьему равенству. Первому решению для x-переменных соответствует только первое решение для y-переменных. Во втором решении для y-переменных y4=1, значит, должно быть x4=1. Подобная закономерность прослеживается в других решениях для y-переменных. Получаем 1 вариант общего решения.

Второму решению для x-переменных соответствует первое и второе решение для y-переменных – 2 варианта общего решения. Итак, каждому следующему решению для x-переменных соответствует все большее число решений для y-переменных. Всего получается 1+2+3+4+5=15 общих решений.

Ответ: 15

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]