Site Loader

Алгебра логики: Построение таблиц истинности

Алгоритм построения таблицы истинности

  1. Определить число переменных
  2. Определить число строк в таблице истинности
  3. Записать все возможные значения переменных
  4. Определить количество логических операций и их порядок
  5. Записать логические операции в таблицу истинности и определить для каждой значение 

Определение количества строк и столбцов в таблице истинности.

Т.к. каждое из простых высказываний может принимать всего два значения (0 или 1), то количество разных комбинаций значений n высказываний – 2 n  . 

 Количество строк в таблице =  2 n  +  строка на заголовок.

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

 В нашем примере:  количество строк  —   2+ 1 = 5 ,           

                                             столбцов –     2 + 4  = 6

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

Для формулы, которая содержит две переменные, таких наборов значений переменных всего четыре: (0,0),   (0,1),   (1,0),   (1,1).

Если формула содержит три переменные, то возможных наборов значений переменных восемь:

(0,0,0),   (0,0,1),   (0,1,0),   (0,1,1),

(1,0,0),   (1,0,1),   (1,1,0),   (1,1,1).

Количество наборов для формулы с четырьмя переменными равно шестнадцати и т.д.

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

Примеры.

1. Составим таблицу истинности для формулы  , которая содержит две переменные x и y. В первых двух столбцах таблицы запишем четыре возможных пары значений этих переменных, в последующих столбцах — значения промежуточных формул и в последнем столбце — значение формулы. В результате получим таблицу:   

                      1)     ,      2)    ,  3)  ,    4)   ,     5)  

Переменные

Промежуточные логические формулы

Формула

   X   Y

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

Из таблицы видно, что при всех наборах значений переменных x и y формула  принимает значение 1, то есть является тождественно истинной.


«Алгебра логики». Использование мобильных приложений на уроке информатики

Дисциплина: Информатика.

Цели урока:

Образовательные:

  • закрепить знания учащихся по теме «Алгебра логики: основные законы алгебры логики»;
  • дать учащимся представление о подходах к пониманию алгебры высказываний;

Воспитательные:

  • воспитание самостоятельности, коммуникабельности, формирование понимания значения логики в современном информационном мире;
  • сочетание индивидуальной и коллективной работы;
  • ответственность за выполнение домашнего задания;

Развивающие:

  • развитие познавательного интереса учащихся;
  • памяти; внимания; развитие способности применять усвоенные теоретические знания в практической работе;
  • развить логическое мышление;
  • сформировать практические умения решать логические задачи.

Тип урока: Комбинированный урок.

Межпредметные связи: математика.

Оборудование урока: ПК, мультимедийное оборудование, презентация к уроку на тему «Алгебра логики: таблицы истинности и основные законы алгебры логики», раздаточный материал – карточки с заданиями, электронные таблицы Microsoft Excel, мобильное приложение «Сканер» и «Logic Calculator».

Ход урока

I. Теоретический этап

Доброе утро, ребята! На прошлых уроках мы изучили тему «Алгебра логики», на которых познакомились с определениями логика и логическое высказывание и основными логическими операциями, которые задаются таблицами истинности. А также узнали, что в алгебре логики имеется ряд законов, позволяющих производить равносильные преобразования логических выражений. Давайте вспомним и повторим материал прошлых уроков? (Повторение пройдённого материала по предыдущей теме проводится в виде кроссворда, вопросы которого зашифрованы в QR-кодах и распечатаны на карточках (Приложение 1, Приложение 2, Приложение 3), для расшифровки, которых необходимо воспользоваться смартфоном с установленным приложением «Сканер QR-кодов». Кроссворд также выведен на экран (Слайд 2)).

1. Проведение интерактивной беседы

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

2. Постановка цели и задач урока

Скажите, пожалуйста, для чего нужна логика? Связана ли алгебра логики с появлением первого персонального компьютера? (Студенты должны ответить)

Поначалу алгебра логики не имела никакого практического значения. Однако уже в XX веке ее положения нашли применение в описании функционирования и разработке различных электронных схем. Законы и аппарат алгебры логики стал использоваться при проектировании различных частей компьютеров (память, процессор). Хотя это не единственная сфера применения данной науки.

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

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

