You are on page 1of 25

Lgica

Sistemas para Internet


Mapas de Karnaugh
Professor Gilvan Maiochi
Introduo
Minimizar ou Simplificar uma funo booleana a operao mediante
a qual se reduz ao mnimo o nmero de termos, resultando em
economia do circuito a ela correspondente. Os mtodos de aplicao
mais frequentes na minimizao de uma funo ou expresso
booleana so:
1. Mtodo Algbrico
2. Mtodo do Mapa de Karnaugh
3. Mtodo de Quine-Mckluskey
Nosso objetivo na aula de hoje aprender a utilizar o mtodo do Mapa
de karnaugh para a simplificao de circuitos.
O mtodo algbrico j foi estudado como aplicao dos teoremas da
lgebra de Boole; Citarei apenas um exemplo, como lembrete, para
possibilitar comparaes futuras com o Mapa de Karnaugh.
Introduo
Seja minimizar a funo
y = a((b + c') (b' + c)) + ab + (a' + b') (b + c')
Soluo:
y = a((b + c') (b' + c)) + ab + (a' + b') (b + c')
= a(bb' + bc + b'c' + cc') + ab + (a' b + a'c' + b'b + b'c')
= abc + ab'c' + ab + a'b + a'c' + b'c
= ab + b'c' + a'b + a'c'
= (a + a') b + b'c' + a'c'
= b + b'c' + a'c'
= b + c' + a'c'
= b + c' (1 + a')
= b + c'



Veremos que podemos transformar sentenas abertas (assunto da
aula anterior) em proposies, usando expresses como para todo,
qualquer que seja, existe um, etc.
Exemplos
Consideremos a sentena aberta P(x) = x + 1 = 1, podemos, a partir
dela, formar as seguintes proposies:
Existe x pertencente a Z, de tal forma que x + 1 = 1
Para todo x pertencente a Z, x + 1 = 1
Existe x N tal que Z
Para todo x Q, R
Qualquer que seja o nmero natural ele inteiro
Existe um nmero primo par
Mtodo do Mapa de Karnaugh
O mapa de Karnaugh uma forma modificada de tabela-verdade que nos
permite representar graficamente uma funo booleana e, se for o caso,
simplific-la.
Mapa a uma Varivel
No caso de uma varivel, o mapa formado por duas clulas que
correspondem a cada um dos valores 0 e 1 que podem ser atribudos
varivel.


Esta tabela pode ser lida de uma das seguintes maneiras:

ou
onde atribui-se o valor 1 varivel no complementada (a) e o valor 0
varivel complementada (a').
0 1
a
0 1
a 0 1
0 1
a a' a
Mapa a duas variveis
formado por quatro clulas que correspondem s combinaes binrias que
podem ocorrer com estas variveis. Os termos da funo a ser representada
devem ser escritos em ordem alfabtica e, em todos os mapas de Karnaugh, a
ordem em que entraro as variveis deve vir claramente anotada na parte
superior esquerda.


a
b 0 1
0 00 10
Representao Binria
1 01 11
a
b 0 1
0 a'b' ab'
Representao Literal
1 a'b ab
a
b 0 1
0 0 2
Representao Decimal
1 1 3
Mtodo do Mapa de Karnaugh
a
bc 0 1
00 000 100
01 001 101
11 011 111
10 010 110
a
bc 0 1
00 a'b'c' ab'c'
01 a'b'c ab'c
11 a'bc abc
10 a'bc' abc'
a
bc 0 1
00 0 1
01 2 3
11 6 7
10 4 5
Mapa a trs variveis
Mtodo do Mapa de Karnaugh
ab
cd 00 01 11 10
00 0000 0100 1100 1000
01 0001 0101 1101 1001
11 0011 0111 1111 1011
10 0010 0110 1110 1010
ab
cd 00 01 11 10
00 a'b'c'd' a'bc'd' abc'd' ab'c'd'
01 a'b'c'd a'bc'd abc'd ab'c'd
11 a'b'cd a'bcd abcd ab'cd
10 a'b'cd' a'bcd' abcd' ab'cd'
ab
cd 00 01 11 10
00 0 4 12 8
01 1 5 13 9
11 3 7 15 11
10 2 6 14 10
Mapa a quatro variveis
Mtodo do Mapa de Karnaugh
Representao de uma Funo Via
Mapa de Karnaugh
Representemos, mediante o mapa de Karnaugh, a seguinte funo na forma
normal disjuntiva:
y = abc' + ab'c' + abc + a'b'c
Trata-se de uma funo a trs variveis e o mapa a ser utilizado :






Para representar a funo atravs do mapa, colocamos o valor 1 nas clulas
correspondentes a cada termo da funo deixando as demais vazias. Assim:
a
bc 0 1
00
01
11
10
Representao de uma Funo Via
Mapa de Karnaugh






y = abc' + ab'c' + abc + a'b'c

a
bc 0 1
00 1
01 1
11 1
10 1
Representao de uma Funo Via
Mapa de Karnaugh
Representar a funo
y = a'b'cd + ab'd + abc' + ac'd'
a quatro variveis que, em trs de seus termos, falta uma varivel (no est na
forma normal disjuntiva). Relembremos um teorema til ao Mapa de Karnaugh
ab + ab' = a
conforme aplicao das propriedades da lgebra booleana:
F = A . B + A . B'
propriedade distributiva (evidenciando o elemento comum)
F = A . (B + B')
propriedade dos complementos
F = A . 1
propriedade da identidade (ou elemento neutro)
F = A
Representao de uma Funo Via
Mapa de Karnaugh
De acordo com o teorema ab + ab' = a, temos:
y = a'b'cd + ab'd + abc' + ac'd'
y = a'b'cd + ab'cd + ab'c'd + abc'd + abc'd' + abc'd' + ab'c'd'
y = a'b'cd + ab'cd + ab'c'd + abc'd + abc'd' + ab'c'd'
E, construindo o mapa correspondente, vem:









ab
cd 00 01 11 10
00 a'b'c'd' a'bc'd' abc'd' ab'c'd'
01 a'b'c'd a'bc'd abc'd ab'c'd
11 a'b'cd a'bcd abcd ab'cd
10 a'b'cd' a'bcd' abcd' ab'cd'
ab
cd 00 01 11 10
00 1 1
01 1 1
11 1 1
10
Representao de uma Funo Via
Mapa de Karnaugh
Note-se que no caso de funes como y = a'bcd' + ab deve-se considerar
todas as possibilidades de aplicao do teorema ab + ab' = a, ficando o mapa
correspondente como se v a seguir:
y = a'bcd' + ab
y = a'bcd' + abcd + abcd' + abc'd + abc'd'

ab
cd 00 01 11 10
00 a'b'c'd' a'bc'd' abc'd' ab'c'd'
01 a'b'c'd a'bc'd abc'd ab'c'd
11 a'b'cd a'bcd abcd ab'cd
10 a'b'cd' a'bcd' abcd' ab'cd'
ab
cd 00 01 11 10
00 1
01 1
11 1
10 1 1
Representao de uma Funo Via
Mapa de Karnaugh
Na representao de uma funo mediante o mapa de Karnaugh, deve-se buscar a
forma mais simples de representao, considerando-se que uma funo a duas variveis
pode ser representada em mapas para maior nmero de variveis. Assim, a funo y =
ab tem as seguintes representaes:
a
b 0 1
0
1 1
a
bc 0 1
00
01
11 1
10 1
ab
cd 00 01 11 10
00 1
01 1
11 1
10 1
Representao de uma Funo Via
Mapa de Karnaugh
Duas clulas que diferem em apenas uma varivel so ditas adjacentes e
podem ser combinadas pelo teorema ab + ab' = a. Num mapa de Karnaugh
podemos ter clulas adjacentes, sem que tenham lados comuns.
Exemplos:
a
b 0 1
0
1 1 1
a
b 0 1
0
1 a'b ab
a
bc 0 1
00 1
01 1
11
10
a
bc 0 1
00 ab'c'
01 ab'c
11
10
Representao de uma Funo Via
Mapa de Karnaugh
Exemplos:
a
bc 0 1
00 1
01
11
10 1
a
bc 0 1
00 ab'c'
01
11
10 abc'
ab
cd 00 01 11 10
00
01 ab'c'd
11 ab'cd
10
ab
cd 00 01 11 10
00
01 1
11 1
10
Representao de uma Funo Via
Mapa de Karnaugh
Exemplos:
ab
cd 00 01 11 10
00
01 a'b'c'd ab'c'd
11
10
ab
cd 00 01 11 10
00
01 1 1
11
10
ab
cd 00 01 11 10
00
01
11
10 a'b'cd' ab'cd'
ab
cd 00 01 11 10
00
01
11
10 1 1
Simplificao de Funes Via
Mapa de Karnaugh
Dada uma funo representada em um mapa de Karnaugh, se encontrarmos
termos em clulas adjacentes, podemos fazer uma simplificao. No mapa que
representa a funo:
y = a'bc'd' + abc'd + a'b'cd + a'bcd + ab'cd'

ab
cd 00 01 11 10
00 a'bc'd'
01 abc'd
11 a'b'cd a'bcd
10 ab'cd'
ab
cd 00 01 11 10
00 1
01 1
11 1 1
10 1
a'cd
Podemos efetuar a
simplificao, substituindo
a'b'cd + a'bcd por a'cd. A
operao indicada
agrupando-se os dois
termos conforme mostra
o mapa apresentado.
Simplificao de Funes Via
Mapa de Karnaugh
Quando os termos a simplificar encontram-se em clulas nos extremos do
mapa, indicamos conforme segue:

ab
cd 00 01 11 10
00 1
01 1 1
11
10 1
a'bd'
b'c'd
Simplificao de Funes Via
Mapa de Karnaugh
No mapa da funo:
y = a'bc'd' + a'bc'd + a'bcd + abc'd
temos:

ab
cd 00 01 11 10
00 1
01 1 1
11 1
10
Simplificao de Funes Via
Mapa de Karnaugh
Lembrando que a funo no simplificada y = a'bc'd' + a'bc'd + a'bcd + abc'd,
onde:
ab ab
cd 00 01 11 10 cd 00 01 11 10
00 1 00 1
01 1 1 01 1 1
11 1 11 1
10 10
y = a'bc' + abc'd + a'bcd y = bc'd + a'bc'd' + a'bcd
ab
cd 00 01 11 10
00 1
01 1 1
11 1
10
y = a'bd + a'bc'd' + abc'd
a'bc'
bc'd
a'bd
Simplificao de Funes Via
Mapa de Karnaugh
Transportando as representaes anteriores para um nico mapa, obtemos:











que a funo simplificada. Para simplificar ao mximo uma funo torna-se
necessrio incluir o mesmo termo em diversos agrupamentos.
ab
cd
00 01 11 10
00 1
01 1 1
11 1
10
y = a'bc' + bc'd + a'bd
a'bc'
bc'd
a'bd
Simplificao de Funes Via
Mapa de Karnaugh
Vejamos agora o caso em que as clulas so adjacentes duas a duas.
Simplifique a funo
y = a'b'c + a'bc + ab'c + abc
O mapa correspondente :

a
bc 0 1
00
01 1 1
11 1 1
10
Simplificao de Funes Via
Mapa de Karnaugh
e, temos duas maneiras diferentes para simplificar a mesma funo, ou seja:






Considerando que as celas adjacentes no caso de ac e ac' diferem na varivel
a e no caso de bc e b'c diferem na varivel b, podemos agrup-las da maneira
mostrada a seguir, ou seja:

a a
bc 0 1 bc 0 1
00 00
01 1 1 01 1 1
11 1 1 11 1 1
10 10
a'c
bc
b'c
ac
a a
bc 0 1 bc 0 1
00 00
01 1 1 01 1 1
11 1 1 11 1 1
10 10
c
c
Simplificao de Funes Via
Mapa de Karnaugh
Outros casos de simplificao:
ab ab
cd 00 01 11 10 cd 00 01 11 10
00 1 1 1 00 1 1
01 1 01 1 1 1 1
11 1 11 1 1
10 1 1 1 10 1 1
y = ab' + a'd' y = bd + b'd' + c'd
a'd'
c'd
ab'
bd
b'd'
Simplificao de Funes Via
Mapa de Karnaugh
Vejamos agora em que as clulas so adjacentes quatro a quatro:
Seja o mapa de Karnaugh que representa a funo
y = a'b'c'd + a'b'cd + a'bc'd + a'bcd + abc'd + abcd + ab'c'd + ab'cd
ab
cd 00 01 11 10
00
01 1 1 1 1
11 1 1 1 1
10
ab
cd 00 01 11 10
00
01 1 1 1 1
11 1 1 1 1
10
ab
cd 00 01 11 10
00
01 1 1 1 1
11 1 1 1 1
10
y = cd + c'd = d
c'd
cd
a'd
ad
y = ad + a'd = d