КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Про обозначения 1 страницаСтр 1 из 7Следующая ⇒ К сожалению, обозначения логических операций И, ИЛИ и НЕ, принятые в «серьезной» математической логике (Ù, Ú, ), неудобны, интуитивно непонятны и никак не проявляют аналогии с обычной алгеброй. Автор, к своему стыду, до сих пор иногда путает Ù и Ú. Поэтому на его уроках операция «НЕ» обозначается чертой сверху, «И» – знаком умножения (поскольку это все же логическое умножение), а «ИЛИ» – знаком «+» (логическое сложение). Что нужно знать: · условные обозначения логических операций A, не A (отрицание, инверсия) A Ù B, A и B (логическое умножение, конъюнкция) A Ú B, A или B (логическое сложение, дизъюнкция) A→B импликация (следование) A↔B, эквиваленция (эквивалентность, равносильность) · таблицы истинности логических операций «И», «ИЛИ», «НЕ», «импликация», «эквиваленция» (см. презентацию «Логика») · операцию «импликация» можно выразить через «ИЛИ» и «НЕ»: A→B = A Ú Bили в других обозначениях A→B = · операцию «эквиваленция» также можно выразить через «ИЛИ» и «НЕ»: A↔B = A Ù B Ú A Ù Bили в других обозначениях A↔B = · если в выражении нет скобок, сначала выполняются все операции «НЕ», затем – «И», затем – «ИЛИ», потом – «импликация», и самая последняя – «эквиваленция» · логическое произведение A∙B∙C∙… равно 1 (выражение истинно) только тогда, когда все сомножители равны 1 (а в остальных случаях равно 0) · логическая сумма A+B+C+… равна 0 (выражение ложно) только тогда, когда все слагаемые равны 0 (а в остальных случаях равна 1) · правила преобразования логических выражений (законы алгебры логики):
Пример задания: Сколько различных решений имеет логическое уравнение (x1 ® x2) Ù (x2 ® x3) Ù (x3 ® x4)= 1 (у1 ® у2) Ù (у2 ® у3) Ù (у3 ® у4) = 1 (Øy1 Ú x1) Ù (Øy2 Ú x2) Ù (Øy3 Ú x3) Ù (Øy4 Ú x4) = 1 где x1, x2, …, x4 и y1, y2, …, y4 – логические переменные? В ответе не нужно перечислять все различные наборы значений переменных, при которых выполнено данное равенство. В качестве ответа нужно указать количество таких наборов. Решение: 1) видим, что первые два уравнения независимы друг от друга (в первое входят только x1, x2, …, x4, а во второе – только y1, y2, …, y4) 2) третье уравнение связывает первые два, поэтому можно поступить так: · найти решения первого уравнения · найти решения второго уравнения · найти множество решений первых двух уравнений · из множества решений первых двух уравнений выкинуть те, которые не удовлетворяют последнему уравнению 3) найдем решения первого уравнения; каждая из логических переменных x1, x2, …, x4 может принимать только два значения: «ложь» (0) и «истина» (1), поэтому решение первого уравнения можно записать как битовую цепочку длиной 4 бита: например, 0011 означает, что 4) вспомним, что импликация x1®x2 ложна только для x1 = 1и x2 = 0, поэтому битовая цепочка, представляющая собой решение первого уравнения, не должна содержать сочетания «10»; это дает такие решения (других нет!): (x1, x2, x3, x4) =0000 0001 0011 0111 1111 5) видим, что второе уравнение полностью совпадает по форме с первым, поэтому все его решения: (y1, y2, y3, y4) =0000 0001 0011 0111 1111 6) поскольку первые два уравнения независимы друг от друга, система из первых двух уравнений имеет 5·5=25 решений: каждому решению первого соответствует 5 разных комбинаций переменных y1, y2, …, y4, которые решают второе, и наоборот, каждому решению второго соответствует 5 разных комбинаций переменных x1, x2, …, x4, которые решают первое: (y1, y2, y3, y4) = 0000 0001 0011 0111 1111 (x1, x2, x3, x4) =0000 0000 0000 0000 0000 0001 0001 0001 0001 0001 0011 0011 0011 0011 0011 0111 0111 0111 0111 0111 1111 1111 1111 1111 1111 7) теперь проверим, какие ограничения накладывает третье уравнение; вспомнив формулу, которая представляет импликацию через операции «НЕ» и «ИЛИ» ( ), можно переписать третье уравнение в виде (y1 ® x1) Ù (y2 ® x2) Ù (y3 ® x3) Ù (y4 ® x4) = 1 8) импликация y1®x1 ложна только для y1 = 1и x1 = 0, следовательно, такая комбинация запрещена, потому что нарушает третье уравнение; таким образом, набору с y1 = 1: (y1, y2, y3, y4) =1111 соответствует, с учетом третьего уравнения, только одно решение первого, в котором x1 = 1 (y1, y2, y3, y4) =1111 поэтому множество решений «редеет»:
(y1, y2, y3, y4) = 0000 0001 0011 0111 1111 (x1, x2, x3, x4) =0000 0000 0000 0000 0001 0001 0001 0001 0011 0011 0011 0011 0111 0111 0111 0111 1111 1111 1111 1111 1111 9) аналогично двигаемся дальше по третьему уравнению; второй сомножитель равен 0, если импликация y2®x2 ложна, то есть только для y2 = 1и x2 = 0, это «прореживает» предпоследний столбец: (y1, y2, y3, y4) = 0000 0001 0011 0111 1111 (x1, x2, x3, x4) =0000 0000 0000 0001 0001 0001 0011 0011 0011 0111 0111 0111 0111 1111 1111 1111 1111 1111 10) аналогично проверяем еще два ограничения, отбрасывая все решения, для которых y3 = 1и x3 = 0, а также все решения, для которых y4 = 1и x4 = 0: (y1, y2, y3, y4) = 0000 0001 0011 0111 1111 (x1, x2, x3, x4) =0000 0001 0001 0011 0011 0011 0111 0111 0111 0111 1111 1111 1111 1111 1111 11) итак, остается одно решение при (y1, y2, y3, y4)=1111, два решения при (y1, y2, y3, y4)=0111, три решения при(y1, y2, y3, y4)=0011, четыре решения при(y1, y2, y3, y4)=0001 и 5 решений при (y1, y2, y3, y4)=0000 12) всего решений 1+2+3+4+5=15. Ещё пример задания: Сколько различных решений имеет логическое уравнение X1→X2 ÚX3 Ù X4 = 1 X3→X4 ÚX5 Ù X6 = 1 X5→X6 ÚX1 Ù X2 = 1 где x1, x2, …, x6 – логические переменные? В ответе не нужно перечислять все различные наборы значений переменных, при которых выполнено данное равенство. В качестве ответа нужно указать количество таких наборов. Решение: 13) перепишем уравнения в более простом виде, заменим знаки Ú и Ù соответственно на (логические) сложение и умножение: 14) вспомним, что сначала выполняется логическое умножение, потом логические сложение и только потом – импликация, поэтому уравнения можно переписать в виде 15) раскрывая импликацию по формуле , получаем 16) далее замечаем, что , и , поэтому можно ввести новые переменные , и , и переписать уравнения в виде 17) пусть , тогда из первого уравнения сразу имеем и далее из второго ; при этом третье автоматически выполняется; получили одно решение 18) теперь пуст , тогда из последнего уравнения имеем , а из второго – , при этом первое уравнение справедливо 19) таким образом, система уравнений относительно переменных имеет два решения: (0,0,0) и (1,1,1) 20) теперь вернемся обратно к исходным переменным; значению соответствует единственный вариант ; значению соответствуют остальные 3 пары возможных значений 21) то же самое можно сказать про и : нулевое значение дает один набор соответствующих исходных переменных, а единичное – три 22) переменные , и независимы друг от друга, так как каждая из них составлена из разных X-переменных, поэтому Y-решение (0,0,0) (см. п. 7) дает только одно X-решение, а Y-решение (1,1,1) – 3·3·3=27 решений 23) всего решений 1 + 27 = 28. Ещё пример задания: Сколько различных решений имеет логическое уравнение X1→X2 → X3 → X4 → X5 → X6 = 1 где x1, x2, …, x6 – логические переменные? В ответе не нужно перечислять все различные наборы значений переменных, при которых выполнено данное равенство. В качестве ответа нужно указать количество таких наборов. Решение (вариант 1, табличный метод, динамическое программирование): 24) в левой части заданного уравнения стоят последовательно несколько операций импликации, скобок нет, поэтому порядок выполнения операций определяется приоритетом этих операций; в данном случае все операции имеют одинаковый приоритет 25) операции, имеющие одинаковый приоритет, выполняются слева направо, то есть первой выполняется импликация X1→X2, а последней – последняя импликация ((((X1→X2) → X3) → X4) → X5) → X6 26) каждая логическая переменная может принимать значение «истина» (1) или «ложь» (0) 27) для набора из 6 независимых логических переменных существует 26 =64 разных комбинаций значений этих переменных 28) рассмотрим первую импликацию, X1→X2; она дает в трёх случаях 1, и в одном – 0:
29) посмотрим, как меняется количество решений, если «подключить» следующую переменную; · если X1=0, то X1→X2 =1 (из нулей получаются единиц) · если X1=1, то X1→X2 =0 при X2 =0 и X1→X2 =1 при X2 =1 (из единиц получаются нулей и единиц) 30) исходя из этого, можно составить формулы для вычисления количества нулей и количества единиц для уравнения с переменными: , 31) для одной переменной имеем 1 ноль и 1 единицу, поэтому начальные условия для расчёта: 32) составим таблицу, которую будем заполнять слева направо, вычисляя число нулей и единиц по приведенным выше формулам; в таблице показано, как строится следующий столбец таблицы для : 33) таким образом, ответ: 43 решения. Решение (вариант 2, «с хвоста»): 1) те же рассуждения, что и в п. 1-4 решения по варианту 1 2) если X6 =1, то левая часть уравнения равна 1, то есть равенство выполняется; комбинаций с X6 =1 ровно половина от общего количества, то есть 32 3) теперь проверяем варианты с X6 =0; сразу получаем, что для выполнения заданного уравнения нужно, чтобы (X1→X2 → X3 → X4 → X5)=0; иначе получим 1 → X6 = 1 →0 = 0 4) проверим отдельно случаи X5=0 и X5=1 5) пусть X6 = 0 и X5 =1; в этом случае никогда не будет выполнено условие 6) пусть X6 = X5 =0; в этом случае условие (X1→X2 → X3 → X4 → X5)=0 выполняется только при (X1→X2 → X3 → X4)=1; если X4=1, это условие всегда верно, поэтому получаем еще 8 решений – 8 комбинаций, где X6 = X5 =0 и X4=1 (1/8 всех комбинаций) 7) теперь рассмотрим случаи, когда X6 = X5 = X4=0; рассуждая аналогично, находим, что условие (X1→X2 → X3 → 0)=1 верно при (X1→X2 → X3)=0, это сразу дает X3 =0 и 8) при всех известных значениях остальных переменных (X6 = X5 = X4=X3=0) условие 9) таким образом, ответ: 32 + 8 + 3 = 43 решения. Решение (вариант 3, приведение к базису «И-ИЛИ-НЕ», Е.Н. Смирнова): 1) те же рассуждения, что и в п. 1-4 решения по варианту 1 2) заменяем импликацию по формуле ; на первом шаге получаем 3) далее по той же формуле инверсию в первом слагаемом раскроем по закону де Моргана ( ): 4) сделав те же операции с оставшейся скобкой, получаем 5) и, применяя ту же формулу еще раз, получим уравнение 6) при остальные 5 переменных можно выбирать любым способом, это дает 25 = 32 решения4444444 7) при и решений нет 8) при получаем 23 = 8 решений при (можно выбирать , и произвольно) 9) при сразу находим, что , это дает еще 3 решения, при которых истинно выражение 10) таким образом, ответ: 32 + 8 + 3 = 43 решения. Ещё пример задания: Сколько различных решений имеет система уравнений X1 Ú X2 Ù X3 = 1 X2 Ú X3 Ù X4 = 1 ... X8 Ú X9 Ù X10 = 1 где x1, x2, …, x10 – логические переменные? В ответе не нужно перечислять все различные наборы значений переменных, при которых выполнено данное равенство. В качестве ответа нужно указать количество таких наборов. Решение (последовательное подключение уравнений): 1) рассмотрим сначала все решения первого уравнения; его левая части истинна, когда X1=1 (при этом X2 и X3 могут быть любыми), а также когда X1=0 и X2=X3=1:
2) заметим, что первое и второе уравнения связаны через последние две переменных, в данном случае это X2 и X3 3) пусть i – число переменных в уравнениях; введем обозначения: Ki– количество решений, в которых последние две переменные принимают Li– количество решений, в которых последние две переменные принимают Mi– количество решений, в которых последние две переменные принимают Ni– количество решений, в которых последние две переменные принимают 4) из таблицы видим, что K3=1, L3=1, M3=1 и N3=2 5) теперь подключаем второе уравнение; посмотрим, к чему приводят разные комбинации последних двух переменных:
6) находим, что
|