Você está na página 1de 16

Controlo Industrial

2 - lgebra de Boole

2 - lgebra de Boole

2.1 - Funo lgica


George Boole desenvolveu no sculo XIX a lgebra necessria investigao das leis fundamentais das operaes da mente humana ligadas ao raciocnio.

Fig. 2.1 - George Boole (1814-1864).

George Boole (1814-1864) foi um matemtico e filsofo britnico, criador da lgebra Booleana, base da actual aritmtica computacional.

35

Controlo Industrial

2 - lgebra de Boole

O objectivo da lgebra de Boole passa pela definio de uma srie de smbolos, com a finalidade de representar objectivos ou fenmenos que, encadeados convenientemente, do lugar a expresses matemticas mais complexas denominadas funes. Enquanto que a lgebra tradicional opera com relaes quantitativas, a lgebra de Boole opera com relaes lgicas. Como exemplo podemos considerar os operadores + e x , e verificar que possuem significados diferentes conforme sejam utilizados na lgebra tradicional ou na lgebra Booleana.

Operador

lg. Tradicional Soma Multiplicao

lg. Booleana

+ x

OR AND

Tab. 2.1 Operadores lgicos.

Enquanto que na lgebra tradicional as variveis podem assumir qualquer valor, na lgebra booleana, as variveis, aqui denominadas por variveis binrias, apenas podem assumir um de dois valores binrios. Estes valores binrios no exprimem quantidades mas apenas, e s, estados do sistema. A importncia da lgica booleana no mundo digital hoje indiscutvel, sendo utilizada em reas to diversas como as memrias digitais; os circuitos discretos; ou os microprocessadores.
Nota: A multiplicao entre 2 variveis a e b frequentemente representada por um asterisco ( * ), ou por um ponto ( ), ou simplesmente nada ente os dois, em vez de x . Ou seja:

ab ,
Funo lgica binria

a*b ,

ab

ou

ab

A toda a varivel binria, cujo valor depende de uma expresso algbrica, formada por outras variveis binrias relacionadas por operadores lgicos, d-se o nome de funo lgica. Temos como exemplo a Eq. 2.1, onde S representa a varivel binria dependente e a, b e c as variveis binrias independentes.

36

Controlo Industrial

2 - lgebra de Boole

S = f (a, b, c) = a b + b c ,

Eq. 2.1

Outra forma de representar uma funo lgica atravs da utilizao de um circuito elctrico (Fig. 2.2). Nesta representao, as variveis binrias so introduzidas como tratando-se de interruptores com duas posies (ON/OFF).

Fig. 2.2 - Circuito lgico.

Nestas topologias normal fazer-se uso de dois tipos de interruptores (Fig. 2.3 e Fig. 2.4). Interruptor normalmente aberto Interruptor normalmente fechado no estado normal, ou seja, no actuado, o interruptor encontra-se aberto, no deixando por isso passar corrente. no estado normal, ou seja, no actuado, o interruptor encontra-se fechado, deixando por isso passar corrente.

Fig. 2.3 - Interruptor a do tipo normalmente aberto.

Fig. 2.4 - Interruptor b do tipo normalmente fechado.

Tabela de verdade Para uma funo S = f (a, b, K) a tabela de verdade um quadro formado por tantas colunas quantas as variveis binrias independentes (a, b, ), tendo ainda uma ltima coluna correspondente varivel binria dependente S.
37

Controlo Industrial

2 - lgebra de Boole

O nmero de linhas de uma tabela de verdade dado por 2N, onde N o nmero de variveis binrias independentes, garantimos assim todas as combinaes possveis das variveis independentes. A tabela de verdade representa o estado da varivel binria dependente em funo das variveis binrias independentes. Para todas as combinaes possveis de estados das variveis binrias independentes existe um estado da varivel binria dependente. Como exemplo podemos ver a tabela de verdade da Tab. 2.2 que representa a funo lgica binria S = f (a, b, c ) dada pela Eq. 2.1. O nmero de variveis binrias independentes 3 (a, b e c), logo a tabela tem 23 = 8 linhas.

a 0 0 0 0 1 1 1 1

b 0 0 1 1 0 0 1 1

c 0 1 0 1 0 1 0 1

S 0 0 0 1 1 0 1 0

