Escolar Documentos
Profissional Documentos
Cultura Documentos
Ciência da Computação
P. Blauth Menezes
blauth@inf.ufrgs.br
P. Blauth Menezes
♦ Diagramas de Venn
• universalmente conhecidos e largamente usados
• usam figuras geométricas, em geral representadas no plano
A B C
1
b 2
3
B U
a A C
b
Em geral
• U é representado por um retângulo
• demais conjuntos por círculos, elipses, etc
• emC ⊆ U, o conjunto C é destacado, para auxiliar visualmente
C
A B
A⊆B∧B⊆C⇒A⊆C
Seja a ∈ A. Então:
Portanto, para qq a ∈ A, a ∈ C
S = { A A é um conjunto ordinário }
{ a ∈ A p(a) }
♦ Álgebra de Conjuntos
• álgebra grande
• operações sobre a coleção (não-conjunto) de todos os conjuntos
3.4.1 União
A B
A∪B
Dígitos ∪ Vogais = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, e, i, o, u }
...
9 8 u 9 8
A ∪ B = { 0, 1, 3, 4, 5, 6,… }
• Conjunto universo U e A ⊆ U
∅∪∅ = ∅ U∪∅ = U
U∪A = U U∪U = U
Idempotência
A∪A = A (exercício)
Comutatividade
Associatividade
A ∪ (B ∪ C) = (A ∪ B) ∪ C
A ∪ (B ∪ C) = (A ∪ B) ∪ C
A B A B A B
C C C
B∪C A∪ B A ∪ (B ∪ C) = (A ∪ B) ∪ C
A ∪ (B ∪ C) = (A ∪ B) ∪ C
Prova: (direta)
(X = Y ⇔ X ⊆ Y e Y ⊆ X)
• A ∪ (B ∪ C) ⊆ (A ∪ B) ∪ C caso 1
• (A ∪ B) ∪ C ⊆ A ∪ (B ∪ C) caso 2
• Portanto, A ∪ (B ∪ C) ⊆ (A ∪ B) ∪ C
• Portanto, (A ∪ B) ∪ C ⊆ A ∪ (B ∪ C)
Logo, A ∪ (B ∪ C) = (A ∪ B) ∪ C
A∪B∪C
A B
Def: Intersecção
A e B conjuntos
A∩B
♦ Conjuntos disjuntos
• conjuntos independentes ou conjuntos mutuamente exclusivos
A∩B=∅
Dígitos ∩ Pares = { 0, 2, 4, 6, 8 }
...
9 8 u 9 8
R∩Q = Q R∩I = I
Conjunto universo U e A ⊆ U
∅∩∅ = ∅ U∩∅ = ∅
U∩A = A U∩U = U
Idempotência
A∩A = A (exercício)
Comutatividade
Associatividade
A ∩ (B ∩ C) = (A ∩ B) ∩ C (exercício)
A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)
A B A B A B A B
C C C C
A ∩ (B ∪ C) =
B∪C A∩ B A ∩C
(A ∩ B) ∪ (A ∩ C)
A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C)
A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)
Prova: (direta)
Suponha que A, B e C são conjuntos quaisquer. Então:
Logo, A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)
U U
A A ~A
Def: Complemento
Complemento de um conjunto A ⊆ U
A' ou ~A
~A = { x ∈ U x ∉ A }
Exp: Complemento
Dígitos = { 0, 1, 2,…, 9 } conjunto universo e A = { 0, 1, 2 }
• ~A = { 3, 4, 5, 6, 7, 8, 9 }
Dígitos Dígitos
3 4 6 3 4 6
0 0
1 1
5 7 5 7
2 8 2 8
9 9
• ~A = { x ∈ N x > 2 }
• ~∅ = U
• ~U = ∅
R conjunto universo
• ~Q = I
• ~I = Q
• A ∪ ~A = U p ∨ ¬p é tautologia
• A ∩ ~A = ∅ p ∧ ¬p é contradição
~~A = A
~(A ∪ B) = ~A ∩ ~B ¬(p ∨ q) ⇔ ¬p ∧ ¬q
~(A ∩ B) = ~A ∪ ~B ¬(p ∧ q) ⇔ ¬p ∨ ¬q
U U U U
A B A B A B A B
A∪ B ~A ~B ~(A ∪ B) = ~A ∩ ~B
A ∩ B = ~(~A ∪ ~B)
A ∪ B = ~(~A ∩ ~B)
Def: Diferença
A e B conjuntos
A-B
A - B = A ∩ ~B = { x x ∈ A ∧ x ∉ B }
...
9 8 u 9 8
Universo U e A ⊆ U
• ∅-∅ = ∅
• U-∅ = U
• U - A = ~A
• U-U = ∅
♦ Seguindo o racionínio
• definição de uma operação unária
• Conjunto das Partes
∗ aplicada a um conjunto A
∗ resulta no conjunto de todos os subconjuntos de A
P(A) ou 2A
P(A) = { X X ⊆ A }
• P(∅) = { ∅ }
• P(A) = { ∅, { a } }
• P(B) = { ∅, { a }, { b }, { a, b } }
• P(C) = { ∅, { a }, { b }, { c }, { a, b }, { a, c }, { b, c }, { a, b, c } }
• P(D) = { ∅, { a }, { ∅ }, { { a, b } }, { a, ∅ }, { a, { a, b } }, { ∅, { a,
b } }, { a, ∅, { a, b } } }
• justifica a notação 2X
∗ prova por indução introduzida adiante
Resultante: { ∅, { a }, { b }, { a, b } }
• Operando: ∅ ∪ { a } ∪ { b } ∪ { a, b } = { a, b }
Resultante: { ∅, { a }, { b }, { c }, { a, b }, { a, c }, { b, c }, { a, b, c } }
• Operando: ∅ ∪ { a } ∪ { b } ∪ { c } ∪ { a, b } ∪ { a, c } ∪ { b, c } ∪
{ a, b, c } = { a, b, c }
♦ n-upla ordenada
〈x1, x2, x3,…,xn〉 ou (x1, x2, x3,…,xn)
♦ A ordem é importante
〈x, y〉 ≠ 〈y, x〉
A×B
A × B = { 〈a, b〉 a ∈ A e b ∈ B }
• Não-Associatividade
∗ (A × B) × C e A × (B × C) são diferentes por quê?
• Operandos: { a } e { a, b }
• Operandos: { a, b } e { a, b }
• Operandos: { a } e N
{ 〈〈a, a〉, 0〉, 〈〈a, a〉, 1〉, 〈〈a, a〉, 2〉, 〈〈a, b〉, 0〉, 〈〈a, b〉, 1〉, 〈〈a, b〉, 2〉 }
D = { 0, 1, 2,…, 9 }, V = { a, e, i, o, u } e P = { 0, 2, 4, 6,… }
A = { a, b, c }
• ∅+∅ = ∅
• A + A = { 〈a, 0〉, 〈b, 0〉, 〈c, 0〉, 〈a, 1〉, 〈b, 1〉, 〈c, 1〉 }
∅
• Operandos: ∅ e ∅
• exercício:
∗ como → e ↔ podem ser expressos na Álgebra de Conjuntos?
• exemplo
∗ A = U se e somente se (∀x ∈ U) (p(x) ⇔ V) universo
∗ A = ∅ se e somente se (∀x ∈ U) (p(x) ⇔ F) vazio
♦ Pascal (lembrando)
• tipos de dados baseados em conjuntos finitos
• variáveis conjuntos sobre estes tipos de dados
• constantes conjuntos (também finitos)
• vogais
• consoantes
• outros símbolos
♦ Teoria da Computação
• meios para correta aplicação e entendimento dos conceitos de
∗ algoritmo
∗ computabilidade
∗ conseqüentemente, do que é solucionável em um computador
♦ Complemento da linguagem L
~L = { x ∈ ∑* x ∉ L }
• L1 = { ε }
• L2 = { a }* = { ε, a, aa, aaa,… }
• ~L2 = { b, ab, ba, bb, aab, aba, baa, abb, bab, bba, bbb,… }
• ~Palíndromos = { x ∈ ∑* x ∉ Palíndromos }
p∈L
p∈L ou p ∈ ~L
Linguagens
Recursivas
(existe um algoritmo
capaz de responder
"pertence" ou "não pertence")
p ∈ L ou p ∈ ~L
∈
p
MT(L)
∉
∈
p
MT(L)
∉ ou
LOOP
♦ Linguagens Não-Computáveis
• não existe algoritmo (Máquina de Turing) capaz de determinar se
p ∈ L ou p ∈ ~L
♦ Problema da Parada
• se qq Máquina de Turing pára determinando se p ∈ L ou p ∈ ~L
∗ não tem solução computacional
Prova: (direta)
Suponha L linguagem recursiva sobre ∑
Então existe Máquina de Turing MT(L) que aceita L e sempre pára
MT'(L)
∈ ∈ ∈ ∈
Inverte Inverte
p MT(L)
∉ ∉ ∉ ∉
Prova: (direta)
Suponha L1 e L2 linguagens recursivas sobre ∑
Então existem Máquinas de Turing MT(L1) e MT(L2) tq aceitam L1 e L2
e sempre param
MT(L1∩L2)
∉
∉
p
MT(L1)
∉
∈
MT(L2)
∈
P. Blauth Menezes