A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Minimização de Funções Booleanas

Apresentações semelhantes


Apresentação em tema: "Minimização de Funções Booleanas"— Transcrição da apresentação:

1 Minimização de Funções Booleanas
Disciplina: Lógica para Computação - INF05508 Prof. Marcus Ritt Clóvis Ricardo Fiegenbaum Ricardo MaregaMorschbacher Rodrigo Jaureguy Dobler

2 INF05508: Lógica para computação
ROTEIRO INTRODUÇÃO História Aplicações Definição FUNÇÕES BOOLEANAS ÁLGEBRA BOOLEANA SIMPLIFICAÇÃO Álgebra Mapa de Karnaugh 1 EXEMPLO PRÁTICO - f(tempo de apresentação) = rápido INF05508: Lógica para computação

3 Boole e os Fundamentos da Lógica Matemática e da Computação
INTRODUÇÃO - História Boole e os Fundamentos da Lógica Matemática e da Computação Boole e os Fundamentos da Lógica Matemática e da Computação. O inglês George Boole é considerado o pai da lógica simbólica. Desenvolveu o primeiro sistema formal para raciocínio lógico (lógica booleana). George Boole  1864 INF05508: Lógica para computação

4 INF05508: Lógica para computação
INTRODUÇÃO - História Boole, em sua obra The Mathematical Analysis of Logic, percebeu que uma álgebra de objetos (que não fossem números) poderia ser construída e então, ter várias interpretações. “Primeiro a forma, depois o conteúdo!!” INF05508: Lógica para computação

5 INTRODUÇÃO - Aplicações
Lógica e Computação Arquitetura de Computadores Modelagem de circuitos (hardware) Minimização de circuitos INF05508: Lógica para computação

6 INTRODUÇÃO - Definição
Funções Booleanas e Fórmulas Proposicionais Uma função booleana é uma função que recebe e retorna somente valores do conjunto B = {V, F} Exemplo : Φ = p Λ q A função booleana Φ é dada por uma tabela verdade. Logo, qualquer fórmula proposicional define uma função booleana. INF05508: Lógica para computação

7 INF05508: Lógica para computação
FUNÇÕES BOOLEANAS Funções Booleanas e Fórmulas Proposicionais Mas, será que existe uma fórmula proposicional para cada função booleana? Por exemplo: f(p,q) = V quando p e q têm valores lógicos contrários. Existe uma fórmula proposicional que possui a mesma tabela verdade que f: B x B → B? INF05508: Lógica para computação

8 INF05508: Lógica para computação
FUNÇÕES BOOLEANAS p q f(p,q) i1 F i2 V i3 i4 ¬p Λ q (¬p Λ q) V (p Λ ¬q) p Λ ¬q O que podemos observar acima? Uma FND (Φ1 Λ Φ2 Λ ... Λ Φn) V (Φn+1 Λ Φn+3 Λ ... Λ Φm) V .... O número de termos desta FND corresponde ao número de linhas tal que f(p,q) = V INF05508: Lógica para computação

9 INF05508: Lógica para computação
FUNÇÕES BOOLEANAS É possível também utilizar uma FNC? (Φ1 V Φ2 V ... V Φn) Λ (Φn+1 V Φn+3 V ... V Φm) Λ .... Lembrete - DeMorgan: ¬(A Λ B) ≡ ¬A V ¬B p q f(p,q) i1 F i2 V i3 i4 p Λ q (p V q) Λ (¬p V ¬q) ¬p Λ ¬q INF05508: Lógica para computação

10 INF05508: Lógica para computação
FUNÇÕES BOOLEANAS Comparando as duas tabelas verdades: (¬p Λ q) V (p Λ ¬q) (p V q) Λ (¬p V ¬q) F V = Assim, toda função booleana equivale a uma fórmula proposicional!!! INF05508: Lógica para computação

11 INF05508: Lógica para computação
FUNÇÕES BOOLEANAS Na concepção de circuitos, e na maior parte dos projetos, o objeto de interesse será o estado em que as combinações avaliam o valor “V” Hardware: V ou F não tem um significado físico (elétrico) Assim, convenciona-se: F – bit 0, 0 Volts, não circula corrente elétrica, etc. V – bit 1, 5 Volts (p. ex), circula corrente elétrica, etc. INF05508: Lógica para computação

12 INF05508: Lógica para computação
ÁLGEBRA BOOLEANA Operações fundamentais da álgebra booleana: AND (conjunção) OR (disjunção) NOT (negação) A B A.B 1 A B A+B 1 A 1 Nota: A.B ≡ AB INF05508: Lógica para computação

13 INF05508: Lógica para computação
ÁLGEBRA BOOLEANA Operações derivadas da álgebra booleana: NAND NOR XOR A B A.B 1 A B A+B 1 A B A+B 1 INF05508: Lógica para computação

14 INF05508: Lógica para computação
ÁLGEBRA BOOLEANA ? INF05508: Lógica para computação

15 INF05508: Lógica para computação
ÁLGEBRA BOOLEANA INF05508: Lógica para computação

16 INF05508: Lógica para computação
ÁLGEBRA BOOLEANA Postulados: 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) INF05508: Lógica para computação

17 INF05508: Lógica para computação
ÁLGEBRA BOOLEANA Como qualquer prova de teorema, a cada passo em direção à prova, você tem que dizer o porque do passo. Veja este exemplo: A . (A + B) = (pelo teorema 16) A . A + A . B = (teorema 7) A + A . B = (teorema 5) A . 1 + A . B = (teorema 16) A . (1 + B) = (teorema 2) A = (teorema 5) A INF05508: Lógica para computação

18 SIMPLIFICAÇÃO - Álgebra
ABC + A'BC + AB'C + A'B'C + ABC‘ = BC(A + A') + B'C(A + A') + ABC‘ = BC1 + B'C1 + ABC‘ = C(B + B') + ABC‘ = C + ABC‘ = C + AB INF05508: Lógica para computação

19 SIMPLIFICAÇÃO - Álgebra
E se a expressão tornar-se muito grande? ABCD + A'BCD’ + AB'C’D + A'B'CD + ABC‘D’ +... (ainda não acabou?) +... Mapas de Karnaugh INF05508: Lógica para computação

20 SIMPLIFICAÇÃO – Mapas de Karnaugh
1 variável INF05508: Lógica para computação

21 SIMPLIFICAÇÃO – Mapas de Karnaugh
2 variáveis INF05508: Lógica para computação

22 SIMPLIFICAÇÃO – Mapas de Karnaugh
3 variáveis INF05508: Lógica para computação

23 SIMPLIFICAÇÃO – Mapas de Karnaugh
4 variáveis INF05508: Lógica para computação

24 EXEMPLO PRÁTICO PROJETO DE UM SOMADOR COMPLETO DE 2 BITS
Entradas: A, B – bits somados Ci – carry-in (vem um da soma) Saídas: Co – carry-out (vai um da soma) Função soma: S = A + B + Ci A B Ci S Co 1 INF05508: Lógica para computação

25 EXEMPLO PRÁTICO PROJETO DE UM SOMADOR COMPLETO DE 2 BITS
Ci S Co 1 Da tabela verdade (com simplificação algébrica): S = A’B’Ci + A’BCi’ + AB’Ci’ + ABCi = S = Ci # (A#B) (# = XOR) Co = A’BCi + AB’Ci + ABCi’ + ABCi Co = Ci(A#B) + AB   INF05508: Lógica para computação

26 EXEMPLO PRÁTICO PROJETO DE UM SOMADOR COMPLETO DE 2 BITS
Temos 3 variáveis de entrada Mapa para 3 variáveis INF05508: Lógica para computação

27 EXEMPLO PRÁTICO PROJETO DE UM SOMADOR COMPLETO DE 2 BITS
Circuito Lógico INF05508: Lógica para computação

28 INF05508: Lógica para computação
FIM OBRIGADO !!! Danke !!! INF05508: Lógica para computação


Carregar ppt "Minimização de Funções Booleanas"

Apresentações semelhantes


Anúncios Google