Doğruluk tablosundan ifade üretici

Çıkış sütununu istediğiniz biçime tıklayın; araç formülü doğrudan oradan okur: kanonik DNF (çarpımlar toplamı), kanonik CNF (toplamlar çarpımı) ve en kısa eşdeğer biçim. Her şey tarayıcınızda çalışır ve kurduğunuz tablo bağlantının içinde taşınır.

Değişkenler: p, q
pqÇıkış

Doğru (⊤) ve yanlış (⊥) arasında geçiş yapmak için çıkış değerlerine tıklayın

Üretilen ifade

Ayrık normal form (çarpımlar toplamı)
(p ∧ ¬q) ∨ (¬p ∧ q)

Bir doğruluk tablosu Boole ifadesine nasıl dönüştürülür

Her doğruluk tablosu bir formülün doğruluk tablosudur ve bu formüllerden ikisi doğrudan tablodan okunur - cebire de tahmine de gerek yok:

  1. n değişkeniniz için 2ⁿ satırın tamamını yazın ve çıkışın ⊤ olduğu satırları işaretleyin.
  2. Her ⊤ satırı için bir minterim yazın: bütün değişkenler VE ile bağlı, satırın yanlış yaptığı yerlerde değillenmiş olarak. Minterimleri VEYA ile bağlayın, DNF elinizde.
  3. Her ⊥ satırı için bir maksterim yazın: bütün değişkenler VEYA ile bağlı, satırın doğru yaptığı yerlerde değillenmiş olarak. Maksterimleri VE ile bağlayın, CNF elinizde.
  4. İki formülün de tam olarak başladığınız tablosu vardır, dolayısıyla ikisi de doğru cevaptır. En kısasını istiyorsanız sonrasında sadeleştirin.

Minterim

Her biri değillenmiş ya da değillenmemiş bütün değişkenlerin, tablonun tam olarak bir satırında doğru olan bir birleşimi. DNF, çıkışın ⊤ olduğu satırların minterimlerinin ayrılımıdır; her ⊤ satırı için bir terim içermesinin nedeni budur.

Maksterim

Her biri değillenmiş ya da değillenmemiş bütün değişkenlerin, tablonun tam olarak bir satırında yanlış olan bir ayrılımı. CNF, çıkışın ⊥ olduğu satırların maksterimlerinin birleşimidir; her ⊥ satırı için bir terim içermesinin nedeni budur.

Çözümlü örnek: özel veya

Yukarıdaki tablo aracın açılışta gösterdiği tablodur: p ve q, tam olarak girişlerin farklı olduğu iki satırda doğru.

  • İki satır ⊤, dolayısıyla DNF'de iki minterim var: (p ∧ ¬q) ∨ (¬p ∧ q)
  • Diğer iki satır ⊥, dolayısıyla CNF'de iki maksterim var: (p ∨ q) ∧ (¬p ∨ ¬q)

İkisi de kısaltılamaz - özel veya gerçekten iki terime de ihtiyaç duyar - ve bunu bir kez görmek gerekir: kanonik biçim her zaman uzun yol değildir. En sade biçim asıl «p, q, r arasından en çok biri» gibi bir tabloda öne geçer.

Boole sentezini anlamak

Ayrık normal form (DNF)

DNF bir formülü VE'lerin VEYA'sı olarak yazar (çarpımlar toplamı). Çıkışın doğru olduğu her satır için bir minterim kurulur: bütün değişkenler VE ile bağlanır, o satırda yanlış olanlar değillenir. Minterimler sonra VEYA ile bağlanarak ifadenin tamamını oluşturur.

Birleşik normal form (CNF)

CNF bir formülü VEYA'ların VE'si olarak yazar (toplamlar çarpımı). Çıkışın yanlış olduğu her satır için bir maksterim kurulur: bütün değişkenler VEYA ile bağlanır, o satırda doğru olanlar değillenir. Maksterimler sonra VE ile bağlanarak ifadenin tamamını oluşturur.

DNF ve CNF karşılaştırması

