Kako podesiti pametne telefone i računare. Informativni portal

Logičke funkcije i njihove tablice istinitosti. Problem sinteze logičkih kola u Booleovoj bazi

Logička funkcija je funkcija u kojoj varijable uzimaju samo dvije vrijednosti: logičku jedan ili logičku nulu. Istinitost ili neistinitost složenih sudova je funkcija istinitosti ili neistinitosti jednostavnih. Ova funkcija se zove Bulova funkcija rasuđivanja f (a, b).

Bilo koja logička funkcija može se specificirati pomoću tablice istinitosti, na čijoj lijevoj strani je napisan skup argumenata, a na desnoj strani - odgovarajuće vrijednosti logičke funkcije.

Prilikom konstruiranja tablice istinitosti potrebno je voditi računa o redoslijedu kojim se izvode logičke operacije. Operacije u Booleovom izrazu se izvode s lijeva na desno, podložno zagradama, sljedećim redoslijedom:

  • 1. inverzija;
  • 2. konjunkcija;
  • 3. disjunkcija;
  • 4. implikacija i ekvivalencija.

Zagrade se koriste za promjenu redoslijeda u kojem se izvode logičke operacije.

Predlaže se sljedeće algoritam za konstrukciju tablice istine.

  • 1. Odredite broj skupova ulaznih varijabli- sve moguće kombinacije vrijednosti varijabli uključenih u izraze, prema formuli: Q = 2 n, gdje je n broj ulaznih varijabli. Određuje broj redova u tabeli.
  • 2. Unesite sve skupove ulaznih varijabli u tablicu.
  • 3. Odrediti broj logičkih operacija i redoslijed njihovog izvršavanja.
  • 4. Popunite kolone sa rezultatima izvođenja logičkih operacija u naznačenom redoslijedu.

Kako ne biste ponovili ili propustili bilo koju moguću kombinaciju vrijednosti ulaznih varijabli, trebali biste koristiti jedan od sljedećih metoda za popunjavanje tabele.

Metoda 1. Svaki skup vrijednosti početnih varijabli je šifra broja u binarnom brojevnom sistemu, a broj cifara broja jednak je broju ulaznih varijabli. Prvi skup je broj 0. Svaki put dodajući 1 trenutnom broju, dobijamo sljedeći skup. Posljednji skup je maksimalna binarna vrijednost za datu dužinu koda.

Na primjer, za funkciju od tri varijable, niz skupova se sastoji od brojeva:

Metoda 2. Za funkciju od tri varijable, niz podataka se može dobiti na sljedeći način:

  • a) kolonu vrijednosti prve varijable podijelite na pola i gornju polovinu popunite nulama, donju polovinu jedinicama;
  • b) u sljedećoj koloni za drugu varijablu polovinu ponovo podijeliti na pola i popuniti grupe nula i jedinica; popunite drugu polovinu na isti način;
  • c) to radite sve dok se grupe nula i jedinica ne sastoje od jednog znaka.

Metoda 3. Koristite poznatu tabelu istinitosti za dva argumenta. Dodavanjem trećeg argumenta prvo napišite prva 4 reda tabele, kombinujući ih sa vrednošću trećeg argumenta jednakom 0, a zatim ponovo upišite ista 4 reda, ali sada sa vrednošću trećeg argumenta jednakom 1. Kao rezultat, tabela za tri argumenta će imati 8 redaka:

Na primjer, napravimo tablicu istinitosti za logičku funkciju:

Broj ulaznih varijabli u datom izrazu je tri (A, B, C)... Dakle, broj ulaznih skupova Q = 2 3 =8 .

Stupci tablice istine odgovaraju vrijednostima originalnih izraza A, B, C, srednji rezultati i ( B V C), kao i željenu konačnu vrijednost složenog aritmetičkog izraza:

  • 0 0 0 1 0 0
  • 0 0 1 1 1 1
  • 0 1 0 1 1 1
  • 0 1 1 1 1 1
  • 1 0 0 0 0 0
  • 1 0 1 0 1 0
  • 1 1 0 0 1 0
  • 1 1 1 0 1 0
  • 7.4. Logičke funkcije i njihove transformacije. Zakoni logike

Za operacije konjunkcije, disjunkcije i inverzije definisani su zakoni Booleove algebre, koji omogućavaju da se proizvedu identične (ekvivalentne) transformacije logičkih izraza.

Zakoni logike

  • 1. ¬¬ A
  • 2. A&B
  • 3. AVB
  • 4. A & (B&C)
  • 5. AV (BVC)
  • 6.A & (BVC)
  • 7. AV (B&C)
  • 8. A&A
  • 9. AVA
  • 10. AV¬A
  • 11.A & ¬A
  • 12. A&I
  • 13. AVI
  • 14.A&L
  • 15. AVL
  • 16. ¬ (A&B)
  • 17. ¬ (AVB)
  • 18.A => B

Na osnovu zakona, možete pojednostaviti složene Bulove izraze. Ovaj proces zamjene složene logičke funkcije jednostavnijom, ali njoj ekvivalentnom, naziva se minimizacija funkcije.

Primjer 1. Pojednostavite izraze tako da rezultirajuće formule ne sadrže negaciju složenih izraza.

Rješenje

Primjer 2. Minimizirajte funkciju

Da bi se izraz pojednostavio, korištene su formule za apsorpciju i adheziju.

Primjer 3. Pronađite negaciju sljedeće tvrdnje: "Ako je lekcija zanimljiva, onda niko od učenika (Miša, Vika, Sveta) neće gledati kroz prozor."

Rješenje

Označimo izjave:

Y- "Lekcija je zanimljiva";

M- "Miša gleda kroz prozor";

B- "Vika gleda kroz prozor";

C- "Sveta gleda kroz prozor."

Prilikom pojednostavljenja izraza korištena je formula za zamjenu operacija i de Morganov zakon.

Primjer 4. Učesnika zločina odredite na osnovu dvije premise: logičke kompjuterske tablice

  • 1) "Ako Ivanov nije učestvovao ili je Petrov učestvovao, onda je učestvovao Sidorov";
  • 2) "Ako Ivanov nije učestvovao, onda Sidorov nije učestvovao."

Rješenje

Sastavimo izraze:

I- "Ivanov je učestvovao u zločinu";

P- "Petrov je učestvovao u zločinu";

S- "Sidorov je učestvovao u zločinu."

Napišimo parcele u obliku formula:

Provjerimo rezultat koristeći tabelu istinitosti:


odgovor: Ivanov je učestvovao u zločinu.

Izgradnja logičke funkcije iz njene tablice istinitosti

Naučili smo kako napraviti tablicu istinitosti za logičku funkciju. Pokušajmo riješiti inverzni problem.

Razmotrimo redove u kojima je istinita vrijednost funkcije Z istinita (Z = 1). Funkcija za ovu tabelu istinitosti može biti sastavljena na sljedeći način: Z (X, Y) = (¬ X & ¬Y) V (X & ¬Y).

Svaki red u kojem je funkcija istinita (jednaka 1) odgovara zagradi, koja je konjunkcija argumenata, a ako je vrijednost argumenta O, onda je uzimamo sa negacijom. Sve zagrade su povezane operacijom disjunkcije. Rezultirajuća formula se može pojednostaviti primjenom zakona logike:

Z (X, Y)<=>((¬X & ¬Y) VX) & ((¬X & Y) V ¬Y)<=>(XV (¬X & ¬Y)) & (¬YV (¬X & ¬Y))<=>((XV¬X) & (XV ¬Y)) & ((Y¬V ¬X) & (¬YV ¬Y))<=>(1 & (XV ¬Y)) & ((¬YV ¬X) & ¬Y)<=>(XV ¬Y) & ((¬YV ¬X) & ¬Y).

Provjerite rezultirajuću formulu: napravite tablicu istinitosti za funkciju Z (X, Y).

Zapišite pravila za konstruiranje logičke funkcije prema njenoj tablici istinitosti:

  • 1. Odaberite u tabeli istinitosti one redove u kojima je vrijednost funkcije jednaka 1.
  • 2. Napišite traženu formulu u obliku disjunkcije nekoliko logičkih elemenata. Broj ovih elemenata jednak je broju odabranih linija.
  • 3. Svaki logički element u ovoj disjunkciji je napisan kao konjunkcija argumenata funkcije.
  • 4. Ako je vrijednost bilo kojeg argumenta funkcije u odgovarajućem redu tablice 0, onda ovaj argument uzimamo sa negacijom.

1. Odredite redosled radnji.

2. Odredite dimenziju tabele istinitosti.


Broj kolona je određen brojem logičkih varijabli (postoje dvije A, B) i brojem akcija (također ih ima dvije).


4. Formulirajte odgovor.
Posljednja kolona ima jednu "0" koja odgovara A jednako "1" i B jednako "0". Ispada da je ova funkcija lažna ako i samo ako je logička varijabla A istinita, a logička varijabla B lažna, što odgovara logičkoj funkciji POSLJEDICA.
Dakle, ova funkcija je jednaka logičkoj posljedici varijabli A i B: ako je A, onda je B.

Kreirajte tablicu istinitosti za logičku funkciju:


1. Odredite redosled radnji.


2. Odredite dimenziju tabele istinitosti.

