4.2 Optimización de expresiones booleanas.
4.2
Optimización de expresiones booleanas.
Utilizando expresiones
booleanas, vamos a definir Funciones booleanas, que son exactamente iguales
a las funciones matemáticas a las que estamos habituados pero con la
particularidad de que las variables son booleanas y que los valores devueltos
por la función también son booleanos, es decir, una función booleana sólo puede
tomar los valores ’0’ ó ’1’
Como hemos hecho antes, vamos a ver un ejemplo
utilizando una función matemática de las que todos conocemos. Por ejemplo esta:
f ( x ) = x2
+ 1
Se trata de una función Real que tiene una variable
Real (x). Para cada valor de x, obtenemos el valor de la función. Así por
ejemplo podemos calcular los siguiente:
·
f(0) = 1
·
f(1) = 2
·
f(2) = 5
·
f(3) = 10
Como es una función Real, obtenemos como valores
de la función Núme ros Reales. También podemos definir funciones reales de 2 ó
más variables, como por ejemplo:
·
f ( x, y ) = x*y + 3 Función de 2 variables
·
g ( x, y, z ) =
x*y + z Función de 3 variables
Como estamos acostumbrados a trabajar con este
tipo de funciones, nos resultan sencillas. Ahora vamos a definir funciones booleanas. Para ello hay que
tener en mente que trabajaremos con variables booleanas y que por tanto usaremos
las operaciones + y * del Algebra de Boole,
y que como ya sabemos, nada tienen que ver con las operaciones suma y producto
a las que estamos habituados.
Por ejemplo, sea la siguiente función booleana
de una variable :
El valor devuelto por la función es el negado
del que se le pasa por la variable. Como la variable A es booleana, sólo puede
tomar los valores ‟0‟ y ‟1‟. Los que la función F toma son:
Vamos a definir una función un poco más
compleja, usando dos variables booleanas, A y B
¿Cuando vale F(0,0)? sólo hay que sustituir en
la función los valores de A y B por ‟0‟, obteniéndose:
Calcularemos el valor de F para el resto de
valores de entrada de A y B:
Fijándonos en esta función tan sencilla, podemos
darnos cuenta de varias cosas:
1. Puesto que las variables de entrada A y B,
sólo pueden tomar los valores ‟0‟ y ‟1‟, hay 4 casos distintos:
2. Antes de calcular los valores que toma la
función, según lo que valgan A y B, se pueden aplicar algunas propiedades para
obtener una función más simplificada.
Las funciones booleanas pueden ser de muchas más
variables, como en los siguientes ejemplos:
Por cuestiones de comodidad, muchas veces no
escribimos entre paréntesis las variables de la función, así por ejemplo
podemos definir una función de 3 variables de la siguiente manera:
Post Comment
No comments