Tab. 2.2 Tabela de verdade.

2.2 - Funes Booleanas bsicas e suas tabelas de verdade


A seguir apresentamos as funes booleanas bsicas e as respectivas tabelas de verdade. Funo igualdade S(a) = a a S 0 0 1 1

38

Controlo Industrial

2 - lgebra de Boole

Funo unio [OR] (soma lgica) S(a,b) = a + b a 0 0 1 1 b 0 1 0 1 S 0 1 1 1

Funo interseco [AND] (multiplicao lgica) S(a,b) = a*b a 0 0 1 1 b 0 1 0 1 S 0 0 0 1

Funo negao [NOT] (complementar lgico) S(a) = a a 0 1 S 1 0

Funo negao da interseco [NAND] S(a,b) = a b a 0 0 1 1 b 0 1 0 1 S 1 1 1 0

Funo negao da reunio [NOR] S =a +b a 0 0 1 1 b 0 1 0 1 S 1 0 0 0

39

Controlo Industrial

2 - lgebra de Boole

Funo OR exclusivo [XOR] S = ab + ab a 0 0 1 1 b 0 1 0 1 S 0 1 1 0

2.3 - Postulados, propriedades e teoremas


A lgebra booleana, tal como a lgebra tradicional, segue um conjunto de postulados, propriedades, e teoremas que interessa conhecer e analisar. Postulado 1 (Lei do elemento absorvente para a soma lgica) A soma lgica de uma varivel binria mais um 1 lgico equivale a 1 lgico, ou,
a + 1 = 1.

Eq. 2.2

Postulado 2 (Lei do elemento neutro para a soma lgica) A soma lgica de uma varivel binria mais um 0 lgico equivale ao valor da varivel binria, ou,
a + 0 = a.

Eq. 2.3

Postulado 3 (Lei do elemento neutro para a multiplicao lgica) O produto lgico de uma varivel binria pr um 1 lgico igual ao valor da varivel binria, ou,
a 1 = a.

Eq. 2.4

Postulado 4 (Lei do elemento absorvente para a multiplicao lgica) O produto lgico de uma varivel binria pr um 0 lgico igual a um 0 lgico, ou,
a 0 = 0.

Eq. 2.5

Postulado 5 (Lei da idempotncia) A soma lgica de duas variveis binrias iguais equivale ao valor lgico dessa varivel binria, ou,

40

Controlo Industrial

2 - lgebra de Boole

a+a = a a a = a
Postulado 6 (Lei do elemento complementaridade para a soma lgica)

Eq. 2.6

A soma lgica de uma varivel binria mais a negao da mesma varivel binria equivale a 1 lgico, ou,
a + a = 1.

Eq. 2.7

Postulado 7 (Lei do elemento complementaridade para a multiplicao lgica) O produto lgico de uma varivel binria mais a negao da mesma varivel binria equivale a 0 lgico, ou, a a = 0. Postulado 8 (Lei da involuo) Se uma varivel binria negada duas vezes esta no varia, ou, Eq. 2.8

a = a.
Este postulado vlido para qualquer nmero par de negaes. Postulado 9

Eq. 2.9

Se os dois membros de uma igualdade forem negados, esta no sofre qualquer alterao, ou seja,

S =a+b S = a b
Propriedade comutativa

S = (a + b)

Eq. 2.10

S = (a b)

a+b = b+a a b = b a
Propriedade associativa

Eq. 2.11

(a + b) + c = a + (b + c ) (a b) c = a (b c )

Eq. 2.12

41

Controlo Industrial

2 - lgebra de Boole

Propriedade distributiva

a (b + c ) = a b + a c (a b) + c = (a + c ) (b + c )
Teorema 1 (Lei da absoro)

Eq. 2.13

a +ab =a a (a+ b) = a
Teorema 2

Eq. 2.14

a +a b = a + b b (a +b ) = a b
Teorema 3 (Leis de De Morgan ou Princpio da dualidade)

Eq. 2.75

a + b = a b ab = a + b

Eq. 2.16

2.4 - Formas cannicas de uma funo lgica


Uma funo lgica binria S = f (a, b, K) dita estar representada na 1 forma cannica se S estiver escrita como a soma de produtos, nos quais aparecem todas as variveis binrias em cada um dos termos (parcelas ou
MINTERMS)

