[Reti Logiche] Semplificare funzione boolena con teoremi

Messaggioda Sacio » 26/10/2021, 11:40

Buongiorno a tutti, ho questa espressione booleana definita come

$ F=WX+bar(Y)Z+Wbar(X)Y+bar(W)XYZ+Wbar(X)bar(Y)bar(Z) $

e mi viene richiesto di semplificarla attraverso i teoremi dell'algebra booleana indicandone quali teoremi/identità utilizzati.
Al di la di qualche manipolazione sterile espandendo/raccogliendo qualche letterale attraverso la proprietà distributiva non riesco ad ottenere una semplificazione importante

grazie dell'aiuto :smt023
Sacio
Starting Member
Starting Member
 
Messaggio: 14 di 33
Iscritto il: 20/05/2021, 16:49

Re: [Reti Logiche] Semplificare funzione boolena con teoremi

Messaggioda megas_archon » 26/10/2021, 12:37

Cosa significa "semplificare"? Qual è la forma "più semplice possibile"? Minima rispetto alla lunghezza? Rispetto al numero di operazioni utilizzate? Rispetto al numero di parentesi?
Avatar utente
megas_archon
Senior Member
Senior Member
 
Messaggio: 87 di 1318
Iscritto il: 13/06/2021, 20:57

Re: [Reti Logiche] Semplificare funzione boolena con teoremi

Messaggioda Sacio » 26/10/2021, 13:12

mi spiace ma il testo recita solamente "semplificare indicando quali teoremi, proprietà e/o identità sono stati utilizzati"
Sacio
Starting Member
Starting Member
 
Messaggio: 15 di 33
Iscritto il: 20/05/2021, 16:49

Re: [Reti Logiche] Semplificare funzione boolena con teoremi

Messaggioda apatriarca » 27/10/2021, 21:14

Hai provato a scrivere la tabella della verità della tua espressione? È spesso un ottimo modo per comprendere meglio come si comporta la tua espressione e avere delle idee su quale potrebbe essere il risultato finale. Non è obbligatorio, ma è molto più facile sapere cosa cercare di fare quando si ha qualche idea di come proseguire.

Per esempio potresti osservare che ogni volta che \(W\) è vera, anche \(F\) è vera. Dovrai quindi avere qualcosa nella forma \(F(W, X, Y, Z) = W + G(X, Y, Z).\) Per prima cosa cerchiamo di avere tutti i termini con \(W\) o \(\overline{W}\). Possiamo quindi fare il passaggio \(\overline{Y}\,Z = (W + \overline{W})\,\overline{Y}\,Z\) per la regola del terzo escluso \(x + \overline{x} = 1\). A questo punto possiamo raccogliere tutti i termini usando la regola distributiva
\[ W\,(X + \overline{Y}\,Z + \overline{X}\,Y + \overline{X}\,\overline{Y}\,\overline{Z}) + \overline{W}\,(\overline{Y}\,Z + X\,Y\,Z) \]
Possiamo a questo punto usare la regola \(x + \overline{x}\,y = x + y\) (deriva dalla legge distributiva e dalla regola del terzo escluso in quanto \(x + \overline{x}\,y = (x + \overline{x})\,(x + y) = x + y\)) più volte nell'espressione che abbiamo raccolto per \(W\) ottenendo:
\[ X + \overline{Y}\,Z + \overline{X}\,Y + \overline{X}\,\overline{Y}\,\overline{Z} = X + Y + Z + \overline{Z} = 1 + X + Y = 1. \]
Abbiamo quindi ottenuto (applicando di nuovo la regola precedente per eliminare il termine \(\overline{W}\))
\[ F(W, X, Y, Z) = W + \overline{Y}\,Z + X\,Y\,Z \]
A questo punto possiamo raccogliere \(Z\) e applicare nuovamente la stessa regola usata già più volte per ottenere
\[ F(W, X, Y, Z) = W + Z\,(\overline{Y} + X\,Y) = W + Z\,(\overline{Y} + X). \]
A questo punto non si può fare alcuna ulteriore semplificazione e siamo quindi arrivati a quello che probabilmente ti chiedeva il tuo esercizio.
apatriarca
Moderatore
Moderatore
 
Messaggio: 5611 di 10436
Iscritto il: 08/12/2008, 20:37
Località: Madrid


Torna a Informatica

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite