Remove ads
De Wikipedia, la enciclopedia libre
En matemáticas, una función booleana es una función cuyo dominio son las palabras conformadas por los valores binarios 0 o 1 ("falso" o "verdadero", respectivamente), y cuyo codominio son ambos valores 0 y 1.
Formalmente, son las funciones de la forma ƒ: Bn → B, donde B = {0,1} y n un entero no negativo correspondiente a la aridad de la función.
Existen distintas formas de representar una función lógica, entre las que podemos destacar las siguientes:
El uso de una u otra dependerá de cada caso.
Se utiliza cuando se realizan operaciones algebraicas. A continuación se ofrece un ejemplo con distintas formas en las que se puede expresar algebraicamente una misma función de tres variables.
La expresión 1. puede proceder de un problema lógico planteado o del paso de unas especificaciones a lenguaje algebraico. Las formas 2. y 3. reciben el nombre expresiones canónicas: de suma de productos (sum-of-products, SOP, en inglés), la 2., y de productos de sumas (product-of-sums, POS, en inglés), la 3.; su característica principal es la aparición de cada una de las variables (A, B y C) en cada uno de los sumandos o productos.
Una tabla de verdad contiene todos los valores posibles de una función lógica dependiendo del valor de sus variables. El número de combinaciones posibles para una función de n variables vendrá dado por 2n. Una función lógica puede representarse algebraicamente de distintas formas como acabamos de ver, pero solo tiene una tabla de verdad. La siguiente tabla corresponde a la función lógica del punto anterior.
La forma más cómoda para ver la equivalencia entre una tabla de verdad y una expresión algebraica es cuando esta última se da en su forma canónica. Así, la función canónica de suma de productos (o forma canónica disyuntiva)
nos indica que será 1 cuando lo sea uno de sus sumandos, lo que significa que tendrá por lo tanto cuatro combinaciones que lo serán (010 para A’BC’, 100 para AB’C’, 101 para AB’C y 110 para ABC’) siendo el resto de combinaciones 0. Con la función canónica de producto de sumas (o forma canónica conjuntiva) se puede razonar de forma análoga, pero en este caso observando que la función será 0 cuando lo sea uno de sus productos.
También es fácil obtener la tabla de verdad a partir de la función simplificada, pero no así a la inversa.
La representación numérica es una forma simplificada de representar las expresiones canónicas. Si consideramos el criterio de sustituir una variable sin negar por un 1 y una negada por un 0, podremos representar el término, ya sea una suma o un producto, por un número decimal equivalente al valor binario de la combinación. Por ejemplo, los siguientes términos canónicos se representarán del siguiente modo (observe que se toma el orden de A a D como de mayor a menor peso):
Para representar una función canónica en suma de productos utilizaremos el símbolo (sigma) y en producto de sumas (pi), donde n indicará el número de variables. Así, la representación numérica correspondiente a la tabla de verdad del punto anterior quedará como:
Matemáticamente se demuestra, que para todo término i de una función, se cumple la siguiente ecuación:
A modo de ejemplo se puede utilizar esta igualdad para obtener el producto de sumas a partir de la suma de productos del ejemplo anterior:
La representación gráfica es la que se utiliza en circuitos y esquemas electrónicos. En la siguiente figura se representan gráficamente dos funciones algebraicas, una con símbolos no normalizados, superior, y la otra con normalizados, inferior (véanse los símbolos de las puertas lógicas)
Por simplificación de una función lógica se entiende la obtención de su mínima expresión. A la hora de implementar físicamente una función lógica se suele simplificar para reducir así la complejidad del circuito.
A continuación se indican los modos más usuales de simplificar una función lógica.
Para la simplificación por este método no sólo bastará con conocer todas las propiedades y teoremas del álgebra de Boole, además se debe desarrollar una cierta habilidad lógico-matemática que se adquiere fundamentalmente con la experiencia.
Como ejemplo se simplificará la siguiente función:
Observando cada uno de los sumando podemos ver que hay factores comunes en los sumandos 2º con 5º y 4º con 5º que conllevan simplificación:
Note que el término 5º se ha tomado dos veces, de acuerdo con la propiedad que dice que A + A = A. Aplicando las propiedades del álgebra de Boole (A + A' = 1 y A . 1 = A), queda
Repitiendo nuevamente el proceso,
No siempre las funciones son tan fáciles de simplificar como la anterior. El método algebraico, por lo general, no resulta cómodo para los no expertos, a los cuales, una vez simplificada una ecuación le pueden quedar serias dudas de haber conseguido la máxima simplificación.
Este método consiste en formar diagramas de 2n cuadros, siendo n el número de variables. Cada cuadro representa una de las diferentes combinaciones posibles y se disponen de tal forma que se puede pasar de un cuadro a otro en las direcciones horizontal o vertical, cambiando únicamente una variable, ya sea en forma negada o directa.
Este método se emplea fundamentalmente para simplificar funciones de hasta cuatro variables. Para un número superior utilizan otros métodos como el numérico. A continuación pueden observarse los diagramas, también llamados mapas de Karnaugh, para dos, tres y cuatro variables.
Es una práctica común numerar cada celda con el número decimal correspondiente al término canónico que albergue, para facilitar el trabajo a la hora de plasmar una función canónica.
Para simplificar una función lógica por el método de Karnaugh se seguirán los siguientes pasos:
A modo de ejemplo se realizan dos simplificaciones de una misma función a partir de sus dos formas canónicas:
De acuerdo con los pasos vistos anteriormente, el diagrama de cada función quedará del siguiente modo:
La función simplificada tendrá tres sumandos en un caso y dos productos en el otro. Si nos fijamos en el mapa correspondiente a la suma de productos, observamos que en el lazo 1 cambia la variable A (en la celda 0 es negada y en la 4 directa), en el lazo 2 es la C y en el lazo 3 vuelve a ser A. por lo tanto, la ecuación simplificada es:
Razonando de modo similar en el mapa de productos de sumas, nos quedará lo siguiente:
El algoritmo Quine-McCluskey permite la simplificación de funciones lógicas de cualquier número de variables y es el que se utiliza para diseñar aplicaciones informáticas en las que se necesite obtener funciones simplificadas.
A continuación se indican los pasos a seguir en este método a partir de un ejemplo.
Comb. | Estado | Índice |
---|---|---|
0 | 0000 | 0 |
1 | 0001 | 1 |
2 | 0010 | 1 |
3 | 0011 | 2 |
5 | 0101 | 2 |
9 | 1001 | 2 |
11 | 1011 | 3 |
12 | 1100 | 2 |
13 | 1101 | 3 |
15 | 1111 | 4 |
Comb. | Estado | Índice | Comb. | Estado | Índice |
---|---|---|---|---|---|
0 X | 0000 | 0 | 0,1 | 000_ | 0 |
1 X | 0001 | 1 | 0,2 | 00_0 | 0 |
2 X | 0010 | 1 | 1,3 | 00_1 | 1 |
3 X | 0011 | 2 | 1,5 | 0_01 | 1 |
5 X | 0101 | 2 | 1,9 | _001 | 1 |
9 X | 1001 | 2 | 3,11 | _011 | 2 |
11 X | 1011 | 3 | 5,13 | _101 | 2 |
12 X | 1100 | 2 | 9,11 | 10_1 | 2 |
13 X | 1101 | 3 | 9,13 | 1_01 | 2 |
15 X | 1111 | 4 | 11,15 | 1_11 | 3 |
12,13 | 110_ | 2 | |||
13,15 | 11_1 | 3 |
Hasta ahora todas las funciones estudiadas tienen definido un valor lógico, 0 o 1, para cada una de las posibles combinaciones. Estas funciones se denominan completas o totalmente definidas. También existen funciones con una o varias combinaciones no definidas, llamadas funciones incompletas. Esta situación puede deberse por las dos causas siguientes:
En la tabla de verdad de una función incompleta, los términos indiferentes se designan mediante una equis (X). En cuanto a la forma canónica se separan los términos definidos de los que no lo son (indicados mediante el símbolo φ).
A la hora de simplificar una función incompleta, los términos indiferentes servirán como “comodines” a la hora de tomar lo lazos, esto es, si nos interesa que sea un 1 porque así el lazo es mayor, lo tomaremos como 1, y en caso contrario como 0.
Una Función lógica, que está compuesta por operador lógico, puede ser expresada en forma canónica usando los conceptos de minitérmino y maxitérmino. Todas las funciones lógicas son expresables en forma canónica, tanto como una suma de minitérmino como producto de maxitérmino. Esto permite un mejor análisis para la simplificación de dichas funciones.
Para una función booleana de n variables x1,...xn, un producto booleano en el que cada una de las n variables aparece una sola vez (negada o sin negar) es llamado minitérmino. Es decir, un minitérmino es una expresión lógica de n variables consistente únicamente en el operador conjunción lógica (AND) y el operador complemento o negación (NOT). Por ejemplo, abc, ab'c y abc' son ejemplos de minitérminos para una función booleana con las tres variables a, b y c.
Un maxitérmino es una expresión lógica de n símbolos que consiste únicamente en la disyunción lógica y el operador complemento o negación. Los cuales están unidos por los operadores del álgebra de boole (+ . ‘) Por ejemplo, los siguientes términos canónicos son maxitérminos:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.