"Zaglavlje" tabele sadrži dva reda - brojeve akcija i logičke operacije akcija.
Broj kolona je određen brojem logičkih varijabli (postoje dvije A, B) i brojem akcija (ima ih pet).
Broj redova u tabeli je jednak dva na stepen jednak broju logičkih varijabli - u slučaju dve varijable dobijaju se 4 reda.
3. Jedan po jedan popunjavajte kolone tabele u skladu sa logičkom funkcijom ove kolone.


4. Formulirajte odgovor.
U posljednjoj koloni "1" odgovara A jednako B, a "0" - A nejednakom B. Ispada da je ova funkcija istinita kada je A jednako B i lažna kada A nije jednako B, što odgovara na logičku funkciju IDENTITY.
Dakle, ova funkcija je jednaka logičkom IDENTITETU varijabli A i B: A je identična B.

Računarstvo: hardver personalnog računara Jašin Vladimir Nikolajevič

4.3. Logičke funkcije i tablice istinitosti

Odnosi između logičkih varijabli i logičkih funkcija u logičkoj algebri također se mogu prikazati korištenjem odgovarajućih tablica, koje se nazivaju tablice istinitosti. Tablice istine se široko koriste jer jasno pokazuju koje vrijednosti logička funkcija uzima za sve kombinacije vrijednosti svojih logičkih varijabli. Tabela istinitosti sastoji se od dva dijela. Prvi (lijevi) dio se odnosi na logičke varijable i sadrži potpunu listu mogućih kombinacija logičkih varijabli. A, B, C ... itd. Drugi (desni) dio ove tabele definiše izlazna stanja kao logičku funkciju kombinacija ulaznih veličina.

Na primjer, za logičku funkciju F = A v B v C(disjunkcija) tri logičke varijable A, B, i WITH tabela istinitosti će imati oblik prikazan na sl. 4.1. Za snimanje vrijednosti logičkih varijabli i logičke funkcije, ova tablica istine sadrži 8 redaka i 4 stupca, odnosno broj redaka za snimanje vrijednosti argumenata i funkcija bilo koje tablice istine bit će jednak 2 n, gdje P - broj argumenata logičke funkcije, a broj stupaca je n + 1.

Rice. 4.1. Tabela istinitosti za logičku funkciju F = A v V v C

Tabela istinitosti može se sastaviti za bilo koju logičku funkciju, na primjer, na Sl. 4.2 je tabela istinitosti logičke funkcije F = A? B? C(ekvivalenata).

Logičke funkcije su imenovane u skladu s tim. Postoji šesnaest logičkih funkcija za dvije binarne varijable, čija su imena data u nastavku. Na sl. 4.3 je tabela koja prikazuje logičke funkcije Ž 1, Ž 2, Ž 3, … , Ž 16 dvije logičke varijable A i V.

Funkcija F 1 = 0 i naziva se konstantna nulta funkcija ili nulti generator.

Rice. 4.2. Tabela istinitosti za logičku funkciju F = A? B? C

Rice. 4.3. Logičke funkcije F 1, F 2, F 3, ... F 16 dva argumenta A i V

Funkcija F 2 = A & B se naziva konjunkcijska funkcija.

A.

Funkcija F 4 = A A.

naziva se funkcija inhibicije logičke varijable V.

Funkcija F 6 = B naziva se funkcija ponavljanja na booleovoj varijabli V.

nazvana isključiva funkcija "ILI".

Funkcija F 8 = A v B nazvana disjunkcijska funkcija.

nazvana Pierceova funkcija.

naziva se funkcija ekvivalencije.

V.

Funkcija F 12 = B? A B? A.

naziva se funkcija negacije (inverzije) logičke varijable A.

Funkcija F 14 = A? B zove se funkcija implikacije A? B.

nazvana Schefferova funkcija.

Funkcija F 16 = 1 se naziva funkcija generatora 1.

Među gore navedenim logičkim funkcijama varijabli, postoji nekoliko logičkih funkcija koje se mogu koristiti za izražavanje drugih logičkih funkcija. Operacija zamjene jedne logičke funkcije drugom u algebri logike naziva se operacija superpozicije ili metoda superpozicije. Na primjer, Schaefferova funkcija može se izraziti korištenjem logičke disjunkcije i negacije pomoću de Morganovog zakona:

Logičke funkcije koje se mogu koristiti za izražavanje drugih logičkih funkcija korištenjem metode superpozicije nazivaju se osnovnim logičkim funkcijama. Takav skup osnovnih logičkih funkcija naziva se funkcionalno kompletan skup logičkih funkcija. U praksi se kao takav skup najčešće koriste tri logičke funkcije: konjunkcija, disjunkcija i negacija. Ako je logička funkcija predstavljena pomoću osnovnih funkcija, onda se ovaj oblik prezentacije naziva normalnim. U prethodnom primjeru, Schaefferova logička funkcija, izražena u terminima osnovnih funkcija, predstavljena je u normalnom obliku.

