Maxtermini
Un maxtermine è un'espressione booleana formate dall'OR logico di variabili booleane $ x_i $ che rende falsa (y=0) la funzione booleana, dove ognuna delle variabili può essere presente nella sua forma diretta $ x_1 $ se è 0 o complementata $ \overline{x_1} $ se è 1.
Ogni maxtermine rappresenta una condizione specifica sotto cui l'output di una funzione booleana è falso.
In pratica, i maxtermini sono utilizzati per descrivere le condizioni in cui determinati circuiti o funzioni logiche restituiranno un risultato di "0" (falso).
Esempio
Prendiamo come esempio una funzione booleana con tre variabili in entrata: $ x_1 $, $ x_2 $, e $ x_3 $.
$$ y = f(x_1,x_2,x_3) $$
Le variabili $ x_1 , x_2 , x_3 $ sono gli ingressi della funzione mentre la variabile $ y $ è l'uscita.
Questa funzione ha per ipotesi la seguente tavola di verità:
$$ \begin{array}{|c|c|c|c|}
\hline
m & x_1 & x_2 & x_3 & y \\
\hline
m_1 & 0 & 0 & 0 & 1 \\
m_2 & 0 & 0 & 1 & 0 \\
m_3 & 0 & 1 & 0 & 0 \\
m_4 & 0 & 1 & 1 & 1 \\
m_5 & 1 & 0 & 0 & 0 \\
m_6 & 1 & 0 & 1 & 1 \\
m_7 & 1 & 1 & 0 & 1 \\
m_8 & 1 & 1 & 1 & 0 \\
\hline
\end{array} $$
Per trovare i maxtermini di una funzione booleana data la sua tavola di verità, dobbiamo identificare le righe in cui l'output della funzione \( y \) è falso (0).
Nella tavola di verità, dobbiamo quindi guardare alle righe dove \( y = 0 \).
$$
\begin{array}{|c|c|c|c|c|}
\hline
m & x_1 & x_2 & x_3 & y \\
\hline
m_2 & 0 & 0 & 1 & 0 \\
m_3 & 0 & 1 & 0 & 0 \\
m_5 & 1 & 0 & 0 & 0 \\
m_8 & 1 & 1 & 1 & 0 \\
\hline
\end{array}
$$
Ora, costruiamo i maxtermini corrispondenti a queste combinazioni di input:
- In \( m_2 \) (0, 0, 1) l'uscita ( y \) della funzione è falsa quando \( x_1 = 0 \), \( x_2 = 0 \), e \( x_3 = 1 \). Quindi, il maxtermine corrispondente è la somma logica \( M_2 = x_1 + x_2 + \overline{x_3} \).
Ricorda che nel caso dei maxtermini devi scrivere la variabile in forma diretta $ x_i $ quando è uguale a 0 e in forma complementata (negata) $ \overline{x_i} $ quando è uguale a 1. In questo caso \( x_1 \) e \( x_2 \) sono uguali a 0, quindi devi scriverle in forma diretta, mentre \( x_3 \) è uguale a 1, quindi va scritta nella forma complementata $ \overline{x_3} $.
- In \( m_3 \) (0, 1, 0) l'uscita ( y \) della funzione è falsa quando \( x_1 = 0 \), \( x_2 = 1 \), e \( x_3 = 0 \). Il maxtermine corrispondente è la somma logica \( M_3 x_1 + \overline{x_2} + x_3 \).
- In \( m_5 \) (1, 0, 0) l'uscita ( y \) della funzione è falsa quando \( x_1 = 1 \), \( x_2 = 0 \), e \( x_3 = 0 \). Il maxtermine corrispondente è \( M_5 = \overline{x_1} + x_2 + x_3 \).
- In \( m_8 \) (1, 1, 1) l'uscita ( y \) della funzione è falsa quando \( x_1 = 1 \), \( x_2 = 1 \), e \( x_3 = 1 \). Il maxtermine corrispondente è \( M_8 = \overline{x_1} + \overline{x_2} + \overline{x_3} \).
Quindi, i maxtermini della funzione booleana data sono:
$$ M_2 = x_1 + x_2 + \overline{x_3} $$
$$ M_ 3 = x_1 + \overline{x_2} + x_3 $$
$$ M_5 = \overline{x_1} + x_2 + x_3 $$
$$ M_8 = \overline{x_1} + \overline{x_2} + \overline{x_3} $$
Questi maxtermini definiscono tutte le condizioni specifiche sotto le quali l'output della funzione booleana è falso.
Se moltiplichi tutti i maxtermini della funzione booleana, l'espressione risultante sarà la negazione della funzione originale.
$$ \overline{y} = M_2 \cdot M_3\cdot M_5 \cdot M_8 $$
Sostituendo ogni maxtermine con l'espressione corrispondente.
$$ \overline{y} = ( x_1 + x_2 + \overline{x_3} ) \cdot ( x_1 + \overline{x_2} + x_3 ) \cdot ( \overline{x_1} + x_2 + x_3 ) \cdot ( \overline{x_1} + \overline{x_2} + \overline{x_3} ) $$
Ciò accade perché un maxtermine diventa vero (1) in tutti i casi in cui la funzione è falsa.
Moltiplicando questi maxtermini insieme, si crea una condizione in cui l'espressione complessiva è vera solo quando tutti i maxtermini sono veri contemporaneamente, il che non accade mai nella realtà della funzione originale, rendendo così l'espressione complessiva falsa quando la funzione è vera, e viceversa.