que constituem a

expresso, em forma directa ou complementada (i.e., negao). Por exemplo, a funo lgica binria S1 = f (a, b, c ) da Eq. 2.7 est expressa na 1 forma cannica.

S1 = a b c + a b c + a b c

Eq. 2.17

Uma funo lgica binria S = f (a, b, K) dita estar representada na 2 forma cannica se S estiver escrita como produto de somas, nos quais aparecem todas as variveis binrias em cada um dos termos (factores ou
MAXTERMS)

que constituem a

expresso, em forma directa ou complementada (i.e., negao).

42

Controlo Industrial

2 - lgebra de Boole

Por exemplo, a funo lgica binria S2 = f (a, b, c ) da Eq. 2.18 est expressa na 2 forma cannica.

S2 = (a + b + c ) (a + b + c ) (a + b + c )

Eq. 2.18

Para podermos obter a funo lgica nas suas formas cannicas directamente da tabela de verdade temos que seguir as regras descritas abaixo: A 1 forma cannica obtm-se somando todos os produtos lgicos (ou
MINTERMS)

formados das linhas da tabela de verdade que do funo S o valor lgico de 1. A 2 forma cannica obtm-se multiplicando todas as somas lgicas (ou
MAXTERMS)

formadas das linhas da tabela de verdade que do funo S o valor lgico de 0.

Exemplo A: Considere a seguinte tabela de verdade:


a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 S 1 0 0 0 0 1 1 0

Como o valor lgico de S 1 para as linhas 1, 6 e 7, a expresso de S na 1 Forma

Cannica fica sendo a soma de MINTERMS formados por estas linhas:

S1 = a b c + a b c + a b c .
Por outro lado, como o valor lgico de S 0 para as linhas 1, 3, 4, 5 e 8, a expresso de S na 2 Forma Cannica fica sendo a multiplicao de estas linhas:
MAXTERMS

formados por

S2 = (a + b + c ) (a + b + c ) (a + b + c ) (a + b + c ) (a + b + c ) .
43

Controlo Industrial

2 - lgebra de Boole

2.5 - Simplificao de funes lgicas


muito importante simplificar as funes lgicas obtidas da tabela de verdade. Quanto mais simples for a expresso obtida, menor ser o nmero de componentes a utilizar na sua implementao. Uma forma de simplificar o nmero de termos de um funo atravs da lgebra de Boole, o que requer muita experincia. Existem, no entanto, outros mtodos igualmente eficazes, so eles: o mtodo grfico ou de Karnaugh e o mtodo numrico de QuineMcCluskey. Simplificao pelo mtodo algbrico No existem regras rgidas existindo por isso a necessidade de recorrer s regras j apresentadas: postulados; propriedades e teoremas da lgebra de Boole.

Exemplo B:

F = a + b (a c ) = a + b (a + c ) = a + b a + bc = a (b + 1) + bc = a + bc
Podemos transformar qualquer funo lgica, seja qual for a forma em que est escrita, numa representao na forma cannica, tanto soma de produtos como produto de somas. Na ausncia de metodologias, bem definidas, temos que utilizar a lgebra de Boole de uma forma racional. Como exemplo de aplicao do mtodo temos.

Exemplo C: Simplificar a seguinte expresso

F = a (b + c ) = a b + a c
Para se passar para a 1 forma cannica observamos que no primeiro termo (MINITERM) falta a varivel c e no segundo termo (MINITERM) falta a varivel b . Ento completamos com (c + c ) no primeiro termo e com (b + b ) no segundo termo. Logo,

F = a b (c + c ) + a (b + b ) c
e, usando a propriedade distributiva (Eq. (2.13)) e desenvolvendo temos F na 1 forma cannica:

44

Controlo Industrial

2 - lgebra de Boole

F = a b c + a b c + a b c
Para se passar para a 2 forma cannica observamos que no primeiro termo (MAXTERM) faltam as variveis b e c e no segundo termo (MAXTERM) falta a varivel a . Ento completamos com (b b ) e (c c ) no primeiro termo e com (a a ) no segundo termo. Logo,