Koristeći skup osnovnih funkcija i njihovih odgovarajućih tehničkih uređaja koji implementiraju ove logičke funkcije, možete dizajnirati i kreirati bilo koji logički uređaj ili sistem.

Rice. 4.4. Čarobnjak za funkcije - Korak 1 od 2 Dijaloški okvir

Kao što se vidi sa sl. 4.4, kao dio logičkih funkcija programa MS Excel uključuje funkcionalno kompletan skup logičkih funkcija, koji se sastoji od sljedećih logičkih funkcija: AND (konjunkcija), OR (disjunkcija), NOT (negacija). Dakle, korištenjem funkcionalno kompletnog skupa logičkih funkcija programa MS Excel druge funkcije se mogu implementirati. Logička funkcija IF (implikacija), također uključena u logičke funkcije MS Excel, vrši logičku provjeru i, ovisno o rezultatu provjere, izvodi jednu od dvije moguće radnje. U ovom programu ima sledeći format: = IF (arg1; arg2; arg3), gde je arg1 logički uslov; arg2 je povratna vrijednost pod uvjetom da je vrijednost argumenta arg1 istinita (TRUE); arg3 je povratna vrijednost pod uvjetom da se arg1 ne evaluira (FALSE). Na primjer, ako je u proizvoljnoj ćeliji programskog lista MS Excel unesite izraz "= IF (A1 = 5;" pet ";" ne pet ")", a zatim kada unesete broj 5 u ćeliju A1 i pritisnete tipku "Enter" u ćeliji A1, riječ "pet" će automatski Kada unesete bilo koji drugi broj u ćeliju A1, u nju će biti upisana riječ "ne pet". Kao što je već napomenuto, korištenjem logičkih funkcija programa MS Excel može predstavljaju druge logičke funkcije i njihove odgovarajuće tablice istinitosti.

Mi implementiramo pomoću logičkih funkcija IF i AND modificiranu tablicu istinitosti logičke funkcije F = A & B(konjukcija), koja se sastoji od dva reda i tri kolone, što omogućava promjenu vrijednosti (0 ili 1) logičkih varijabli A i B automatski postavlja, na primjer, u ćeliju E6 vrijednost funkcije F = A & B, koje odgovaraju vrijednostima ovih logičkih varijabli. Da biste to učinili, unesite sljedeći izraz u ćeliju E6: "= IF (AND (C6; D6); 1; 0)", a zatim kada unosite u ćelije C6 i D6 vrijednosti 0 ili 1 u ćeliji E6, logička funkcija će biti izvršeno F = A & B. Rezultat ovih radnji prikazan je na sl. 4.5.

Rice. 4.5. Implementacija modificirane logičke funkcije tablice istinitosti F = A & B

Ovaj tekst je uvodni fragment. Iz knjige Računarstvo i informacione tehnologije: Bilješke s predavanja autor Tsvetkova AV

1. Logičke komande Pored sredstava aritmetičkih proračuna, sistem komandi mikroprocesora ima i sredstva logičke konverzije podataka. Logička znači takve transformacije podataka, koje se zasnivaju na formalnim pravilima

Iz knjige Računar 100. Početak rada sa operativnim sistemom Windows Vista autor Zozulya Yuri

Logičke funkcije u Excelu Prilikom izračunavanja često morate odabrati formulu u zavisnosti od specifičnih uslova. Na primjer, prilikom obračuna plaća mogu se primijeniti različite naknade u zavisnosti od dužine radnog staža, kvalifikacija ili specifičnih uslova rada koji se obračunavaju

Iz Excel radne knjige. Multimedijalni kurs autor Medinov Oleg

Logičke funkcije Logičke funkcije se mogu koristiti u matematičkim, inženjerskim proračunima ili u uporednoj analizi podataka. Pogledat ćemo jednu Booleovu funkciju koristeći IF funkciju kao primjer. Sa funkcijom IF možete kreirati Boolean izraz i

Iz knjige Computer Science: Personal Computer Hardware autor Jašin Vladimir Nikolajevič

4.1. Logičke varijable i logičke operacije Informacije (podaci, mašinske instrukcije, itd.) u računaru su predstavljene u binarnom brojevnom sistemu, koji koristi dve cifre - 0 i 1. Električni signal koji prolazi kroz elektronska kola i povezuje

Iz knjige PHP Author's Reference

Bulove funkcije za određivanje tipa varijable is_scalar Provjerava da li je varijabla jednostavna Sintaksa: bool is_scalar (mješoviti var) Vraća true ako je var skalarnog tipa (brojevi, nizovi, boolenovi), ali nije složen (nizovi ili objekti). Is_null Provjerava da li je