В-третьих, человек с древних времен стремился познать законы правильного мышления, т. е. логические законы. Законы развития есть у природы, общества, любой сложной системы и, конечно же, у самого мышления. Существует даже мнение, что всякое движение нашей мысли, постигающей истину, добро и красоту, опирается на логические законы. Познание истины – одна из важнейших потребностей человека. Каждый человек и человечество в целом стремятся к истине, добру и красоте. Все люди нуждаются в истинном знании, получении новой информации о мире, в котором они живут. Для чего? Для того, чтобы жить, что в данном случае означает ориентироваться в быстро меняющейся обстановке, принимать правильные решения и на их основе совершать правильные действия.

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

3. Объяснение теоретического материала

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

(Слайд 4) Джордж Буль (англ. George Boole; 2 ноября 1815 – 8 декабря 1864) – английский математик и логик. Профессор математики Королевского колледжа Корка с 1849 года. Один из основателей математической логики.

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

Лишь к семнадцати годам Буль дошёл до высшей математики, продвигаясь медленно из-за отсутствия действенной помощи.

С шестнадцати лет Буль начал работать помощником учителя в частной школе в Донкастере и, так или иначе, продолжал преподавание на разных должностях в течение всей жизни. Он был женат (с 1855 г.) на Мэри Эверест (з. Эверест-Буль), племяннице знаменитого географа Джорджа Эвереста, также занимавшейся наукой и преподаванием, а после смерти мужа много сил уделившей популяризации его вклада в логику.

Четыре их дочери снискали известность как учёные (геометр Алисия, химик Люси), или члены учёных семей (Мэри, жена математика и писателя Ч.Г.Хинтона, и Маргарет, мать математика Дж. И. Тейлора), а пятая – Этель Лилиан Войнич – прославилась как писатель.

Буль умер на пятидесятом году жизни от воспаления лёгких.

Огастес (Август) де Мо́рган (англ. Augustus de Morgan, 27 июня 1806 – 8 марта 1871) – шотландский математик и логик, профессор математики в Университетском колледже Лондона. Первый президент (1866) Лондонского математического общества.

Основные труды: по математической логике и теории рядов; к своим идеям в алгебре логики Огастес де Мо́рган пришёл независимо от Дж. Буля. В 1847 изложил элементы логики высказываний и логики классов, дал первую развитую систему алгебры отношений. С его именем связаны известные теоретико-множественные соотношения (законы де Моргана).

Законы де Мо́ргана (законы общей инверсии для логического сложения и для логического умножения) – логические правила, связывающие пары логических операций при помощи логического отрицания. И звучат так:

(Слайд 5-6) Общая инверсия двух логических слагаемых равносильна логическому умножению инвертированных переменных:

(A ˅ B) = A &B

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

(A & B) = A ˅B

Диаграммы Венна, описывающие законы де Моргана представлены на рисунках 1 и 2:

II. Практический этап
Практическое задание №1

В электронных таблицах доказать справедливость первого (A ˅ B) = A &B и второго (A & B) = A ˅ B законов де Моргана (Слайд 7), используя таблицы истинности (рис.3).

Рис.3

Далее студентам необходимо воспользоваться мобильным приложением Logic Calculator и доказать справедливость первого (A ˅ B) = A &B и второго (A & B) = A ˅ B законов де Моргана, используя приложение Logic Calculator.

1. (A ˅ B) = A &B

2. (A & B) = A ˅ B

Практическое задание №2

В мобильном приложении Logic Calculator построить таблицу истинности логического выражения: (A ˅ B) & (A ˅ B). Ответ записать в тетради.

Практическое задание №3

В мобильном приложении Logic Calculator построить таблицу истинности логического выражения: A & (B ˅ B &C). Ответ записать в тетради.

