Utilia

Генератор на таблици на истинност

Генерирайте таблица на истинност за всеки булев израз с до 10 променливи, плюс минтерми, макстерми, нормални форми SOP/POS и проверка за тавтология.

Оператори: НЕ ! ~ ¬ или апостроф накрая ', И & * · ∧ (или само интервал: A B), ИЛИ | + ∨, XOR ^ ⊕, NAND ↑, NOR ↓, -> → за импликация, <-> ↔ за „тогава и само тогава“. Константи: 0, 1, истина, лъжа. Всяко друго име е променлива (AB е една променлива, пишете A B за A И B).

Примери:

Как се генерира таблица на истинност

  1. Въведете израза в полето Булев израз, например (A и B) -> не C, A B' + A' B или p ↔ q. Бутоните за оператори вмъкват ¬ ∧ ∨ ⊕ ↑ ↓ → ↔ и скоби на мястото на курсора.
  2. Таблицата се обновява, докато пишете; натиснете Enter или щракнете Генерирай таблица, за да я опресните веднага.
  3. Изберете Ред на променливите: По азбучен ред (обичайният учебников ред) или По ред на поява в израза.
  4. Под Показвай стойностите като изберете 1 и 0 (цифрова електроника) или T и F (курсове по логика).
  5. Отметнете Покажи колони за подизрази, за да видите всяка междинна стъпка, например A ∧ B преди ¬(A ∧ B). Това е подредбата, която преподавателите обикновено очакват, когато проверявате формула на ръка.
  6. Прочетете Класификация, списъците с минтерми и макстерми и нормалните форми под таблицата. Копирай CSV и Изтегли CSV експортират таблицата за електронна таблица или доклад.

Поддържан синтаксис

Операция Какво можете да въведете Показва се като
НЕ не A, !A, ~A, ¬A, 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
XOR A xor B, A ^ B, A ⊕ B A ⊕ B
NAND / NOR nand, ↑ / nor, ↓ ↑ / ↓
Импликация A implies B, A -> B, A => B, A → B A → B
Еквивалентност A iff B, A xnor B, A <-> B, A <=> B, A ↔ B A ↔ B

ИЛИ може да се пише и с вертикална черта: A | B или A || B. Думите за оператори не различават главни и малки букви, като българските думи „и“, „или“ и „не“ работят заедно със символите и английските думи (and, or, not). Константите са 0, 1, истина и лъжа (или true и false). Всяко друго име е променлива, включително единични букви като T или F и имена като x1 или Light2. Име от няколко букви е една променлива: AB не е A И B. Пишете A B, A·B или A & B за конюнкцията. Българската дума „и“ се чете като оператор само когато стои сама, с малка буква, между два операнда; ако в израза има променлива със същото име, пишете променливите с главни букви или използвайте символи. Думите за оператори не могат да се използват като имена на променливи.

Приоритет, от най-силния към най-слабия: НЕ, после И и NAND, после XOR, после ИЛИ и NOR, после импликацията, после еквивалентността. Така ¬a ∧ b ∨ c означава ((¬a) ∧ b) ∨ c. Импликацията се групира отдясно, както в учебниците по логика: a → b → c означава a → (b → c). Редът Чете се: показва как инструментът е разбрал въведеното, така че да проверите групирането, преди да се доверите на таблицата.

Минтерми, макстерми и нормални форми

Редовете се номерират от 0, като първата променлива е най-старшият бит. При променливи A, B, C ред 5 е A = 1, B = 0, C = 1. Минтерм е ред, в който изразът е верен, а списъкът Σm(…) дава номерата им. Макстерм е ред, в който е неверен, изписан като ΠM(…).

Съвършената дизюнктивна нормална форма (SOP, ДНФ) свързва с ИЛИ по един член с И за всеки минтерм. За XOR това дава (¬A ∧ B) ∨ (A ∧ ¬B). Съвършената конюнктивна нормална форма (POS, КНФ) свързва с И по една клауза с ИЛИ за всеки макстерм, като всяка променлива е с отрицание там, където битът ѝ е 1: (A ∨ B) ∧ (¬A ∨ ¬B). Тези форми са пълни, но не са минимални. Използвайте ги като начало за карта на Карно или за метода на Куайн–Маккласки.

Тавтология, противоречие или случайна формула

Тавтологията е вярна във всеки ред, като закона за контрапозицията (p → q) ↔ (¬q → ¬p). Противоречието е невярно във всеки ред, като p ∧ ¬p. Всичко останало е случайна формула. Две формули са логически еквивалентни точно когато формула1 <-> формула2 е тавтология, което дава бърз начин да проверите едно опростяване.

Често задавани въпроси

Колко променливи мога да използвам?

До 10 променливи, което дава 2¹⁰ = 1024 реда. Над това пълната таблица вече не се чете, затова инструментът ви моли да разделите израза.

Защо AB се брои за една променлива?

Инструментът приема описателни имена като door_open или x1, така че буквите, написани заедно, образуват едно име. За да умножите A и B, разделете ги с интервал (A B) или използвайте оператор като ·, * или &.

Мога ли да използвам T и F като стойности?

Като константи пишете 1/0 или истина/лъжа (true/false). Буквите T и F се третират като обикновени променливи. За да покажете таблицата с T и F вместо с 1 и 0, изберете T и F под Показвай стойностите като.

Какво означава A'?

Апострофът накрая е означението за НЕ, често в цифровата електроника: A' е ¬A, а (A B)' е ¬(A ∧ B). Той свързва толкова силно, колкото и НЕ, записано пред променливата.

SOP най-простата форма на израза ли е?

Не. Съвършената SOP изброява пълно всеки минтерм, така че често е дълга. Тя е точна и единствена при даден ред на променливите, което я прави надеждна основа за опростяване на ръка или с карта на Карно.

Как се изчислява импликацията?

A → B е невярно само когато A е вярно, а B е невярно. Невярна предпоставка прави импликацията вярна, което първоначално изненадва много студенти.