Algebra de Boole


Variável Lógica (Booleana)

Considere a proposição citada no tópico Introdução à Lógica,

A = "Maria tem 23 anos"

A proposição "Maria tem 23 anos" é representada pelo símbolo A, que é uma variável booleana, pois pode assumir um dos dois valores lógicos: F ou V. Além de variável booleana, A é também chamada variável lógica.

Função de Variáveis Lógicas (Booleanas)

Dada uma variável lógica, é possível construir uma função desta variável, f(A),

Exemplo

isto é, função da variável lógica A representa simplesmente a sua negação. Como visto no tópico Introdução à Lógica, sua tabela-verdade é dada por (usando-se números binários 1 e 0, ao invés de V e F).
A f(A) = A'

0

1

1

0

Quando se tem apenas 1 variável, como acima, é possível construir apenas 4 funções, abaixo, onde a primeira é a própria negação já vista neste tópico; a segunda é a função identidade; a duas últimas não possuem denominação especial.
A f1(A) f2(A) f3(A) f4(A)

0

1

0

0

1

1

0

1

0

1

Veja que, para duas ou mais variáveis, o número possível de funções que podem ser construidas é de 22n, onde n é o número de variáveis. Para duas variáveis, 22.2 = 16 (apenas 16 possibilidades de construção de funções lógicas de apenas 2 variáveis).
A

B

f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

0

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

1

0

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

1

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

Para 3 variáveis, 22.3 = 64 funções possíveis, e assim por diante.Na tabela cima, A e B são as variáveis independentes e fi(A,B) são as variáveis dependentes, conhecidas por funções de variáveis lógicas, funções combinatoriais ou, ainda, funções combinacionais. A função lógica fi(A,B) pode ser representada por uma caixa preta cujo conteúdo implementa um tipo de porta ou uma combinação das mesmas. Por exemplo, para a tabela acima, algumas funções são

Função

f1

f2

f4

f6

f7

f8

f9

f10

f11

f13

f15

f16

Porta

0

AND

A

B

XOR

OR

NOR

XNOR

B'

A'

NAND

1

O que é aqui considerado como a porta 0 é um circuito lógico que, independente das entradas, a saída é sempre zero. A "porta" 1 segue o mesmo esquema, isto é, para quaisquer entradas, a saída é sempre 1. Os símbolos A' e B' caracterizam as negações, ou inversões, das variáveis.

Qualquer circuito lógico pode ser considerado como uma caixa preta como descrita acima. Para exemplificar, veja como "encapsular" um circuito lógico em uma "caixa preta" (não se incomode se a o azul é usado no lugar do preto),

Observe que o modelo caixa preta é muito mais geral que o outro que já está especificado. O que se sabe do modelo caixa preta é a quantidade de circuitos que podem ser gerados a partir de 4 entradas e 1 saída. Quantos são mesmo?

Uma função combinacional é uma solução para um problema combinacional. Como exemplo de um problema combinacional, considere um sistema de segurança de uma loja em um shopping. Há um sensor de contato que, ligado, (on, V ou 1), indica que a porta está fechada; e outro sensor infravermelho que, ligado, indica que não há pessoas ou coisas se movendo no interior da loja. Há, também, um alarme que é acionado quando um dos dois sensores é desligado. Isto é, basta um único sensor ser desativado para soar o alarme. Denomine cada sensor pelos símbolos A e B,

  1. A = "sensor de contato"

  2. B = "sensor infravermelho"

A tabela-verdade para a função alarme, f(A,B), é dada por
A B f(A,B)

0

0

1

0

1

1

1

0

1

1

1

0

onde 0 e 1 significam desligado e ligado, respectivamente. Para maior realismo, suponha que a fonte de energia do sistema seja independente da rede elétrica (nobreak, por exemplo).

Como você pode notar, a tabela-verdade é um excelente instrumento para a especificação da função alarme, em particular, e de funções lógicas, em geral. Mas não é o único. Outras duas ferramentas importantes são:

  1. Equações booleanas

  2. Diagramas lógicos

Equações Booleanas

As equações booleanas fazem uso dos conectivos lógicos vistos em Introdução à Lógica. A função alarme, acima, pode ser escrita de acordo com a seguinte equação booleana,

f(A) = (A.B)'

oonde o símbolo "'" significa a negação lógica, e o símbolo "." significa a conjunção (AND) lógica. Sua tabela-verdade é construida da seguinte maneira,
A B A.B f(A,B) = (A.B)'

0

0

0

1

0

1

0

1

1

0

0

1

1

1

1

0

Diagramas Lógicos

Os diagramas lógicos serão estudados, com detalhes, no tópico Portas Lógicas. Mas apenas para exemplificar, a função alarme aqui tratada poderia ser especificada através do seguinte diagrama lógico,

isto é, através da porta lógica NAND.

Teoremas da Álgebra de Boole

Uma função combinacional pode ser escrita de várias maneiras, sem ser alterada, fazendo-se uso dos Teoremas da Álgebra de Boole. Por exemplo,

(A . B)' = A' + B'

onde, como visto, os símbolos "'" e "+" representam a negação (NOT) e a disjunção (OR), respectivamente. Aqui usou-se um dos teoremas conhecidos como Leis de De Morgan. Os principais teoremas da Álgebra Booleana são,
Ordem Teoremas Ordem Teoremas
1 A + 0 = A 11 A . B  + A . B' = A
2 A + 1 = 1 12 (A + B) . (A + B') = A
3 A + A = A 13 A + A' . B = A + B
4 A + A' = 1 14 A . (A' + B) = A . B
5 A . 1 = A 15 A + B . C = (A + B) . (A + C)
6 A . 0 = 0 16 A . (B + C) = A . B + A . C
7 A . A = A 17 A . B + A' . C = (A + C) . (A' + B)
8 A . A' = 0 18 (A + B) . (A' + C) = A . C + A' . B
9 A + A . B = A 19 A . B + A' . C + B . C = A . B + A' . C
10 A . ( A + B) = A 20 (A + B) . (A' + C) . (B + C) = (A + B) . (A' + C)

Como qualquer prova de teorema, a cada passo em direção à prova, você tem que dizer o porque do passo. Veja este exemplo (a prova do teorema 10),

     A . (A + B)

= (pelo teorema 16)

     A . A + A . B

= (teo. 7)

     A + A . B

= (teo. 5)

     A . 1 + A . B

= (teo. 16)

     A . (1 + B)

= (teo. 2)

     A . 1

= (teo. 5)

    A

o que completa a prova. É muito importante que você exercite este tipo de problema, uma vez que são absolutamente importantes para o estudo de circuitos digitais, em geral. Para finalizar, consulte este provador de teoremas on-line.


Anterior: Introdução à Lógica Próxima: Portas Lógicas 

Retornar ao índice de assuntos

Você pode falar comigo pelo e-mail: jbosco@inf.ufsc.br