Expansión Shannon

En matemáticas , la descomposición de Shannon o descomposición de Shannon en una variable es un método para representar una función booleana de variables como una suma de dos subfunciones de otras variables. Aunque este método a menudo se atribuye a Claude Shannon , Boole lo demostró mucho antes, y la posibilidad misma de tal expansión en cualquiera de las variables se deriva directamente de la posibilidad de definir cualquier función booleana utilizando la tabla de verdad .

Descomposición

La expansión de Shannon en términos de una variable se basa en el hecho de que la tabla de verdad para una función booleana de variables binarias se puede dividir en dos partes, de modo que la primera parte contiene solo aquellas combinaciones de entrada en las que la variable siempre toma el valor , y la segunda parte contiene solo aquellas combinaciones de entrada combinaciones en las que la variable siempre toma el valor (y su valor invertido toma el valor ). Como resultado, se vuelve válida la siguiente identidad , llamada expansión de Shannon:

donde es la función booleana a expandir, y son los valores no invertidos e invertidos de la variable con respecto a la cual se realiza la expansión, y y son respectivamente el complemento positivo y negativo de la función con respecto a la variable . En la expansión de Shannon, los símbolos y denotan las operaciones de conjunción ("Y", Y) y disyunción ("O", O), respectivamente, pero la identidad sigue siendo válida cuando se reemplaza la disyunción por disyunción estricta (adición módulo 2, exclusiva " OR", XOR), ya que los términos nunca toman el valor verdadero al mismo tiempo (porque el complemento positivo se combina por conjunción con , y el complemento negativo se combina por conjunción con su inverso ).

El complemento positivo está determinado por la parte de la tabla de verdad en la que la variable siempre toma un valor (y su valor invertido toma el valor de ):

El complemento negativo lo determina el resto de la tabla, donde la variable siempre toma un valor (y el valor invertido toma un valor de ):

El teorema de descomposición de Shannon, a pesar de su obviedad, es una idea importante en el álgebra booleana para representar funciones booleanas como diagramas de decisión binarios , resolver el problema de la satisfacibilidad de las fórmulas booleanas e implementar muchas otras técnicas relacionadas con la ingeniería informática y la verificación formal de circuitos digitales. .

En el artículo "La síntesis de circuitos de conmutación de dos terminales" [1] , Shannon describió la descomposición de una función con respecto a una variable como:

seguido de expansión en dos variables, y señaló que la expansión podría continuar en cualquier número de variables.

Ejemplo de descomposición

Sea una función booleana de tres variables , y , dada como una forma normal disyuntiva perfecta , es decir, como una disyunción de conjunciones elementales, cada una de las cuales contiene cada variable o su complemento (inversión) en el mismo orden:

Para la expansión en una variable, esta función se puede reescribir como una suma:

habiendo obtenido la expansión de una función booleana en una variable simplemente aplicando la propiedad distributiva para una variable y su complemento (inversión) :

De igual forma, la expansión de la función en términos de la variable o se realiza :

A su vez, para cada una de las funciones restantes en un número menor de variables, se puede continuar la expansión en una de las variables restantes.

Generalización

La variable en la expansión de una función booleana puede ser no solo variables individuales incluidas en esta función, sino cualquier condición de multiplexación. Por ejemplo, se sabe expansión por expresión (x > y) y su negación.

Véase también

Notas

  1. Shannon, Claude E. La síntesis de los circuitos de conmutación de dos terminales  //  Boletín técnico del Bell System : diario. — vol. 28 . - Pág. 59-98 .

Enlaces