¿Cómo convertir una expresión de SOP a POS y viceversa en álgebra booleana?

9

¿Cómo convertir una expresión de Suma de Productos (SOP) a la forma de Producto de Sumas (POS) y viceversa en Álgebra Booleana?

por ejemplo: F = xy '+ yz'

jskroch
fuente
8
En realidad, esto está muy relacionado con la lógica digital. Es equivalente a decir cómo cambio un circuito que consiste en un grupo de puertas que alimentan una puerta o una que consiste en un grupo de puertas que alimentan una puerta.
Chris Stratton
1
¿Qué es SOP y POS?
AndrejaKo
3
SOP = suma de productos. POS = producto de sumas, por ejemplo (x + y) (~ x + ~ y). "OR" lógico es una suma, mientras que "AND" es un producto.
Eryk dom
Esto ciertamente se enseña en los cursos de lógica digital de pregrado, pero tyblu tiene razón en que esto pertenece a las matemáticas SE. @TheLameProgrammer, busque mapas de Karnaugh (mapas K) y el teorema de DeMorgan.
Eryk dom
2
... usar las leyes de DeMorgan? Además, el ejemplo proporcionado en la pregunta no es un SOP canónico porque todas las variables deben estar presentes en todos los términos, ¿verdad?
vicatcu

Respuestas:

15

Creo que la forma más fácil es convertir a un k-map, y luego obtener el POS. En tu ejemplo, tienes:

  \ xy
 z \  00    01    11    10
    +-----+-----+-----+-----+
 0  |     |  x  |  x  |  x  |
    +-----+-----+-----+-----+
 1  |     |     |     |  x  |
    +-----+-----+-----+-----+

En este caso, excluir la columna izquierda da (x + y), y excluir los dos cuadros del medio inferior da (z '+ y'), dando una respuesta de (x + y) (z '+ y')

FryGuy
fuente
Pero debería ser F = (x + y) (y '+ z').
Eryk dom
Vaya, tienes razón. Ha pasado un tiempo desde que hice k-maps, así que lo leí mal. He arreglado la respuesta.
FryGuy
5

F = xy '+ yz' está en forma SOP

Esto también se puede resolver utilizando técnicas de álgebra booleana simple como:

Aplicando la Ley Distributiva : - F = ( xy ') + y . z '

F = ( xy ' + y) . ( xy '+ z') que ahora se convierte a la forma POS .

Syed Fahad
fuente
4

Otro método es simplemente tomar el cumplido de la expresión dada:

Como: xy '+ yz'

Tomando su cumplido:
(xy '+ yz') '

= (xy ')'. (yz ')' {Usando la Ley De Morgans (a + b) '= a'.b'}

= (x '+ y) (y' + z)

Que también es forma POS ...!

Syed Fahad
fuente
66
Esto le da un POS, pero es todo lo contrario de la expresión dada.
Nirmal Seneviratne
2

Use la ley de DeMorgan dos veces.

Aplica la ley una vez:

F' = (xy' + yz')'
   = (xy')'(yz')'
   = (x'+y)(y'+z)
   = x'y' + x'z + yy' + yz
   = x'y' + x'z + yz

Aplicar de nuevo:

F=F''
 =(x'y'+x'z+yz)'
 =(x'y')'(x'z)'(yz)'
 =(x+y)(x+z')(y'+z')
 =(x+y)(y'+z')

Verifique la respuesta usando wolframalpha.com

xy '+ yz'

(x + y) (y '+ z')

Editar: la respuesta se puede simplificar un paso más mediante la ley de consenso de álgebra booleana

wannik
fuente
1

Si desea verificar su trabajo después de hacerlo a mano, puede usar un programa como Logic Friday .

mjh2007
fuente
1

Está en un mínimo / Suma de productos [SOP] y un máximo / términos de Producto de sumas [POS], por lo que podemos usar un mapa de Karnaugh (mapa K) para ello.

Para SOP, emparejamos 1 y escribimos la ecuación de emparejamiento en SOP, mientras que eso se puede convertir en POS emparejando 0 y escribiendo la ecuación en forma de POS.

XyzX+y+z .

dipen
fuente
0

Vea el procedimiento en Forma normal conjuntiva: conversión de lógica de primer orden .

Este procedimiento cubre el caso más general de la lógica de primer orden, pero la lógica proposicional es un subconjunto de la lógica de primer orden.

Simplificando al ignorar la lógica de primer orden, es:

  • Eliminar implicaciones
  • Mueva las negaciones hacia adentro aplicando la ley de DeMorgan
  • Distribuir disyunciones sobre conjunciones

Obviamente, si su entrada ya está en DNF (también conocido como SOP), entonces obviamente el primer y el segundo paso no se aplican.

Doug McClean
fuente
0

Sea x = ab'c + bc '

x '= (ab'c + bc') '

Según el teorema de DeMorgan, x '= (a' + b + c ') (b' + c)

x '= a'b' + a'c + bb '+ bc + c'b' + c'c

x '= a'b' + a'c + bc + c'b '

Empleando el teorema de DeMorgan nuevamente, x = (a'b '+ a'c + bc + c'b') '

x = (a + b) (a + c ') (b' + c ') (c + b)

shivani singh
fuente
Bienvenido a Electrical Engineering StackExchange. Si proporciona una nueva respuesta a una pregunta anterior, debe dejar en claro lo que ha agregado a las respuestas anteriores o lo que era incorrecto en las respuestas anteriores. Por cierto, ¿no es tu segunda línea en forma POS? El OP no preguntó sobre la reducción de la ecuación, por lo que el resto de su respuesta podría ser confusa.
Joe Hass
Esto es correcto.
Nirmal Seneviratne