Iz knjige HTML 5, CSS 3 i Web 2.0. Izrada modernih web stranica autor Dronov Vladimir

Logički operatori Logički operatori izvode operacije nad Booleovim vrijednostima. Svi su dati u tabeli. 14.5. I u tabeli. 14.6 i 14.7 prikazani su rezultati ovih operatora.Glavno područje primjene booleovih operatora su izrazi za poređenje (o njima vidi.

Iz XSLT knjige autor Holzner Stephen

Logičke funkcije XPath XPath također podržava sljedeći skup Bulovih funkcija: boolean (). Pretvara argument u logičku vrijednost; false (). Vraća false (false); lang (). Provjerava da li je jezik postavljen u atributu xml: lang isti kao jezik koji je proslijeđen funkciji; ne ().

Iz knjige XSLT Technology autor Valikov Aleksej Nikolajevič

Bulove operacije XSLT ima dvije logičke operacije, ili i i. Ove operacije su binarne, odnosno svaka od njih je definirana za dva operanda. Ako operandi nisu logički, oni su implicitno logički. Semantika ili i i je očigledna - oni su

Iz knjige Programski jezik C za lični računar autor Bochkov S.O.

Logičke operacije Logičke operacije izvode logičke funkcije I (&&) i OR (||) na svojim operandima. Operandi logičkih operacija mogu biti cijelog broja, plutajućeg tipa ili pokazivači. Tipovi prvog i drugog operanda mogu biti različiti. Uvek prvi

Iz knjige Kratak uvod u programiranje u Bashu autor Rodriguez Harold

Logičko I i ILI Već ste vidjeli šta su kontrolne strukture i kako ih koristiti. Postoje još dva načina za postizanje istih zadataka. To su logički I - "&&" i logički "OR" - "|| ". Boolean AND se koristi na sljedeći način: izraz_1 && izraz_2

Iz knjige Firebird VODIČ ZA DIZAJNER BAZE PODATAKA od Borri Helen

Logički operatori Firebird pruža tri logička operatora koji mogu raditi sa drugim predikatima na različite načine * NE specificira negaciju pojma za pretraživanje na koji se odnosi. Ima najveći prioritet * AND stvara složeni predikat, spaja to dvoje

Iz knjige C Jezik - vodič za početnike od Prata Stephen

Razumijevanje tačnog i netačnog Semantički, ako predikat vraća "neizvjesnost", on nije ni istinit ni lažan. U SQL-u, ovo rješava samo izjave kao istinite ili netačne - izjava koja se ne procjenjuje kao istinita se tretira kao

Iz knjige Oporavak podataka 100% autor Taškov Petr Andrejevič

IV. Logičke operacije Logičke operacije se općenito smatraju operandima. Operacija! ima jedan operand na desnoj strani. Ostale operacije imaju dva operanda: jedan lijevo i jedan desno. && Boolean AND: rezultat operacije je istinit,

Iz C++ knjige za početnike autor Lippman Stanley

Logički prekršaji Ako je disk fizički ispravan, ali izgleda da je prazan ili neformatiran, a podaci na njemu nisu vidljivi operativnom sistemu, tada su u ovom slučaju oštećene servisne tablice sistema datoteka. Podaci gotovo uvijek ostaju uključeni

Iz knjige Opis jezika PascalABC.NET autor RuBoard tim

12.3.4. Objekti logičke funkcije Objekti logičke funkcije podržavaju "logičke I" operacije (vraća true ako su oba operanda tačna, - koristi && operator povezan s tipom Type), "logičko OR" (vraća true ako je barem jedan od operanada istinit, -

Iz knjige autora

Bulove operacije Bulove operacije uključuju binarne operacije i, ili, i xor, kao i unarnu operaciju not, koje imaju logičke operande i vraćaju logičku vrijednost. Ove operacije se pokoravaju standardnim pravilima logike: a i b su istiniti samo kada su a i b istiniti, a ili b istinito

Odaberite linije gdje
i ispisujemo konjunkcije svih varijabli, štaviše, ako je varijabla u ovom skupu jednaka 1, onda je zapisujemo, a ako je varijabla = 0, onda je njena negacija.

Za ovaj primjer





konjunkcija ovih disjunkcija će biti željena formula:

definicija: Konjunkcija pozvao osnovno ako su sve varijable uključene u njega različite. Broj slova uključenih u elementarnu konjunkciju ili elementarnu disjunkciju naziva se rang.

Broj 1 se smatra elementarnom konjunkcijom ranga 0. Varijabla se smatra elementarnom konjunkcijom ili elementarnom disjunkcijom ranga 1. Broj 0 se smatra elementarnom disjunkcijom ranga 0. Bilo koja konjunkcija varijabli koja nije identično lažna može biti svedeno na elementarni oblik, a svaka disjunkcija slova koja nije identično istinita, također se može svesti na elementarni oblik. Za to je potrebno primijeniti svojstva komutativnosti, idempotencije i asocijativnosti konjunkcije i disjunkcije.

Strogo je dokazano da se bilo koja formula Bulove algebre može izraziti pomoću operacija , &, . Intuitivno je ova činjenica očigledna, prisjetimo se algoritma za sastavljanje formule prema tablici istinitosti. Međutim, mi koristimo samo ove operacije. Ovaj oblik zapisa naziva se disjunktivni normalni oblik(DNF). Ovo je neka vrsta mehanizma za normalizaciju formula logičke algebre.

definicija: DNF Je disjunkcija različitih elementarnih veznika (tj., svaka konjunkcija se sastoji od elementarnih iskaza ili njihovih negacija).

CNF se definiše slično - konjunktivni normalni oblik.

definicija: Ako u DNF-u sve elementarne konjukcije imaju isti rang jednak broju varijabli od kojih ovisi DNF, onda se naziva savršeno (SDNF).

Teorema. Za bilo koju funkciju koja nije identično lažna, postoji i jedinstveni SDNF.

Posljedica ... Bilo koja Booleova funkcija koja nije identično lažna može se predstaviti kao superpozicija &, , , a negacija se primjenjuje samo na varijable.

definicija: Sistem logičkih operacija naziva se funkcionalno potpun ako se pomoću ovih operacija i konstanti ovog sistema može predstaviti bilo koja funkcija Bulove algebre.

Sistemi (&, , ); (, ); (&, ), (/) - funkcionalno su kompletni

(&, ) - funkcionalno nepotpun.

Ove činjenice ćemo prihvatiti bez dokaza, a prilikom rješavanja problema pokušaćemo da predstavimo bilo koju formulu koristeći (&, , ). Kasnije ćemo detaljnije govoriti o pitanju funkcionalne kompletnosti i nepotpunosti operativnog sistema.

Tema 1.7. Metode pojednostavljenja logičkih izraza. Metode rješavanja logičkih problema.

Razmotrimo primjer rješavanja logičkog problema.

Primjer :

Nakon razgovora o sastavu učesnika ekspedicije, odlučeno je da moraju biti ispunjena dva uslova.

    Ako Arbuzov ode, onda bi trebali otići Brjukvin ili Višnjevski

    Ako Arbuzov i Višnjevski odu, onda će Brjuvin otići

Sastavite logičku formulu za donošenje odluke u simboličkom obliku, pojednostavite rezultirajuću formulu i formulirajte novi uvjet za formiranje ekspedicije koristeći je.

Hajde da uvedemo varijable i njihove odgovarajuće elementarne iskaze.

- Arbuzov će otići

- Bryukvin će otići

- Višnjevski će otići

Tada će razvijeni uslovi za formiranje ekspedicije izgledati ovako:


Hajde da sastavimo opštu formulu i pojednostavimo izraz

one. ako Arbuzov ode, Brjuvin će otići.

primjer:

Ako sutra bude lijepo, idemo na plažu ili u šumu. Hajde da napravimo formulu našeg ponašanja za sutra.

- lijepo vrijeme

- ići ćemo na plažu

- Idemo u šumu

Hajde sada da napravimo negaciju ove fraze.

onda. dobijamo izreku „Sutra će biti lijepo vrijeme, a nećemo ići u šumu i na plažu.

Zainteresovani mogu napraviti tabelu istinitosti i provjeriti ovu izjavu.

Primjer :

Brown, John i Smith su uhapšeni zbog sumnje da su počinili zločin. Jedan od njih je ugledni starac u gradu, drugi je funkcioner, a treći poznati prevarant. Tokom istrage, starac je govorio istinu, prevarant je lagao, a treći pritvorenik je u jednom slučaju govorio istinu, au drugom je lagao.

Evo šta su rekli:

Braun: Uspeo sam. Nije Johnova krivica. (B & D)

John: Nije Brownova krivica. Odmetnik Smith. (B&C)

Smith: Nisam ja kriv. Krivi smeđu (C & B)

Opišimo ove izjave formalno:

- zločin je počinio Brown

- zločin je počinio Džon

- zločin je počinio Smith

Zatim se njihove riječi opisuju sljedećim izrazima:

smeđa:

John:

Smith:

Jer prema uslovima problema, dva od ovih & su netačna, a jedan je tačan

Hajde da sastavimo tabelu istine


Ostaje samo slučaj 2, tj. zločinac Smith, a obje njegove izjave su lažne.

dakle - lažno i - tačno

= 1 - Jovan dragi starče

Ostaje da je Brown službenik, i od tada - laćno, onda - tačno.

Koristeći zakone i identitete Bulove algebre, možete pojednostaviti logičke izraze.

Primjer :

vježba:

Svrha usluge... Online kalkulator je dizajniran za pravljenje tabele istinitosti za logički izraz.
Tabela istine - tabela koja sadrži sve moguće kombinacije ulaznih varijabli i njihovih odgovarajućih izlaznih vrijednosti.
Tabela istinitosti sadrži 2 n reda, gdje je n broj ulaznih varijabli, a n + m su stupci, gdje su m izlazne varijable.

Uputstvo. Prilikom unosa sa tastature koristite sljedeću notaciju: Na primjer, logički izraz abc + ab ~ c + a ~ bc mora se unijeti ovako: a * b * c + a * b = c + a = b * c
Koristite ovu uslugu za unos podataka u obliku logičkog dijagrama.

Pravila za unos logičke funkcije

  1. Koristite + umjesto v (disjunkcija, OR).
  2. Ne morate prethoditi logičkoj funkciji s oznakom funkcije. Na primjer, umjesto F (x, y) = (x | y) = (x ^ y), samo trebate unijeti (x | y) = (x ^ y).
  3. Maksimalan broj varijabli je 10.

Dizajn i analiza kompjuterskih logičkih kola vrši se uz pomoć posebnog dijela matematike - algebre logike. U algebri logike, mogu se razlikovati tri glavne logičke funkcije: "NE" (negacija), "AND" (konjunkcija), "ILI" (disjunkcija).
Za kreiranje bilo kojeg logičkog uređaja potrebno je utvrditi ovisnost svake od izlaznih varijabli o radnim ulaznim varijablama, takva ovisnost se zove funkcija prebacivanja ili funkcija logičke algebre.
Funkcija logičke algebre naziva se potpuno definirana ako su data sva 2 n njenih vrijednosti, gdje je n broj izlaznih varijabli.
Ako nisu definirane sve vrijednosti, kaže se da je funkcija djelomično definirana.
Uređaj se naziva logičkim ako je njegovo stanje opisano pomoću funkcije logičke algebre.
Sljedeće metode se koriste za predstavljanje funkcije algebre logike:

  • verbalni opis je oblik koji se koristi u početnoj fazi projektovanja i ima uslovnu reprezentaciju.
  • opis funkcije algebre logike u obliku tablice istinitosti.
  • opis funkcije algebre logike u obliku algebarskog izraza: koriste se dva algebarska oblika FAL-a:
    a) DNF - disjunktivni normalni oblik Je logički zbir elementarnih logičkih proizvoda. DNF se dobija iz tabele istinitosti prema sledećem algoritmu ili pravilu:
    1) u tabeli su odabrani oni redovi varijabli za koje je izlazna funkcija = 1.
    2) za svaki red varijabli napisan je logički proizvod; gdje su varijable = 0 upisane sa inverzijom.
    3) rezultirajući proizvod se logično sumira.
    Fdnf = X 1 * X 2 * X 3 ∨ X 1 x 2 X 3 ∨ X 1 X 2 x 3 ∨ X 1 X 2 X 3
    DNF se naziva savršenim ako sve varijable imaju isti rang ili red, tj. svaki rad mora uključivati ​​sve varijable u direktnom ili inverznom obliku.
    b) CNF - konjunktivna normalna forma Je logički proizvod elementarnih logičkih suma.
    CNF se može dobiti iz tablice istinitosti koristeći sljedeći algoritam:
    1) odabrati skupove varijabli za koje je izlazna funkcija = 0
    2) za svaki skup varijabli zapisujemo elementarnu logičku sumu, a varijable = 1 zapisujemo sa inverzijom.
    3) primljeni iznosi se logički množe.
    Fscnf = (X 1 V X 2 V X 3) ∧ (X 1 V X 2 V X 3) ∧ (X 1 V X 2 V X 3) ∧ (X 1 V X 2 V X 3)
    CNF se naziva savršenim ako sve varijable imaju isti rang.
U algebarskom obliku, možete izgraditi sklop logičkog uređaja koristeći logička vrata.

Slika 1 - dijagram logičkog uređaja

Definisane su sve Booleove operacije tabele istine vrijednosti. Tabela istinitosti određuje rezultat operacije za sve je moguće x logičke vrijednosti originalnih izjava. Broj opcija koje odražavaju rezultat primjene operacija ovisit će o broju iskaza u logičkom izrazu. Ako je broj iskaza u logičkom izrazu N, tada će tabela istinitosti sadržavati 2 N reda, budući da postoje 2 N različite kombinacije mogućih vrijednosti argumenata.

Operacija NE - logička negacija (inverzija)

Logička operacija se NE primjenjuje na jedan argument, koji može biti jednostavan ili složen logički izraz. Rezultat operacije NIJE sljedeći:
  • ako je originalni izraz istinit, onda će rezultat njegove negacije biti lažan;
  • ako je originalni izraz lažan, tada će rezultat njegove negacije biti istinit.
Sljedeće konvencije NISU prihvaćene za operaciju negacije:
ne A, Ā, ne A, ¬A,!
Rezultat operacije negacije NIJE određen sljedećom tablicom istinitosti:
Ane A
0 1
1 0

Rezultat operacije negacije je istinit kada je originalni iskaz lažan, i obrnuto.

ILI operacija - logičko sabiranje (disjunkcija, unija)

Logička operacija ILI obavlja funkciju kombinovanja dva izraza, koji mogu biti ili jednostavan ili složen logički izraz. Izjave koje su izvor za logičku operaciju nazivaju se argumenti. Rezultat operacije OR je izraz koji će biti istinit ako i samo ako će barem jedan od originalnih izraza biti istinit.
Primijenjene oznake: A ili B, A V B, A ili B, A || B.
Rezultat operacije OR određen je sljedećom tablicom istinitosti:
Rezultat operacije OR je istinit kada je A istinito, ili je B istinito, ili su i A i B istiniti u isto vrijeme, i netačan kada su argumenti A i B lažni.

I operacija - logičko množenje (konjukcija)

Logička I operacija obavlja funkciju presjeka dvaju iskaza (argumenata), koji mogu biti i jednostavan i složen logički izraz. Rezultat operacije AND je izraz koji će biti istinit ako i samo ako su oba originalna izraza tačna.
Primijenjene oznake: A i B, A Λ B, A & B, A i B.
Rezultat operacije I određen je sljedećom tablicom istinitosti:
ABA i B
0 0 0
0 1 0
1 0 0
1 1 1

Rezultat operacije AND je tačan ako i samo ako su izjave A i B istinite u isto vrijeme, a netačne u svim ostalim slučajevima.

Operacija "AKO-ONDA" - logično praćenje (implikacija)

Ova operacija povezuje dva jednostavna logička izraza, od kojih je prvi uslov, a drugi je posledica ovog uslova.
Primijenjene oznake:
ako je A, onda B; A podrazumijeva B; ako je A onda B; A → B.
Tabela istine:
ABA → B
0 0 1
0 1 1
1 0 0
1 1 1

Rezultat sljedeće operacije (implikacija) je netačan samo kada je premisa A tačna, a zaključak B (posljedica) lažan.

Operacija "A ako i samo ako B" (ekvivalencija, ekvivalencija)

Primijenjena oznaka: A ↔ B, A ~ B.
Tabela istine:
ABA↔B
0 0 1
0 1 0
1 0 0
1 1 1

Operacija "Dodaj mod 2" (XOR, isključiva ili, stroga disjunkcija)

Primijenjena oznaka: A XOR B, A ⊕ B.
Tabela istine:
ABA⊕B
0 0 0
0 1 1
1 0 1
1 1 0

Rezultat ekvivalencije operacije je istinit samo ako su A i B istovremeno istiniti ili netačni.

Boolean prioritet

  • Radnje u zagradama
  • Inverzija
  • Veznik (&)
  • Disjunkcija (V), ekskluzivno OR (XOR), zbroj mod 2
  • implikacija (→)
  • Ekvivalencija (↔)

Savršena disjunktivna normalna forma

Savršena disjunktivna normalna forma formule(SDNF) je formula ekvivalentna njoj, koja je disjunkcija elementarnih konjunkcija sa sljedećim svojstvima:
  1. Svaki logički član formule sadrži sve varijable uključene u funkciju F (x 1, x 2, ... x n).
  2. Svi logički termini formule su različiti.
  3. Niti jedan logički termin ne sadrži varijablu i njenu negaciju.
  4. Nijedan logički termin u formuli ne sadrži istu varijablu dvaput.
SDNF se može dobiti bilo korištenjem tablica istinitosti ili korištenjem ekvivalentnih transformacija.
Za svaku funkciju, SDNF i SKNF su jedinstveno definirani do permutacije.

Savršena konjunktivna normalna forma

Formula savršenog konjunktivnog normalnog oblika (SKNF) to je formula ekvivalentna njoj, koja je konjunkcija elementarnih disjunkcija, koja zadovoljava svojstva:
  1. Sve elementarne klauzule sadrže sve varijable uključene u funkciju F (x 1, x 2, ... x n).
  2. Sve elementarne disjunkcije su različite.
  3. Svaka elementarna disjunkcija sadrži varijablu jednom.
  4. Nijedna elementarna disjunkcija ne sadrži varijablu i njenu negaciju.

Top srodni članci