Täydellinen disjunktiivinen normaalimuoto

Täydellinen disjunktiivinen normaalimuoto (PDNF)  on yksi niistä muodoista, joilla esitetään logiikan algebran funktio (Boolen funktio) loogisen lausekkeen muodossa. Se on DNF :n erikoistapaus, joka täyttää seuraavat kolme ehtoa [1] :

Mikä tahansa Boolen kaava , joka ei ole identtisesti epätosi, voidaan pelkistää SDNF:ksi, ja ainutlaatuisella tavalla, toisin sanoen mille tahansa logiikkaalgebran tyydyttävälle funktiolle, on oma SDNF, ja ainoa [2] .

Lyhyt teoria

DNF on "tulojen summa", ja AND-operaatio (konjunktio) toimii "kerto-operaationa" ja OR-operaatio (disjunktio) toimii "lisäys"-operaationa. Tekijät ovat erilaisia ​​muuttujia, ja ne voidaan sisällyttää tuotteeseen sekä suorassa että käänteisessä muodossa.

Alla on esimerkki DNF:stä:

Yleisesti ottaen DNF voi sisältää toistuvia termejä, ja jokainen termi voi sisältää toistuvia tekijöitä, esimerkiksi:

Matemaattisesti katsottuna tällainen kloonaus on merkityksetöntä, koska Boolen algebrassa minkä tahansa lausekkeen kertominen itsestään ja lausekkeen lisääminen itseensä ei muuta tulosta ( ), mutta lausekkeen lisääminen omalla inversiollaan ja kertominen omalla inversiollaan antaa vakiot ( ). Viimeisessä lausekkeessa voit poistaa toistuvat termit ja tekijät seuraavasti:

Tästä syystä toistuvia termejä ja tekijöitä sisältäviä DNF:itä käytetään yleensä vain aputarkoituksiin, esimerkiksi lausekkeiden analyyttiseen muuntamiseen.

SDNF on kanoninen muoto Boolen funktion esittämiseksi DNF:nä, jossa termien ja tekijöiden toisto on kielletty. Lisäksi jokaisen termin tulee sisältää kaikki muuttujat (suorassa tai käänteisessä muodossa).

Alla on esimerkki SDNF:stä:

SDNF:n merkitys on se

Esimerkki SDNF:n löytämisestä

Funktion SDNF:n saamiseksi sen on käännettävä sen totuustaulukko . Otetaan esimerkiksi yksi totuustaulukoista:

0 0 0 yksi
0 0 yksi yksi
0 yksi 0 yksi
0 yksi yksi 0
yksi 0 0 0
yksi 0 yksi 0
yksi yksi 0 yksi
yksi yksi yksi 0

Tuloksen soluihin merkitään vain ne yhdistelmät, jotka tuovat loogisen lausekkeen tilaan yksi. Lisäksi otetaan huomioon muuttujien arvot, joissa funktio on yhtä suuri kuin 1. Jos muuttujan arvo on 0, niin se kirjoitetaan inversiolla. Jos muuttujan arvo on 1, ei inversiota.

Ensimmäisellä rivillä on 1 määritetyssä kentässä. Kaikkien kolmen muuttujan arvot on merkitty muistiin, nämä ovat:

Nolla-arvot - tässä kaikki muuttujat edustavat nollia - kirjoitetaan lopulliseen lausekkeeseen tämän muuttujan käänteisarvolla. Tarkasteltavan funktion SDNF:n ensimmäinen jäsen näyttää tältä:

Toisen jäsenen muuttujat:

tässä tapauksessa esitetään ilman käänteistä:

Siten kaikki solut analysoidaan . Tämän funktion täydellinen DNF on kaikkien tuloksena olevien termien disjunktio ( alkeiskonjunktiot ).

Tämän toiminnon täydellinen DNF on:

Katso myös

Muistiinpanot

  1. Vinogradova M.S., Tkachev S.B. Boolen funktiot. - M . : Kustantaja MSTU im. N.E. Bauman, 2007. - 32 s.
  2. Matemaattinen logiikka . - Perm: Publishing House of PSTU, 1998. - 17 s. Arkistoitu 9. huhtikuuta 2016 Wayback Machinessa