21
Algebra booleana y Mapas de Karnaugh Lógica matemática Integrantes Guarniz Cueva Morales Castillo Rodríguez Portal Rojas Guevara Salazar Gamboa Zarate Alvarado

Algebra Booleana y Mapas de Karnaugh

Embed Size (px)

Citation preview

Page 1: Algebra Booleana y Mapas de Karnaugh

Algebra booleana y Mapas de KarnaughLógica matemática

Integrantes

Guarniz CuevaMorales CastilloRodríguez PortalRojas GuevaraSalazar GamboaZarate Alvarado

Page 2: Algebra Booleana y Mapas de Karnaugh

ÁLGEBRA DE BOOLE

Álgebra de Boole en informática y matemática, es una estructura algebraica que esquematiza las operaciones lógicas Y, O , NO y Si (AND,OR,NOT,IF), así como el conjunto de operaciones unión, intersección y complemento.

Definición

Un álgebra de Boole es una tripleta . Donde , y son operaciones

binarias y también operaciones internas en y además para cualquier se cumplen los siguientes axiomas:

1. Propiedad conmutativa:

2. Propiedad asociativa:

3. Propiedad distributiva:

4. Propiedad de los neutros. Existen tales que:

Page 3: Algebra Booleana y Mapas de Karnaugh

5. Se cumple la propiedad: tal que:

Algunos autores al definir un Algebra de Boole, prescinden del axioma o Ley Asociativa porque consideran que es una propiedad demostrable a partir de los restantes axiomas y propiedades ya demostradas. Por ejemplo, puede demostrarse la propiedad o Ley Asociativa a partir de los restantes axiomas y de la propiedad o Ley e Absorción.3

Como retículo

Como retículo presenta las siguientes propiedades, las leyes principales son estas:

1. Ley de Idempotencia:

2. Ley de Asociatividad:

3. Ley de Conmutatividad:

4. Ley de Cancelativo

5. Ley de Absorción

0 1 1

1 0 1

0 1 0

1 0 0

Page 4: Algebra Booleana y Mapas de Karnaugh

Operaciones

Hemos definido el conjunto A = {1,0} como el conjunto universal sobre el que se aplica el álgebra de Boole, sobre estos elementos se definen varias operaciones, veamos las más fundamentales:

Operación suma

La operación suma (+) asigna a cada par de valores a, b de A un valor c de A:

Su equivalencia en lógica de interruptores es un circuito de dos interruptores en paralelo.

Si uno de los valores de a o b es 1, el resultado será 1, es necesario que los dos sumandos sean 0, para que el resultado sea 0.

Operación producto

La operación producto ( ) asigna a cada par de valores a, b de A un valor c de A:

a b a + b

0 0 0

0 1 1

1 0 1

1 1 1

a b a b

0 0 0

0 1 0

1 0 0

1 1 1

Page 5: Algebra Booleana y Mapas de Karnaugh

Esta operación en lógica de interruptores es un circuito en serie de dos interruptores

Solo si los dos valores a y b son 1, el resultado será 1, si uno solo de ellos es 0 el resultado será 0.

Operación negación

La operación negación presenta el opuesto del valor de a:

Un interruptor inverso equivale a esta operación:

Operaciones combinadas

Partiendo de estas tres operaciones elementales se pueden realizar otras más complejas, que podemos representar como ecuaciones booleanas, por ejemplo:

a

0 1

1 0

a b

0 0 1 1

0 1 1 1

1 0 0 0

1 1 0 1

Page 6: Algebra Booleana y Mapas de Karnaugh

Que representado en lógica de interruptores es un circuito de dos interruptores en paralelo, siendo el primero de ellos inverso.

La distinta secuencia de valores de a y b da los resultados vistos en la tabla de verdad.

Leyes fundamentales

El resultado de aplicar cualquiera de las tres operaciones definidas a variables del sistema booleano resulta en otra variable del sistema, y este resultado es único.

1. Ley de idempotencia:

2. Ley de complemento:

3. Ley conmutativa:

Page 7: Algebra Booleana y Mapas de Karnaugh

4. Ley asociativa:

5. Ley distributiva:

Distributiva por la izquierda:

Distributiva por la derecha:

6. Ley de cancelación:

7. Ley de identidad:

8 Ley de dominación:

9. Leyes de De Morgan:

Principio de dualidad

Page 8: Algebra Booleana y Mapas de Karnaugh

El concepto de dualidad permite formalizar este hecho: a toda relación o ley lógica le corresponderá su dual, formada mediante el intercambio de los operadores unión (suma lógica) con los de intersección (producto lógico), y de los 1 con los 0.

Además hay que cambiar cada variable por su negada. Esto causa confusión al aplicarlo en los teoremas básicos, pero es totalmente necesario para la correcta aplicación del principio de dualidad. Véase que esto no modifica la tabla adjunta.

Otras formas de notación del álgebra de Boole

En matemática se emplea la notación empleada hasta ahora ({0,1}, +, ) siendo la forma más usual y la más cómoda de representar.

Por ejemplo las leyes de De Morgan se representan así:

Cuando el álgebra de Boole se emplea en electrónica, suele emplearse la misma denominación que para las puerta lógica AND (Y), OR (O) y NOT (NO), ampliándose en ocasiones con X-OR (O exclusiva) y su negadas NAND (NO Y), NOR (NO O) y X-NOR (equivalencia). Las variables pueden representarse con letras mayúsculas o minúsculas, y pueden tomar los valores {0, 1}

Empleando esta notación las leyes de De Morgan se representan:

Adición Producto

1

2

3

4

5

6

7

8

9

Page 9: Algebra Booleana y Mapas de Karnaugh

En su aplicación a la lógica se emplea la notación y las variables pueden tomar los valores {F, V}, falso o verdadero, equivalentes a {0, 1}

Con la notación lógica las leyes de De Morgan serían así:

En el formato de Teoría de conjuntos el Álgebra de Boole toma el aspecto:

En esta notación las leyes de De Morgan serían así:

Otra forma en la teoría de conjuntos del Álgebra de Boole, las leyes de De Morgan serian así:

Desde el punto de vista práctico existe una forma simplificada de representar expresiones booleanas. Se emplean apóstrofos (') para indicar la negación, la operación suma (+) se representa de la forma normal en álgebra, y para el producto no se emplea ningún signo, las variables se representan, normalmente con una letra mayúscula, la sucesión de dos variables indica el producto entre ellas, no una variable nombrada con dos letras.

La representación de las leyes de De Morgan con este sistema quedaría así, con letra minúscula para las variables:

Y así, empleando letras mayúsculas para representar las variables:

Page 10: Algebra Booleana y Mapas de Karnaugh

Todas estas formas de representación son correctas, se utilizan de hecho, y pueden verse al consultar bibliografía. La utilización de una u otra notación no modifica el álgebra de Boole, solo su aspecto, y depende de la rama de las matemáticas o la tecnología en la que se esté utilizando para emplear una u otra notación.

APLICACIONES

En informática

Se dice que una variable tiene valor booleano cuando, en general, la variable contiene un 0 lógico o un 1 lógico. Esto, en la mayoría de los lenguajes de programación, se traduce en false (falso) o true (verdadero), respectivamente.

Una variable puede no ser de tipo booleano, y guardar valores que, en principio, no son booleanos; ya que, globalmente, los compiladores trabajan con esos otros valores, numéricos normalmente aunque también algunos permiten cambios desde, incluso, caracteres, finalizando en valor booleano.

El 0 lógico

El valor booleano de negación suele ser representado como false, aunque también permite y equivale al valor natural, entero y decimal (exacto) 0, así como la cadena "false", e incluso la cadena "0".

El 1 lógico

En cambio, el resto de valores apuntan al valor booleano de afirmación, representado normalmente como true, ya que, por definición, el valor 1 se tiene cuando no es 0. Cualquier número distinto de cero se comporta como un 1 lógico, y lo mismo sucede con casi cualquier cadena (menos la "false", en caso de ser ésta la correspondiente al 0 lógico).

Page 11: Algebra Booleana y Mapas de Karnaugh

-La electrónica digital utiliza magnitudes digitales que toman valores discretos.-La electrónica analógica emplea magnitudes analógicas que toman valores continuos.-En las aplicaciones electrónicas, los datos digitales se pueden procesar de forma más fiable que los datos analógicos. Cuando es necesario su almacenamiento, el ruido (fluctuaciones de tensión no deseadas) no afecta a las señales digitales tanto como a las señales analógicas.

.Mapas de Karnaugh

•Un mapa de Karnaugh proporciona un método sistemático de simplificación de expresiones booleanas.•Aplicado adecuadamente genera las expresiones suma de productos y producto de sumas más simples posibles.•Un mapa de Karnaugh es similar a una tabla de verdad, ya que muestra todos los posibles valores de las variables de entrada y la salida resultante para cada valor.

•El mapa de Karnaugh es una secuencia de celdas en la que cada celda representa un valor binario de las variables de entrada.•Las celdas se disponen de tal manera que la simplificación de una determinada expresión consiste en agrupar adecuadamente las celdas.•Los mapas de Karnaugh pueden utilizarse para expresiones de dos, tres, cuatro y cinco variables.•El método de Quine-McCluskypuede usarse para un número de variables mayor.•Al igual que ocurría con el número de filas de una tabla de verdad, el número de celdas de un mapa de Karnaugh es igual al número total de combinaciones de las variables de entrada.•Para tres variables, el número de celdas necesarias es 23=8. Para cuatro variables, el número de celdas es 24=16 celdas.

Mapas de Karnaugh de Tres Variables (I)

•Es un conjunto de 8 celdas.•Se utilizan A, B y C para denominar las variables, aunque se podrían usar otras letras.•Los valores binarios de A y B se encuentran en la parte izquierda y los valores de C en la parte superior.•El valor de una determinada celda es:–el valor binario de A y B, en la parte izquierda de la misma fila–combinado con el valor de C en la parte superior de la misma columna.•Representación de un mapa de Karnaugh de tres variables vacío (matriz de 8 celdas) y con los términos producto estándar representados para cada celda:

Page 12: Algebra Booleana y Mapas de Karnaugh

Mapas de Karnaugh de Cuatro Variables

•Es un conjunto de 16 celdas.•Se utilizan A, B, C y D para denominar las variables, aunque se podrían usar otras letras.•Los valores binarios de A y B se encuentran en la parte izquierda y los valores de C y D en la parte superior.•El valor de una determinada celda es:–el valor binario de A y B, en la parte izquierda de la misma fila–combinado con el valor de C y D en la parte superior de la misma columna.•Representación de un mapa de Karnaugh de cuatro variables vacío (matriz de 16 celdas) y con los términos producto estándar representados para cada celda:

Adyacencia de Celdas

•Las celdas de un mapa de Karnaugh se disponen de manera que sólo cambia una única variable entre celdas adyacentes.

Page 13: Algebra Booleana y Mapas de Karnaugh

•Las celdas que difieren en una única variable son adyacentes.•En el mapa de 3 variables, la celda 010 es adyacente a la celda 000, a la 011 y a la 110.•Las celdas cuyos valores difieren en más de una variable no son adyacentes.•En el mapa de 3 variables, la celda 010 NO es adyacente a la celda 001, a la 111, a la 100 ni a la 101.•Físicamente, cada celda es adyacente a las celdas que están situadas inmediatas a ella por cualesquiera de sus cuatro lados.•Una celda NO es adyacente a aquellas que tocan diagonalmente alguna de sus esquinas.•Además, las celdas de la fila superior son adyacentes a las de la fila inferior y las celdas de la columna izquierda son adyacentes a las celdas situadas en la columna derecha.•Adyacencia de celdas en un mapa de Karnaugh de cuatro variables.•Las flechas apuntan a las celdas adyacentes.

Minimización de una Suma de Productos•El mapa de Karnaugh se utiliza para reducir expresiones booleanas a su mínima expresión, así los diseños lógicos de los circuitos que se construyan sean más económicos.•Una expresión suma de productos minimizada está formada por el mínimo número de términos producto posibles con el mínimo número de variables por término.•Generalmente, una expresión suma de productos minimizada se puede implementar mediante un número de puertas menor que su expresión estándar, lo cual constituye la finalidad del proceso de simplificación.•Por cada término de la expresión suma de productos se coloca un 1 en el mapa de Karnaugh en la celda correspondiente al valor del producto.•Las celdas que no tienen 1 son aquellas para las que la expresión es 0.Mapa de Karnaugh de una Suma de Productos Estándar•Pasos para completar el mapa de Karnaugh:Paso 1. Determinar el valor binario de cada término producto de la suma de productos estándar.Paso 2. A medida que evaluamos cada término, colocamos un 1 en el mapa de Karnaugh, en la celda que tiene el mismo valor que dicho término.

Page 14: Algebra Booleana y Mapas de Karnaugh

Ejemplo de transformación a mapa de Karnaugh de una suma de productos estándar

•Antes de poder utilizar un mapa de Karnaugh, las expresiones booleanas deben estar en su forma estándar.•Si una expresión no lo está, se pasará al formato estándar.•A un término en forma no estándar le faltan una o más variables en su expresión.•Este término se puede desarrollar numéricamente para obtener una expresión estándar:–Se añaden todas las combinaciones de valores numéricos de las variables que faltan en la expresión.•Ejemplo: Transformar la siguiente expresión suma de productos en un mapa de Karnaugh: A + AB + ABC Solución. Esta suma de productos no está en formato estándar, ya que cada término no contiene las tres variables. El primer término no posee dos de las tres variables; el segundo carece de una, mientras que el tercero sí que es estándar. 1. Desarrollamos los términos numéricamente de la forma:

2. Cada uno de los valores binarios resultantes se traslada al mapa, colocando un 1 en la celda apropiada del mapa de Karnaugh de 3 variables.

Page 15: Algebra Booleana y Mapas de Karnaugh

•El proceso que genera una expresión que contiene el menor número posible de términos con el mínimo número de variables se denomina minimización.•Después de haber obtenido el mapa de Karnaugh de una suma de productos, se deben seguir tres pasos para obtener la expresión suma de productos mínima:–Agrupar los 1s.–Determinar el término producto correspondiente a cada grupo.–Sumar los términos productos obtenidos.

Agrupación de 1s

•La finalidad es maximizar el tamaño de los grupos y minimizar el número de estos grupos. Reglas:1. Un grupo tiene que contener 1, 2, 4, 8 ó16 celdas.2. Cada celda de un grupo tiene que ser adyacente a una o más celdas del mismo grupo, pero no todas las celdas del grupo tienen que ser adyacentes entre sí.3. Incluir siempre en cada grupo el mayor número posible de 1s de acuerdo con la regla 1.4. Cada 1 del mapa tiene que estar incluido en al menos un grupo. Los 1s que ya pertenezcan a un grupo pueden estar incluidos en otro, siempre que los grupos que se solapen contengan 1s no comunes.

Determinar el T Término Producto

Page 16: Algebra Booleana y Mapas de Karnaugh

Correspondiente a Cada Grupo 1. Cada grupo de celdas que contiene 1s da lugar a un término producto compuesto por todas las variables que aparecen en el grupo en sólo una forma (no complementada o complementada). Las variables que aparecen complementadas y sin complementar dentro del mismo grupo se eliminan. A éstas se las denomina variables contradictorias.2. Determinar la operación producto mínima para cada grupo.

a) Determinar la operación producto mínima para un mapa de 3 variables.I.Un grupo formado por una única celda da lugar a un término producto de tres variables.II.Un grupo formado por 2 celdas da lugar a un término producto de dos variables.III.Un grupo formado por 4 celdas da lugar a un término de una variable.IV.Un grupo formado por 8 celdas indica que la expresión vale 1.

b) Determinar la operación producto mínima para un mapa de 4 variables.I.Un grupo formado por una única celda da lugar a un término producto de cuatro variables.II.Un grupo formado por 2 celdas da lugar a un término producto de tres variables.III.Un grupo formado por 4 celdas da lugar a un término producto de dos variables.IV.Un grupo formado por 8 celdas da lugar a un término de una variable.V. Un grupo formado por 16 celdas indica que la expresión vale 1.•Cuando se han obtenido todos los términos mínimos, se suman para obtener la expresión suma de productos mínima.

•Ejemplo: Determinar los productos para cada uno de los mapas de Karnaugh y escribir las correspondientes expresiones suma de productos mínima resultante.

Solución. La expresión suma de productos mínima para cada uno de los mapas de Karnaugh es:(a) AB + BC + A B C (b) B + AC + AC(c) AB + A C + ABD (d) D + ABC + BC

Page 17: Algebra Booleana y Mapas de Karnaugh

Ejemplo: Mediante un mapa de Karnaugh minimizar la expresión suma de productos siguiente:

Se indica el término producto para cada grupo y la expresión suma de productos mínima resultante es: D + BCNota: esta expresión mínima es equivalente a la expresión estándar original.