Bağlaç normal formu - Conjunctive normal form

Gelen Boole mantığı , bir formül olan birleşik normal form ( CNF ) ya da Clausal normal formda eğer bu bir birlikte , bir ya da daha fazla maddeleri bir madde a,, ayrılma ve değişmez ; aksi halde , toplamların veya VE VEYA'ların bir çarpımıdır . Bir şekilde standart normal formda , bu yararlıdır otomatik teoremi ispatı ve devre teorisi .

Sırasıyla, tek harfli tümcelerin bağlaçları ve tek bir tümcenin bağlaçları olarak görülebileceğinden, tüm değişmezlerin bağlaçları ve değişmezlerin tüm ayrımları CNF'dedir. Ayırıcı normal formda (DNF) olduğu gibi, CNF'de bir formülün içerebileceği tek önermesel bağlaçlar ve , veya , ve değil . not operatörü yalnızca bir değişmezin parçası olarak kullanılabilir; bu, yalnızca bir önerme değişkeninden veya bir yüklem sembolünden önce gelebileceği anlamına gelir .

Otomatik teorem kanıtlamada, " kümülatif normal biçim " kavramı genellikle daha dar bir anlamda kullanılır, yani bir CNF formülünün bir dizi değişmez değer kümesi olarak belirli bir temsili anlamına gelir.

Örnekler ve örnek olmayanlar

Değişkenler aşağıdaki formüllerin bütün ve birleşik normal formda bulunmaktadır:

Açıklık sağlamak için, ayırıcı cümleler yukarıda parantez içinde yazılmıştır. Gelen disjunctive Normal formda parantez konjünktif maddeleri ile, son durum aynı, fakat sonuncu yanındadır . true ve false sabitleri , boş bağlaç ve boş ayrılmadan oluşan bir yan tümce ile gösterilir, ancak normalde açıkça yazılır.

Aşağıdaki formüller değil birleşik normal formda:

  • , bir VEYA bir DEĞİL içinde yuvalandığından
  • , VE bir VEYA içinde yuvalandığından

Her formül, birleşik normal biçimde bir formül olarak eşdeğer olarak yazılabilir. CNF'de olmayan üç örnek şunlardır:

CNF'ye dönüştürme

Her önerme formülü , CNF'de bulunan eşdeğer bir formüle dönüştürülebilir . Bu dönüşüm, mantıksal denkliklerle ilgili kurallara dayanmaktadır : çifte olumsuzlamanın ortadan kaldırılması , De Morgan yasaları ve dağıtım yasası .

Tüm önerme formülleri, birleştirici normal formda eşdeğer bir formüle dönüştürülebildiğinden, ispatlar genellikle tüm formüllerin CNF olduğu varsayımına dayanır. Bununla birlikte, bazı durumlarda CNF'ye bu dönüşüm, formülün üstel bir patlamasına yol açabilir. Örneğin, aşağıdaki CNF olmayan formülün CNF'ye çevrilmesi, yan tümceler içeren bir formül üretir :

Özellikle, oluşturulan formül:

Bu formül tümceleri içerir ; her madde ya da her birini içerir .

Eşdeğerlik yerine tatmin ediciliği koruyarak boyutta üstel bir artıştan kaçınan CNF'ye dönüşümler vardır . Bu dönüşümlerin formülün boyutunu yalnızca doğrusal olarak artırması garanti edilir, ancak yeni değişkenler ortaya çıkar. Örneğin, yukarıdaki formül aşağıdaki gibi değişkenler eklenerek CNF'ye dönüştürülebilir :

Bir yorum, bu formülü ancak yeni değişkenlerden en az birinin doğru olması durumunda karşılar. Bu değişken ise , o zaman hem ve hem de doğrudur. Bu, bu formülü sağlayan her modelin orijinalini de sağladığı anlamına gelir . Öte yandan, orijinal formülün sadece bazı modelleri bunu karşılar: orijinal formülde bahsedilmediğinden, değerleri onu tatmin etmekle ilgisizdir, son formülde durum böyle değildir. Bu, orijinal formülün ve çevirinin sonucunun eşdeğer olduğu, ancak eşdeğer olmadığı anlamına gelir .

Alternatif bir çeviri olan Tseitin dönüşümü , cümleleri de içerir . Bu maddeler ile formül ; bu formül genellikle "tanımlamak" için bir ad olarak kabul edilir .

Birinci dereceden mantık

Birinci dereceden mantıkta, daha sonra birinci dereceden çözünürlüğü gerçekleştirmek için kullanılabilecek bir mantıksal formülün yan tümceli normal formunu elde etmek için birleştirici normal form daha ileri alınabilir . Çözünürlük tabanlı otomatik teorem kanıtlamada, bir CNF formülü

, değişmez değerlerle, genellikle bir dizi küme olarak temsil edilir
.

Bir örnek için aşağıya bakın .

hesaplama karmaşıklığı

Hesaplama karmaşıklığındaki önemli bir problem seti , formül doğru olacak şekilde Bağlaç Normal Formda ifade edilen bir boole formülünün değişkenlerine atamalar bulmayı içerir. K -SAT sorun, her ayrılma en ihtiva ettiği CNF'den ifade edilen bir Boole formülüne bir tatmin atama bulma sorunudur k değişkenlerinin. 3-SAT , NP-tamamlanmıştır ( k >2 ile diğer tüm k -SAT problemleri gibi ), 2-SAT'ın ise polinom zamanında çözümlere sahip olduğu bilinmektedir . Sonuç olarak, bir formülü bir DNF'ye dönüştürme , tatmin ediciliği koruma görevi NP-zordur ; ikili olarak , CNF'ye dönüştürmek, geçerliliği korumak , aynı zamanda NP-zordur; dolayısıyla DNF veya CNF'ye eşdeğerliği koruyan dönüşüm yine NP-zordur.

Bu durumda tipik problemler, "3CNF"deki formülleri içerir: konjonkt başına üçten fazla değişken olmayan konjonktif normal form. Uygulamada karşılaşılan bu tür formüllerin örnekleri, örneğin 100.000 değişken ve 1.000.000 bağlaç ile çok büyük olabilir.

CNF bir formül "bir equisatisfiable formül dönüştürülebilir k için (CNF" k fazla olan her bir kavuşum değiştirerek ≥3) k değişkenlerinin iki conjuncts ile ve ile Z yeni bir değişken ve gerekli sıklıkta tekrar etmek.

Birinci dereceden mantıktan dönüştürme

Birinci dereceden mantığı CNF'ye dönüştürmek için:

  1. Olumsuzlama normal biçimine dönüştürün .
    1. Etkileri ve eşdeğerlikleri eleyin: defalarca değiştirmek ile ; yerine sahip . Sonunda, bu tüm oluşumlarını ortadan kaldıracaktır ve .
    2. De Morgan Yasasını tekrar tekrar uygulayarak DEĞİL'leri içe doğru hareket ettirin . Özellikle, şununla değiştirin ; yerine ile ; ve değiştirme ile ; yerine ile ; ile . Bundan sonra, yalnızca bir yüklem sembolünden hemen önce ortaya çıkabilir.
  2. Değişkenleri standartlaştır
    1. Aynı değişken adını iki kez kullanan cümleler için değişkenlerden birinin adını değiştirin. Bu, niceleyicileri düşürürken daha sonra karışıklığı önler. Örneğin, olarak yeniden adlandırılır .
  3. Skolemize deyimi
    1. Dışarı doğru nicelik taşı: sürekli olarak yerine ile ; yerine ile ; yerine ile ; yerine sahip . Önceki değişken standardizasyon adımı bunun gerçekleşmemesini sağladığından, bu değiştirmeler denkliği korur . Bu değiştirmelerden sonra, bir nicelik belirteci yalnızca formülün ilk önekinde olabilir, ancak asla bir , , veya içinde olamaz .
    2. Defalarca değiştirmek ile , nerede bir yeni -ary işlev simgesi, bir sözde " Skolem fonksiyonu ". Bu, eşdeğerlikten ziyade yalnızca tatmin edilebilirliği koruyan tek adımdır. Tüm varoluşsal niceleyicileri ortadan kaldırır.
  4. Tüm evrensel niceleyicileri bırakın.
  5. Eleştiri üzerine içeriye OR'leri dağıtın: defalarca değiştirmek ile .

Bir örnek olarak, formül söyleyerek "dönüş birileri tarafından sevilen içinde, bütün hayvanları seviyor herkes olduğu" CNF dönüştürülmüştür (ve ardından içine almaktadır hüküm aşağıdaki şekilde (yedek kuralı vurgulayarak son satırında formunda) redexes içinde ):

1.1 ile
1.1 ile
1.2 ile
1.2 ile
1.2 ile
2 ile
3.1 ile
3.1 ile
3.2 ile
4 tarafından
5 tarafından
( madde temsili)

Gayri resmi olarak, Skolem işlevi , sevilen kişiyi teslim ederken , sevmeyen hayvanı (varsa) verir olarak düşünülebilir . Daha sonra aşağıdan 3 Son satır olarak okur " hayvan sevmez , ya da başka tarafından sevilir " .

Yukarıdan 2. son satır CNF'dir.

Notlar

  1. ^ Peter B. Andrews, An Introduction to Mathematical Logic and Type Theory , 2013, ISBN  9401599343 , s. 48
  2. ^ A b Yapay Zeka: Modern Yaklaşım Arşivlenen de 2017/08/31 Wayback Machine [1995 ...] Russell ve Norvig
  3. ^ Tseitin (1968)
  4. ^ Jackson ve Sheridan (2004)
  5. ^ bir CNF'yi tatmin edicilik açısından kontrol etmenin bir yolu, onutatmin edilebilirliği doğrusal zamanda kontrol edilebilenbir DNF'ye dönüştürmektir.

Ayrıca bakınız

Referanslar

Dış bağlantılar