ÖlçütAyrık normal form (çarpımlar toplamı)Birleşik normal form (toplamlar çarpımı)
Neyden kurulurÇıkışın ⊤ olduğu satırlardan, her birine bir minterimÇıkışın ⊥ olduğu satırlardan, her birine bir maksterim
BiçimBirleşimlerin ayrılımı: VE'lerin VEYA'sıAyrılımların birleşimi: VEYA'ların VE'si
Şu durumda tercih edinFormülü doğru yapan durumları sıralamak ya da bir VE-VEYA devresi kurmak istiyorsanızHepsi aynı anda sağlanması gereken koşulları ya da bir SAT çözücünün beklediği tümce biçimini istiyorsanız

Tablo ne kadar büyür?

n değişkenli bir fonksiyonun 2ⁿ satırı vardır, yani eklediğiniz her değişkenle tablo ikiye katlanır: iki değişkende 4 satır, üçte 8, dörtte 16, beşte 32 - bu araç orada durur. DNF her ⊤ satırı için bir terim, CNF her ⊥ satırı için bir terim alır; böylece ikisi birlikte her satırı tam olarak bir kez karşılar ve ikisinden biri her zaman daha kısa bir başlangıçtır.

Doğruluk tablosu sentezinin kullanım alanları

Doğruluk tablosundan mantıksal ifadeye geçmek bilgisayar biliminde ve sayısal elektronikte temel bir tekniktir. Bu araç şunlara yardımcı olur:

  • Sayısal devre tasarımı - istenen giriş-çıkış davranışından mantık kapıları için Boole denklemleri çıkarmak
  • Yazılım geliştirme - bir şartname tablosundan koşul mantığı üretmek
  • Öğrenim - Boole cebiri ve önerme mantığı öğrenmek ve alıştırma yapmak
  • Mantık eniyilemesi - daha basit eşdeğer ifadeler bulmak için DNF ile CNF'yi karşılaştırmak

Sıkça Sorulan Sorular

Mantık Hesaplayıcı'nın kullanımıyla ilgili sık sorulan soruların yanıtları

Doğruluk tablosundan ifadeye aracı ne yapar?

Hesaplayıcıyı tersine çalıştırır. Her satıra tıklayarak bir doğruluk tablosunun çıkış sütununu belirlersiniz; araç da tam olarak o doğruluk tablosuna sahip bir formül üretir — ayrık normal formda (VE'lerin VEYA'sı) veya birleşik normal formda (VEYA'ların VE'si).

DNF ile CNF arasındaki fark nedir?

DNF çarpımların toplamıdır: çıkışın doğru olduğu her satır için bir birleşim ve hepsi VEYA ile bağlanır. CNF toplamların çarpımıdır: çıkışın yanlış olduğu her satır için bir ayrılım ve hepsi VE ile bağlanır. İkisi de aynı işlevi betimler; bu yüzden tablonuz için hangisi kısaysa onu tercih edin — çoğunlukla yanlış bir sütun kısa bir DNF, çoğunlukla doğru bir sütun kısa bir CNF verir.

Sentez aracı kaç değişken alır?

En çok beş, yani 32 satırlık bir tablo. Eklediğiniz her değişken satır sayısını ikiye katlar ve beşin ötesinde tablo elle doldurulabilir olmaktan çıkar.

Üretilen ifade neden bu kadar uzun?

Normal form satır satır kurulur: kapsanması gereken her satır için tam genişlikte bir terim. Dolayısıyla uzunluğu, ardındaki fikri değil doğruluk tablosunu izler. Yapısı gereği doğrudur, derli toplu değil. Kısaltmak için hesaplayıcıda açın; orada eşdeğer biçimler, indirgenmiş bir DNF de dahil olmak üzere listelenir.

Bir formülün sadeleştirilmiş halini alabilir miyim?

Evet. Formülü hesaplayıcıya girin ve doğruluk tablosunun altındaki eşdeğer biçimlere bakın. Bunlar cebir yasalarıyla yeniden yazılarak elde edilen biçimleri ve doğruluk tablosundan okunan DNF ile CNF'yi, ayrıca indirgenmiş bir DNF'yi içerir.

Tüm soruları gör