Lógica para Computação Álgebra de Boole
Formas Normais Definição: diz-se que uma proposição está na forma normal (FN) se e somente se, quando muito, contém os conectivos ~, ^ e v. - Toda proposição pode ser levada para uma FN equivalente pela eliminação dos conectivos e. - Substitui-se p q por ~p v q; - Substitui-se p q por (~p v q) ^ (p v ~q)
FORMA NORMAL CONJUNTIVA (FNC) - Definição: diz-se que uma proposição está na forma normal conjuntiva (FNC) se e somente se, são verificadas as seguintes condições: 1. Contém, quando muito, os conectivos ~, v e ^; 2. ~ não aparece repetido (~~) e não tem alcance sobre ^ e v; [não ocorre ~(~p v q)] 3. v não tem alcance sobre ^. [não há p v (q ^ r)].
Regras para determinar uma FNC (1) Elimina-se os conectivos e pela substituição de p q por ~p v q e de p q por (~p v q) ^ (p v ~q); (2) Elimina-se negações repetidas e parêntesis precedidos de ~ pelas regras da Dupla negação e De Morgan ; (3) Substitui-se p v (q ^ r) por (p v q) ^ (p v r); (4) Substitui-se (p ^ q) v r por (p v r) ^ (q v r).
FORMA NORMAL CONJUNTIVA (FNC) Exemplo 1: Determinar a FNC da proposição ~(((p v q) ^ ~q) v (q ^ r)) (1) ~((p v q) ^ ~q) ^ ~(q ^ r) (2) (~(p v q) v ~~q) ^ (~q v ~r) (3) ((~p ^ ~q) v q) ^ (~q v ~r) (4) (~p v q) ^ (~q v q) ^ (~q v ~r)
FORMA NORMAL CONJUNTIVA (FNC) FNC: (~p v q) ^ (~q v q) ^ (~q v ~r) (i) Contém apenas os conectivos de ~, v e ^ (i) ~ não aparece repetido (~~) e não tem alcance sobre ^ e v; (iii) v não tem alcance sobre ^.
FORMA NORMAL CONJUNTIVA (FNC) Exemplo 2: Determinar a FNC da proposição p q v ~r (1) (~p v (q v ~r) ^ (p v ~(q v ~r)) (2) ((~p v q) v (~p v ~r)) ^ ((p v (~q ^ r)) (3) (~p v q v ~r) ^ (p v ~q) ^ (p v r)
FORMA NORMAL CONJUNTIVA (FNC) FNC: (~p v q v ~r) ^ (p v ~q) ^ (p v r) (i) Contém apenas os conectivos de ~, v e ^ (i) ~ não aparece repetido (~~) e não tem alcance sobre ^ e v; (iii) v não tem alcance sobre ^.
FORMA NORMAL DISJUNTIVA (FND) - Definição: diz-se que uma proposição está na forma normal disjuntiva (FND) se e somente se, são verificadas as seguintes condições: 1. Contém, quando muito, os conectivos ~, v e ^; 2. ~ não aparece repetido (~~) e não tem alcance sobre ^ e v; [não ocorre ~(~p v q)] 3. ^ não tem alcance sobre v. [não há p ^ (q v r)].
Regras para determinar uma FND (1) Elimina-se os conectivos e pela substituição de p q por ~p v q e de p q por (~p v q) ^ (p v ~q); (2) Elimina-se negações repetidas e parêntesis precedidos de ~ pelas regras da Dupla negação e De Morgan ; (3) Substitui-se p ^ (q v r) por (p ^ q) v (p ^ r); (4) Substitui-se (p v q) ^ r por (p ^ r) v (q ^ r).
FORMA NORMAL DISJUNTIVA (FND) Exemplo 1 : Determinar a FND da proposição (p q) ^ (q p) (1) (~p v q) ^ (~q v p) [aplica-se distributiva] (2) ((~p v q) ^ ~q) v ((~p v q) ^ p) [aplica-se distributiva] (3) (~p ^ ~q) v (q ^ ~q) v (~p ^ p) v (p ^ q)
FORMA NORMAL DISJUNTIVA (FND) FND: (~p ^ ~q) v (q ^ ~q) v (~p ^ p) v (p ^ q) (i) Contém apenas os conectivos de ~, v e ^ (i) ~ não aparece repetido (~~) e não tem alcance sobre ^ e v; (iii) ^ não tem alcance sobre v.
Exemplo 2 : Determinar a FND da proposição ~(((p v q) ^ ~q) v (q ^ r)) (1) ~((p v q) ^ ~q) ^ ~(q ^ r) (2) (~(p v q) v q) ^ (~q v ~r) (3) ((~p ^ ~q) v q) ^ (~q v ~r)) [aplica-se distributiva] (4) ((~p ^ ~q) v q) ^ ~q v ((~p ^ ~q) v q) ^ ~r [aplica-se distributiva] (5) (~p ^ ~q ^~q) v (q ^ ~q) v (~p ^ ~q ^ ~r) v (q ^ ~r)
FORMA NORMAL DISJUNTIVA (FND) FND: (~p ^ ~q ^~q) v (q ^ ~q) v (~p ^ ~q ^ ~r) v (q ^ ~r) (i) Contém apenas os conectivos de ~, v e ^ (i) ~ não aparece repetido (~~) e não tem alcance sobre ^ e v; (iii) ^ não tem alcance sobre v.
Álgebra de Boole 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. George Boole 1815-1864 Desenvolveu o primeiro sistema formal para raciocínio lógico (lógica booleana).
Álgebra de Boole 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!!
Álgebra de Boole Lógica e Computação Arquitetura de Computadores Modelagem de circuitos (hardware) Minimização de circuitos
Circuitos Lógicos Exemplo:
Álgebra de Boole 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.
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?
FUNÇÕES BOOLEANAS p q f(p,q) i 1 F F F i 2 F V V p Λ q i 3 V F V p Λ q i 4 V V F ( p Λ q) V (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
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) i 1 F F F p Λ q i 2 F V V i 3 V F V i 4 V V F p Λ q (p V q) Λ ( p V q)
FUNÇÕES BOOLEANAS Comparando as duas tabelas verdades: ( p Λ q) V (p Λ q) (p V q) Λ ( p V q) F F V = V V F V F Assim, toda função booleana equivale a uma fórmula proposicional!!!
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.
ÁLGEBRA BOOLEANA Operações fundamentais da álgebra booleana: AND (conjunção) OR (disjunção) NOT (negação) A B A.B 0 0 0 0 1 0 1 0 0 1 1 1 A B A+B 0 0 0 0 1 1 1 0 1 1 1 1 A A 0 1 1 0 Nota: A.B AB
ÁLGEBRA BOOLEANA Operações derivadas da álgebra booleana: NAND NOR XOR A B A.B 0 0 1 0 1 1 1 0 1 1 1 0 A B A+B 0 0 1 0 1 0 1 0 0 1 1 0 A B A+B 0 0 0 0 1 1 1 0 1 1 1 0
ÁLGEBRA BOOLEANA
ÁLGEBRA BOOLEANA
ÁLGEBRA BOOLEANA Exemplo de Função Lógica A função F(X,Y,Z) = X + Y.Z
ÁLGEBRA BOOLEANA Exemplo de Funções Lógicas
Á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)
ÁLGEBRA BOOLEANA Como qualquer prova de teorema, a cada passo em direção à prova, você tem que dizer o porquê 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. 1 = (teorema 5) A
SIMPLIFICAÇÃO - Álgebra Álgebra ABC + A'BC + AB'C + A'B'C + ABC = BC(A + A') + B'C(A + A') + ABC = BC.1 + B'C.1 + ABC = C(B + B') + ABC = C + ABC = (C + AB).(C + C ) = (C + AB).1 = C + AB
Exercícios Álgebra de Boole Converter as seguintes proposições para expressões lógicas da Álgebra de Boole e construir suas tabelas-verdade: a) (p ~q) r ~p b) (~p q) p c) (~p q) (p ~q) d) ~(p q) r e) (p q) (p r)