III. Заключительный этап

  1. Сообщение о достижении целей урока.
  2. Оценка работы обучающихся, комментарии.
  3. Выдача домашнего задания. (Доказать с использованием приложения Logic Calculator равносильность выражений (A ˅ B ˅ C) & (A ˅ B ˅ C) и (B &A & C)

Булева алгебра с использованием справочных таблиц (LUT)

Перейти к содержимому Урок 4: Что такое справочная таблица (LUT)?

В предыдущей статье мы обсудили основы булевой алгебры, а именно, как работают вентили И, ИЛИ, НЕ, исключающее ИЛИ и И-НЕ. Обсуждалась концепция таблиц истинности . На этой странице мы расширим тему работы таблиц истинности и обсудим более сложные уравнения булевой алгебры.

Во-первых, следует отметить, что все те дискретные логические элементы, которые мы обсуждали ранее (И, ИЛИ и т. д.), на самом деле делают , а не физически существуют внутри ПЛИС! Однако эти функции можно выполнять. Способ, которым FPGA могут выполнять булевую алгебру, заключается в использовании справочных таблиц (LUT) . Справочная таблица — это отдельный блок функций, который может быть запрограммирован в программе Digital Designer. LUT используют ту же концепцию таблицы истинности, чтобы связать выходные данные с входными данными. Давайте попробуем пример.

Создайте таблицу истинности для следующего логического уравнения: Q = A*B + A’. Возможно, нам следует определить, что означают эти символы. 9= XOR

Таким образом, логическое уравнение Q = A*B + A’ можно прочитать так: «Выход Q получает A и B или не A». (количество входов). Давайте теперь рассмотрим еще один пример с тремя входами. Вот уравнение, для которого мы собираемся создать таблицу истинности: Q = A + (C*B’). Обратите внимание, что круглые скобки указывают на то, что операция C AND NOT B выполняется до операции OR.

Таблица истинности – A + (C*B’)
Вход А Вход Б Вход С Выход Q
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1

Как упоминалось в начале этой статьи, внутри FPGA фактически не существует дискретных логических элементов.

Вместо этого в FPGA используются справочные таблицы или LUT. Цифровой дизайнер запрограммировал LUT для выполнения уравнения булевой алгебры, подобного двум, которые мы видели выше. Как и следовало ожидать, все возможные комбинации логических выражений должны быть запрограммированы в справочной таблице. Я скажу это снова по-другому: Один LUT с 3 входами может составить любое уравнение булевой алгебры, которое вы можете придумать, используя 3 входных сигнала. Удивительно!

LUT могут быть разных размеров в зависимости от используемой FPGA, но все они ведут себя одинаково. Не так давно 3-входовые LUT были нормой, но сегодня распространены 4-входовые и даже 5-входовые LUT. Если вам нужно составить более сложное выражение, вы можете просто использовать больше справочных таблиц. LUT являются одним из двух наиболее фундаментальных компонентов FPGA. Одна ПЛИС содержит тысячи таких компонентов. Теперь, когда вы лучше знакомы с этими удивительно универсальными компонентами, пришло время обсудить другой наиболее важный элемент внутри FPGA:

The Flip-Flop (AKA Register)

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

Оптимальный означает, что он использует наименьшее количество вентилей. Такие темы, как закон Де Моргана, карты Карно, метод Куайна-МакКласки и другие, обычно обсуждаются очень подробно и описывают, как оптимизировать цифровую логику. Однако я считаю, что это не обязательно для начала изучения ПЛИС. Чтобы вы как можно скорее начали программировать ПЛИС, я пропущу эти темы. Возможно, когда-нибудь я напишу о них, чтобы, если студенту понадобится внешняя ссылка, он мог прочитать больше здесь, но пока я буду придерживаться того, что, как я считаю, является минимальным объемом знаний, необходимых для начала проектирования ПЛИС.

ПЛИС-101

Рассел2022-06-30T19:42:10+00:00

Перейти к началу

Логика1

загрузить
Logic10
V2. 0
Logic10: редуктор таблицы истинности

содержание:
    Введение
    Особенности
    Выбор меню
    Установка
    Формула Ввод
    Операции
    Таблица Ввод
    Выходные данные
    Правила сокращения
    CNF — DNF
    Недоценс
    Tautology
    Save & Load
    Перевод информации
    SCAN.

Введение

Logic10 — это программа, которая:
    1. Генерирует таблицы истинности из формул булевой алгебры
    . 2. Сокращает таблицы истинности, применяя правила булевой алгебры.
Нажмите [ ЗДЕСЬ ], чтобы просмотреть краткий учебник по булевой алгебре.
Щелкните [ ЗДЕСЬ ] для программирования сокращения таблицы истинности.

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

Это Logic10 версии 2.0
Он заменяет все предыдущие версии.

Так выглядит Logic10 в работе:(уменьшенное изображение)

    Форма имеет три поля для
      1. ввод и редактирование формул и таблиц истинности
      2. вывод (сокращенных) таблиц истинности
      3. информация о процессе перевода или сокращения формулы

    Характеристики

    Особенности Logic10:
      ввод :(логика предложения) формула или таблица истинности (формат CNF)
      вывод : Таблица истинности в формате CNF или DNF
      сохранить и перезагрузить всех входных и выходных данных
      печать входных данных и выходных результатов
      — по выбору: информация о процессе перевода формулы
      — по выбору: пошаговая информация о процессе восстановления
      — В линии помощь информация

    Пункты меню

    см. ниже:

    Изображения слева направо позволяют

      — открытие сохраненного файла (папки)
      — сохранение таблицы истинности и настроек на диск
      — распечатать ввод и таблицу истинности
      — настройка принтера
      — отображать справочную информацию
    В верхней части поля ввода можно выбрать выбор между вводом формулы или таблицы CNF. 902:30 В верхней части окна вывода можно выбрать выход CNF или DNF.
    Кроме того, флажок может быть установлен, если необходимо уменьшить таблицу истинности.

    В верхней части поля Информация можно отметить два флажка:
    один для отображения информации о переводе формулы, а другой для отображения информации
    о шагах сокращения таблицы истинности.

    Установка

    Logic10 написан для Windows. Язык программирования — Delphi. 902:30 Загрузите Logic10, щелкнув значок загрузки (молния) в верхней части этой страницы.
    Нет никакой процедуры установки, просто скопируйте Logic10 в папку по выбору.
    Реестр Windows не изменен.

    Ввод формулы

    ниже подробное изображение поля ввода формулы:
      Поле ввода для редактирования формулы насчитывает 30 строк по 40 символов в каждом.
      Логические переменные представляют собой одиночные символы A..Z 902:30 Допускается выбор не более 15 различных символов.
      Круглые скобки (…) могут использоваться на 20 уровнях для определения приоритета операций.
      Операторы с их приоритетом
        оператор приоритет имя описание
        / 6 НЕ Отрицание
        . 5 И Логический продукт
        = 4 EQU Равенство
        3 XOR Логическая разница
        + 2 ИЛИ Логическая сумма
        > 1 ИМП Значение

      Примечания:

        1. между переменными «.» Оператор И может быть опущен. Программа добавляет «.» автоматически. 902:30 2. то же самое между переменной и «(» или «) и переменной
        3. также между «).(»

      Примеры автоматического «. » ввод оператора:
      ABC = ABC
      А(В+С) = А.(В+С)
      (А+В)(С+D) + (А+В).(С+D)

      Примечание:
      В булевой алгебре отрицание (НЕ) обычно обозначается сплошной чертой над переменной.
      Это трудно редактировать на экранах компьютеров, поэтому для Logic10 символ «/» используется непосредственно перед переменной. 902:30 Так пишется как /A и пишется как /(AB)


      Осторожно:
      При продолжении формулы на следующей строке символ «.» оператор вставляется между последовательными переменными, поэтому эта формула
        А+Б
        С+Г
         
        Интерпретируется как: A+B.C + D

        Чтобы удалить строку, введите ctrl y
        Чтобы вставить пустую строку, введите ctrl n

        Операции

        В таблице ниже перечислены таблицы истинности для всех операций.
          A B /A A.B A=B A-B A+B A>B
          0 0 1 0 1 0 0 1
          1 0 0 0 0 1 1 0
          0 1 1 00 1 1 1
          1 1 0 1 1 0 1 1

        Ввод таблицы истинности

        Входными данными может быть таблица истинности не более 100 строк.
        Начните вводить имя переменной (A..Z) в верхней части таблицы.
        Входная таблица находится в форме CNF, поэтому каждая строка представляет собой операцию И своих переменных, строки объединяются по схеме ИЛИ. 902:30 Введите «0», если отрицательная переменная должна быть истинной, введите «1», если переменная должна быть истинной.

        Итак, эта таблица

                  А Б В Г
                  0 1 1
                  1 1 0
         
        Представляет формулу: /A C D + A B /D

        Выход таблицы истинности

        При нажатии кнопки GO формула транслируется в список основных операций в порядке их приоритета.
        Затем запускается счетчик для генерации всех возможных состояний 0,1 переменных и выполняются операции. 902:30 Для режима CNF: если окончательный результат дает true, значения переменных добавляются в выходную таблицу истинности.

        Для режима DNF: если результат ложный, то значения переменных копируются в выходную таблицу истинности.
        Также сами переменные перечислены в инвертированном виде: -0- указан как -1- и наоборот.
        Объяснение дано далее в этой статье.

        Правила сокращения

        Если установлен флажок уменьшить , то для уменьшения выходной таблицы применяются правила логической алгебры. 902:30 Нет никакой разницы между режимами CNF и DNF.
        В этом процессе сокращения используются следующие правила:
          1…..А + А = А
          2…..А + АВ =А
          3…..А/В + АВ = А
          4…..А + /АВ = А + В
          5…..A /B + BC —> AC

        Обратите внимание, что такая формула, как A + A, представляет структуру 90 230 он может отображаться как D/F + D/F или как PQ/(X+Y+Z) + PQ/(X+Y+Z)
        также такая формула, как A + /AB, может выглядеть как /(A+B+C)K + (A+B+C)K 902:30 и A/B + AB могут отображаться как A/BC/D + A/BCD.


        Правило 5. Основное изменение по сравнению с предыдущим уровнем 1.2
        Оно заменяет старые правила 5. и 6. и устраняет все известные «утечки» в процессе редукции.
        В правиле 5. AC называется виртуальным термином и лишь временно добавляется в процесс сокращения.

        Правило 5. означает, что если AC =1, то A/B + BC = 1, однако обратное неверно.
        Условия A/B и BC называются родительскими AC

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

          виртуальный термин не может удалить своего родителя
        Это очевидно, потому что виртуальный термин «поддерживается» его родителями.
        Сам термин удаляется из окончательной таблицы истинности.
        Добавление термина без родителей изменит формулу.

        Виртуальный и обычный термин из таблицы истинности могут быть объединены (по ИЛИ), что может привести к

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

        Вход таблицы истинности

        При нажатии GO входная таблица истинности копируется в выходную таблицу.
        Если отмечено , уменьшить , то таблица будет сокращена по приведенным выше правилам 1..5.

          КНФ и ДНФ

          Выходная таблица истинности может быть в форме CNF или DNF.
          CNF означает «конъюнктивную нормальную форму», которая представляет собой ABC + DEF + GHI + …..
          . Итак, И отдельных переменных (с предшествующим / или без него), которые объединяются по ИЛИ.

          ДНФ означает «дизъюнктивную нормальную форму», которая представляет собой (A+B+C)(D+E+F)(G+H+I)(…. 902:30 Итак, ИЛИ отдельных переменных (с предшествующим / или без него), которые объединены И.

          В режиме DNF при формировании выходной таблицы истинности Logic10 вводит значения переменных в таблицу для значений
          которые дают ложные результаты.
          Затем таблица может быть сокращена по тем же правилам, что и в режиме CNF, но таблица указана в инвертированном виде.
          «0» отображается как «1», а «1» отображается как «0».

          Примечание: cnf………AB + BC = (A+C)(A+D)(B+C)(B+D)………dnf 902:30 Это прямое следствие второго закона распределения. (см. учебник по булевой алгебре)

          Также законы де Моргана иллюстрируют связь между КНФ и ДНФ.

            Несоответствие

            Логическая формула (предложение) несостоятельна, если она никогда не приводит к истине.
            Простое несоответствие: ……A./A
            Logic10 сообщает о несоответствиях.

            Тавтология

            Логическая формула (предложение) называется тавтологией, если она всегда истинна. 902:30 Простая тавтология:……..A + /A
            Logic10 сообщает о тавтологиях.

            Сохранить и загрузить

            При нажатии на значок сохранения (дисковая пластина) открывается диалоговое окно для выбора имени файла.
            Logic10 не использует расширения имен файлов, так как их и так достаточно.
            Однако для ясности выбранное имя файла имеет префикс logic10_ (если это еще не сделано).

            Все данные: входная формула, входная таблица CNF и выходная таблица истинности сохраняются в одном файле.

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

            Перевод информации

            если xlate флажок установлен, информация о переводе формулы отображается в информационном поле.
            ниже подробная картинка
              слева — таблица Postfix , в которой перечислены формулы в постфиксной нотации.
              Добавляется третий столбец с приоритетом операции.

              Из этой таблицы составляется таблица переменных .

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

                1. операция
                2. регистр назначения
                3. исходный операнд1, регистр
                4. регистр исходного операнда2
              Примечание: в регистре хранится логический термин, например, /ABC/DE/F

              При установке определенных значений переменных и выполнении таблицы директоров формула оценивается как true или false .

              Информация о сканировании

              Просмотр таблицы истинности сводится к сравнению ( ИЛИ ing) каждой строки (term) и ed переменных с каждым другим термином.
              Индексами таблицы истинности являются [i] и [j].
              Итак, запись таблицы истинности [i] сравнивается с записью [j].
              Анализ пары терминов дает 4 логических результата:

              привет

              Отверстие-я
              Это верно, когда [ i ] удалил переменные, которые присутствуют в [ j ]
                     А Б В Г Д Е
              [i] 0 0 х 0 х х
              [к] 1 0 х 1 1 0
                 
              В приведенной выше таблице переменные E, F исключаются в [ i ], но не в j, поэтому hi верно.

              хдж

              Отверстие-j
              Это верно, когда [ j ] удалил переменные, которые присутствуют в [ i ]
                       А Б В Г Д Е
              [i] 1 х 1 1 0 0
              [j] 0 х 0 х х х
                 
              Здесь [ j ] удалил переменные D, E, F, которые не удалены в [ i ], поэтому hj истинно.

              сб

              Один бит означает, что разница (исключающее или) между [ i ] и [ j ] имеет только 1 бит.
                     А Б В Г Д Е
              [i] х 1 1 1 0 1
              [к] 0 х 1 1 1 1
                 
              Отличаются только биты E. Столбцы, имеющие x (удаленная переменная), игнорируются.
              Итак, сб верно.

              зб

              Нулевой результат, также называемый равным или без разницы
                      А Б В Г Д Е
              [i] 0 1 1 1 х 0
              [к] 0 1 х 1 1 0
                 
              Столбцы с x игнорируются.
              Остальные столбцы должны быть равны.
              Итак, ЗБ верно.

              hi(3) hj(2) sb(1) zb(0) — биты 3,2,1,0 в коде.
              Этот код выбирает правильные логические операции над [i] и/или [j], чтобы уменьшить таблицу истинности.

              Некоторые примеры:

              Правило редукции 1

              АВ/С + АВ/С = АВ/С
                    А Б В
              [я] 1 1 0
              [к] 1 1 0
                 
              Разница 0 0 0.
              hi, hj, sb ложны (0), zb истинны (1).
              Код действия = 1.
              Таким образом, член [ j ] удаляется.

              Правило редукции 2

              АВ + АВС/D = АВ
                      А Б В Г
              [i] 0 1 х х
              [к] 0 1 1 0
                 
              hi истинно, hj ложно, sb ложно, zb истинно.
              Код действия 1001 = 9 (десятичный).
              [j] удаляется.

              Правило редукции 3

              А/ВС + АВС = А
                    А Б В Г Д Е
              [i] 1 0 1 х х х
              [к] 1 1 1 х х х
               
              привет, hj, zb неверны. sb истинно (различно только B).
              Код действия 2.
              Переменная B в [i] удалена, все переменные [j] удалены.

              Правило редукции 4

              АВ + А/ВС = АВ + АС
                    А Б В
              [я] 1 1 х
              [к] 1 0 1
               
              привет, сб правда. zb, hj ложны.
              Разностный бит B удаляется в [ j ].

              Правило сокращения 5, виртуальные термины

              AB + /BC —> AC, где AC — виртуальный термин, используемый только для сканирования.
                    А Б В
              [я] 1 1 х
              [j] х 0 1
               
              привет, hj, sb верны. зб неверно. Код действия 1110 = 14 десятичных знаков.
              Действие :
              Запускается сканирование для сравнения виртуального термина AC с каждым термином в таблице истинности.
              Правила 1..4 применяются с единственным ограничением, что [i] или [j] не могут быть удалены, потому что они являются родителями.

              Ниже приведена типичная информация обычного сканирования

                А вот и дисплей для виртуального скана
                  VT означает виртуальный термин.
                  k — это индекс в таблице истинности (как i, j для нормального сканирования)
                  Виртуальный термин может (по сравнению с терминами таблицы истинности) генерировать новые виртуальные термины.
                  Эти термины хранятся в стеке (фактически в буфере FIFO) для последующей обработки.

                  В таблице истинности родительские термины виртуального термина выделены красным.

                  Виртуальные термины в работе

                  Введение виртуальных терминов устраняет все прежние дополнительные правила за пределами 1..4
                  Сначала позвольте мне объяснить, как возникла идея виртуальных терминов.

                  Формула /BQ + /AP + AB привела к /B /P Q + AB + /AP + AQ

                  Этот результат не является ошибочным, но указанный термин жир является избыточным (как и /P в / б/пк)
                  Первая идея состояла в том, чтобы найти способ исключить лишний член AQ, но появилась вторая идея: 902:30 как им пользоваться.
                  Оказалось, что AQ является результатом /BQ + AB, причем термины различны только для B.

                  Итак, AQ представляет собой /BQ + AB. Если AQ = 1, то наверняка /BQ + AB = 1 (но не наоборот).
                  AQ может быть временно добавлен в качестве термина для принудительного сокращения других терминов и даже может быть сокращен сам по себе.

                  В этом случае термины /BQ + AB образуют виртуальный термин AQ.
                  Затем сравнение AQ со всеми остальными записями в таблице истинности находит другой AQ и исключает его в соответствии с правилом 1.

                  Пример 1: /AZ + /BZ + /CZ + ABC = Z + ABC
                  /AZ + ABC —-> BCZ (виртуальный)
                  BCZ + /BZ = CZ (сокращенный виртуальный член) + /BZ
                  CZ + /CZ = Z + Z … ……..и правила 1..4 могут закончить работу.

                  Пример 2: BC + /BP + ACPQ = BC + /BP
                  BC + /BP —-> CP (виртуальный)
                  CP + ACPQ = CP …….. поэтому ACPQ исключается.

                  Пример 3: /B /P Q + AB + /AP + AQ . ……………{см. выше}
                  /AP + AQ —> PQ (виртуальный)
                  PQ + /B/PQ = /BQ + PQ …….переменная /P исключена.
                  /BQ + AB —> AQ (виртуальный), что исключает другой член AQ в таблице истинности.

                  История

                  Первую версию этого генератора/редуктора таблицы истинности я написал в 1991 году во время изучения математики.
                  10 (наивысший балл) предлагалось каждому студенту, который мог написать программу для диагностики 902:30 формула логики высказывания как «непоследовательная» или «тавтология».
                  Я написал программу на Turbo Pascal (под MSDOS) и набрал «10».
                  В январе 2013 года, убираясь в своей комнате, я нашел старую дискету.
                  Оказалось, что программа работала нормально, несмотря на старомодный пользовательский интерфейс, но некоторые таблицы
                  где не сводится к пределу.
                  Применялись только правила редукции 1..4.
                  Я снова начал работать над этим.
                  В результате появилась версия Logic10 1.

                  alexxlab

                  Добавить комментарий

                  Ваш адрес email не будет опубликован. Обязательные поля помечены *