F = a + b b + c c (a a + b + c )
e, usando a propriedade distributiva (Eq. (2.13)), obtm-se:

F = (a + b ) (a + b ) + c c [(a + b + c ) (a + b + c ) ]
que desenvolvendo nos d:

F = (a + b + c c ) (a + b + c c ) [(a + b + c ) (a + b + c ) ] = (a + b + c ) (a + b + c ) (a + b + c ) (a + b + c ) (a + b + c ) (a + b + c )
que ainda pode ser reduzida visto que o
MAXTERM

(a + b + c ) aparece 2 vezes e

portanto pode ser eliminado. Logo, F na 2 forma cannica:

F = (a + b + c ) (a + b + c ) (a + b + c ) ( a + b + c ) (a + b + c )

Entretanto, as formas cannicas no so, em geral, as mais simples expresses para uma funo lgica. H outros mtodos para simplificar funes lgicas que estejam escritas em uma das duas formas cannicas e um destes mtodos, o mtodo grfico de Karnaugh, o que veremos a seguir.

45

Controlo Industrial

2 - lgebra de Boole

Mtodo grfico de Karnaugh Este mtodo relativamente simples e eficaz at 4 variveis. Pode ser usado com mais variveis (5 ou 6) mas no aconselhvel. Para utilizar o mtodo necessrio utilizar a expresso numa das formas cannicas. Devemos, inicialmente, construir mapas com 2N clulas, cada uma correspondente a um MINTERM. F F 0 1 a 0 1 b 0 1 a 0 0 0 1 1 1 1 0 b c F 0 0 1 1 a 2 variveis 3 variveis 0 1 1 0 b 4 variveis 0 0 0 1 1 1 1 0 c d

O passo seguinte consiste no preenchimento destes mapas, com base na tabela de verdade ou da funo lgica na 1 ou 2 forma cannica. Se de uma clula para a outra apenas variar uma das variveis, ento, podemos dizer que temos adjacncia lgica. Regras a respeitar para o preenchimento dos mapas: Coloca-se 1 em cada clula (quer seja a 1 ou 2 forma cannica) onde a funo exista. Agrupam-se os 1s em blocos de 2, 4, 8 ou 16 clulas. S se podem agrupar clulas adjacentes. Construir o menor nmero de blocos com o maior nmero de 1s possvel. Uma mesma casa pode pertencer a mais do que um bloco. A cada grupo de 1s corresponde um termo (parcela) da expresso final. A varivel representada na forma negada quando o valor lgico dela for 0 , ou 1 quando o valor for directo (no negado).

46

Controlo Industrial

2 - lgebra de Boole

Exemplo D: Considere a funo lgica F = f (a, b, c , d ) abaixo na 1 forma cannica:

F = a b c d + a b c d + a b c d + a b c d + a b c d + a b c d
cuja tabela da verdade dada abaixo: a 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 b 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 c 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 d 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 F 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 1

Construindo-se o mapa abaixo (com 24 = 16 clulas), temos:

E portanto, aps agruparmos os 1s em blocos de 2, temos a expresso de F simplificada:


47

Controlo Industrial

2 - lgebra de Boole

F = bc d + ac d + a bd
que pode ser representada pelo seguinte circuito da Fig. 2.5.

Fig. 2.5 Sistema de controlo industrial tpico.

Exemplo F: Considere a funo lgica F = f (a, b, c , d ) abaixo na 1 forma cannica:

F = a b c d + a b c d + a b c d + a b c d + a b c d
cuja tabela da verdade dada abaixo:

a 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

b 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

c 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

d 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

F 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1 1

48

Controlo Industrial

2 - lgebra de Boole

Construindo-se o mapa abaixo (com 24 = 16 clulas), temos:

E portanto, aps agruparmos os 1s em blocos de 2, temos a expresso de F simplificada:

F = bc d + abd + ac d
que pode ser realizada na forma de circuito como:

Fig. 2.6 Sistema de controlo industrial tpico.

Entretanto, se agruparmos os 1s em blocos diferentes:

49

Controlo Industrial

2 - lgebra de Boole

teremos ento outra expresso de F simplificada:

F = bc d + abc + ac d
que pode ser realizada na forma de circuito como:

Fig. 2.7 Sistema de controlo industrial tpico.

- xxx -

50