Buscar

Indução em Aspectos Teóricos da Computação

Prévia do material em texto

Aspectos Teóricos da Computação I
06 - Indução
Leonardo Jose Silvestre1
1Departamento de Computação e Eletrônica (DCEL)
Centro Universitário do Norte do Espírito Santo (CEUNES)
Universidade Federal do Espírito Santo(UFES)
Aspectos Teóricos da Computação I, 2014/2
DCEL (UFES) 06 - Indução ATCI 1 / 66
Outline
1 Cardinalidade de Conjuntos
2 Indução
Prova Indutiva
Segundo Princípio da Indução Matemática
Definição Indutiva
Expressões Regulares
Computações de um Autômato Finito
DCEL (UFES) 06 - Indução ATCI 2 / 66
Cardinalidade de Conjuntos
Sumário
1 Cardinalidade de Conjuntos
2 Indução
Prova Indutiva
Segundo Princípio da Indução Matemática
Definição Indutiva
Expressões Regulares
Computações de um Autômato Finito
DCEL (UFES) 06 - Indução ATCI 3 / 66
Cardinalidade de Conjuntos
Introdução
Cardinalidade de um conjunto: medida de seu tamanho
Até o momento
Tratada de forma informal ou semi-formal
Exemplo de expressão usada com frequência:
número de elementos de um conjunto
DCEL (UFES) 06 - Indução ATCI 4 / 66
Cardinalidade de Conjuntos
Introdução
Um conjunto pode possuir um número finito ou infinito de
elementos
Finito:
Pode ser denotado por extensão (listando exaustivamente todos
os seus elementos)
Infinito:
Caso contrário
DCEL (UFES) 06 - Indução ATCI 5 / 66
Cardinalidade de Conjuntos
Introdução
Estudo formal: resposta a perguntas como
Como definir formalmente a cardinalidade de um conjunto?
Quando dois conjuntos possuem o mesmo cardinal?
O que é um cardinal infinito?
Existe mais de um, ou seja, diferentes cardinais infinitos?
Nesse caso, existe uma ordem de cardinais infinitos?
Estudo mais completo ou aprofundado
Foge um pouco do escopo da disciplina
Ênfase nos conceitos, resultados e interpretações usados em CC
DCEL (UFES) 06 - Indução ATCI 6 / 66
Cardinalidade de Conjuntos
Introdução
Cardinalidade é definida usando funções bijetoras (uso da bijeção é
intuitivo)
Comum em diferentes civilizações
Cardinalidade de conjuntos: bijeção entre
Conjunto de objetos em questão (rebanho de ovelhas. . . )
Subconjunto de dedos das mãos
Quando os dedos não eram suficientes: conjunto de pedras, nós
em cordas. . .
Uma bijeção qualquer: basta existir uma bijeção
Qualquer dedo (pedra ou nó) corresponde a qualquer animal
Se sobra um dedo (pedra ou nó), então falta um animal
DCEL (UFES) 06 - Indução ATCI 7 / 66
Cardinalidade de Conjuntos
Cardinalidade Finita e Infinita
Cardinalidade Finita, Cardinalidade Infinita - Definição
Cardinalidade de um conjunto A
#A
Finita: existe bijeção entre A e {1,2,3, . . . ,n}
#A = n
Infinita: existe bijeção entre A e um subconjunto próprio de A
DCEL (UFES) 06 - Indução ATCI 8 / 66
Cardinalidade de Conjuntos
Cardinalidade Finita e Infinita
Portanto, um conjunto
Finito (cardinalidade finita): possível representar por extensão
Infinito: possível retirar elementos e ainda assim estabelecer uma
bijeção com o próprio
DCEL (UFES) 06 - Indução ATCI 9 / 66
Cardinalidade de Conjuntos
Exemplo: Cardinalidade Infinita do Conjunto dos Números Inteiros
f : Z→ N tal que
se a ≥ 0, então f (a) = 2a (não negativos associados aos pares)
se a < 0, então f (a) = |2a| − 1 (negativos assoc. aos ímpares)
É bijetora e N ⊂ Z
⇒ Logo, Z é infinito
DCEL (UFES) 06 - Indução ATCI 10 / 66
Cardinalidade de Conjuntos
Conjunto Contável e Não-contável
Nem todos conjuntos infinitos possuem mesma cardinalidade
Contradiz a noção intuitiva
DCEL (UFES) 06 - Indução ATCI 11 / 66
Cardinalidade de Conjuntos
Conjunto Contável, Conjunto Não-Contável, Conjunto Enumerável
- Definições
A conjunto infinito
Finitamente Contável: finito
Infinitamente Contável ou Enumerável:
Existe uma bijeção entre A e um subconjunto infinito de N
Esta bijeção é denominada enumeração de A
Não-Contável: caso contrário
Obs.: Infinitamente contável: possível enumerar seus elementos como
uma sequência infinita
〈a1,a2,a3, . . .〉
DCEL (UFES) 06 - Indução ATCI 12 / 66
Cardinalidade de Conjuntos
Conjunto Contável, Conjunto Não-Contável, Conjunto Enumerável
Termo “conjunto contável”
usualmente significa finitamente ou infinitamente contável
Conjunto Infinitamente Contável - Exemplos
Z
Q
Prova de que um conjunto é não-contável
Pode ser realizada usando o método da Diagonalização de
Cantor (Georg Cantor - 1845-1918)
Frequente em provas na Computação e Informática
DCEL (UFES) 06 - Indução ATCI 13 / 66
Cardinalidade de Conjuntos
Teorema: Conjunto Não-Contável
O seguinte conjunto é não-contável:
S = {x ∈ R | 0 < x < 1}
Prova:
(por absurdo - Diagonalização de Cantor)
Suponha S contável
Existe uma enumeração de S
〈s1, s2, s3, . . .〉
Qualquer número s ∈ S: sequência contável de decimais
s = 0,d1d2d3 . . . dn . . .
Exemplo: pi/10 = 0,31415 . . .
DCEL (UFES) 06 - Indução ATCI 14 / 66
Cardinalidade de Conjuntos
Teorema: Conjunto Não-Contável
Prova (cont.):
Portanto, a enumeração 〈s1, s2, s3, . . .〉 pode ser representada por
s1 = 0,d11d12d13 . . . d1n . . .
s2 = 0,d21d22d23 . . . d2n . . .
s3 = 0,d31d32d33 . . . d3n . . .
. . .
sn = 0,dn1dn2dn3 . . .dnn . . .
. . .
Seja r o número real construído a partir da diagonal
r = 0,e1e2e3 . . . en . . . i ∈ {1,2,3, . . .}
ei = 1, caso dii 6= 1; ei = 2, caso dii = 1
DCEL (UFES) 06 - Indução ATCI 15 / 66
Cardinalidade de Conjuntos
Teorema: Conjunto Não-Contável
Prova (cont.):
Claramente, r ∈ S
r é diferente de qualquer número da enumeração 〈s1, s2, s3, . . .〉
Difere pelo menos no dígito destacado na diagonal (escolhemos
para que assim fosse)
Portanto, r /∈ S: contradição (afinal, fizemos a suposição de que a
enumeração continha todos os números de S!)
Logo, é uma absurdo supor que S é contável
Portanto, S é não-contável
DCEL (UFES) 06 - Indução ATCI 16 / 66
Cardinalidade de Conjuntos
Conjuntos Não-Contáveis
Prova de que R é não-contável é simples
Mas antes, vejamos a seguinte definição
Definição:Conjuntos Equipotentes
A e B conjuntos Equipotentes:
existe uma função bijetora entre A e B
Logo, conjuntos equipotentes: mesma cardinalidade
Todos conjuntos enumeráveis são equipotentes
Todo conjunto indexado é equipotente ao seu conjunto de índices
DCEL (UFES) 06 - Indução ATCI 17 / 66
Cardinalidade de Conjuntos
Teorema: R é um Conjunto Não-Contável
O conjuntos dos números reais R é não-contável.
Prova (direta):
Basta provar que R é equipotente a S = {x ∈ R | 0 < x < 1}
Seja f : S → R
Se 0 < s ≤ 1/2, então f (s) = (1/2s)− 1
Se 1/2 ≤ s < 1, então f (s) = (1/(2s − 2)) + 1,
que é uma bijeção (verificação: exercício)
DCEL (UFES) 06 - Indução ATCI 18 / 66
Cardinalidade de Conjuntos
Conjunto Não-Contável - Exemplos
I (conjuntos dos números irracionais)
C (conjunto dos números complexos)
R2
DCEL (UFES) 06 - Indução ATCI 19 / 66
Cardinalidade de Conjuntos
Cardinalidade dos Conjuntos Não-Contáveis
Conjuntos não-contáveis: mesma cardinalidade?
Nem todos os conjuntos não-contáveis tem a mesma
cardinalidade
A tem pelo menos tantos elementos quanto B
#A ≤ #B
quando existe função injetora f : A→ B
DCEL (UFES) 06 - Indução ATCI 20 / 66
Cardinalidade de Conjuntos
Existem infinitos cardinais não-contáveis
Conjunto das partes de um conjunto tem sempre cardinalidade maior
que este
Fato conhecido como Teorema de Cantor
DCEL (UFES) 06 - Indução ATCI 21 / 66
Indução
Sumário
1 Cardinalidade de Conjuntos
2 Indução
Prova Indutiva
Segundo Princípio da Indução Matemática
Definição Indutiva
Expressões Regulares
Computações de um Autômato Finito
DCEL (UFES) 06 - Indução ATCI 22 / 66
Indução
Princípio da Indução Matemática
Técnica para lidar com tipos de dados que têm uma relação de
boa-ordem
Relaçãode Boa-Ordem
Todo conjunto não-vazio de elementos do tipo de dado tem um
elemento mínimo segundo esta relação de ordem
Exemplo: N
DCEL (UFES) 06 - Indução ATCI 23 / 66
Indução
Princípio da Indução Matemática
Dada uma boa ordem
Pode-se aplicar indução para provar propriedades que valem para
todo elemento
Por simplicidade
Tipo de dados considerado: N
Ou qualquer outro conjunto isomorfo a N
Exemplo simples que ilustra o Princípio da Indução Matemática: efeito
dominó
DCEL (UFES) 06 - Indução ATCI 24 / 66
Indução
Efeito Dominó
Ao derrubar a primeira peça, todas as demais peças serão
derrubadas em cadeia
DCEL (UFES) 06 - Indução ATCI 25 / 66
Indução
Efeito Dominó
Para estar certo que ocorrerá
1 Primeira peça é derrubada (direção das demais)
2 Se qualquer peça está suficientemente próxima da seguinte,
então, ao ser derrubada, fará com que a seguinte também seja
derrubada
Então
Por (1), a primeira peça é derrubada
Por (2), a segunda peça é derrubada
Por (2), a terceira peça é derrubada
e assim sucessivamente . . .
Portanto, para i tão grande quanto se queira
i-ésima peça é derrubada
Logo, para qualquer n
n-ésima peça é derrubada
DCEL (UFES) 06 - Indução ATCI 26 / 66
Indução
Princípio da Indução Matemática - Definição
p(n) uma proposição sobre M = {n ∈ N | n ≥ m e m ∈ N}
Princípio da Indução Matemática
p(m) é verdadeira
Para qualquer k ∈ M, p(k)⇒ p(k + 1)
Então, para qualquer n ∈ N, p(n) é verdadeira
Base de indução
p(m)
Hipótese de indução
p(k)
Passo de indução
p(k)⇒ p(k + 1)
DCEL (UFES) 06 - Indução ATCI 27 / 66
Indução
Princípio da Indução Matemática
Na definição
Forma mais tradicional
Denominada de Primeiro Princípio da Indução Matemática
Formulações alternativas: adiante
Duas aplicações da Indução Matemática destacam-se
Prova Indutiva ou Prova por Indução
Técnica de demonstração comum na Computação
Não é do domínio da lógica pura
Definição Indutiva ou Definição Recursiva
Comum na Computação
Já usada anteriormente de forma informal
DCEL (UFES) 06 - Indução ATCI 28 / 66
Indução
Princípio da Indução Matemática
Recursão:
conceito próximo ao de indução e presente na grande maioria das
linguagens de programação
Exemplos de construções baseadas em indução e recursão e de
especial interesse para Computação:
Computações de um autômato finito
Gramáticas de Chomsky e a Forma de Backus Naur (ou BNF)
Expressões Regulares
Funções Recursivas Parciais ou Funções Recursivas de Kleene
DCEL (UFES) 06 - Indução ATCI 29 / 66
Indução Prova Indutiva
Sumário
1 Cardinalidade de Conjuntos
2 Indução
Prova Indutiva
Segundo Princípio da Indução Matemática
Definição Indutiva
Expressões Regulares
Computações de um Autômato Finito
DCEL (UFES) 06 - Indução ATCI 30 / 66
Indução Prova Indutiva
Prova Indutiva ou Prova por Indução
Técnica de demonstração
Baseada no Princípio da Indução Matemática
Não é do domínio da lógica pura
Limita-se a confirmar se p(n) é correta
Demonstração por indução
Demonstrar a base de indução p(m)
Fixado um k
Supor verdadeira a hipótese de indução p(k)
Demonstrar o passo de indução p(k)⇒ p(k + 1)
DCEL (UFES) 06 - Indução ATCI 31 / 66
Indução Prova Indutiva
Prova Indutiva ou Prova por Indução
MUITO IMPORTANTE!
Demonstração por indução
Demonstrar a base de indução p(m)
Fixado um k
Supor verdadeira a hipótese de indução p(k)
Demonstrar o passo de indução p(k)⇒ p(k + 1)
DCEL (UFES) 06 - Indução ATCI 32 / 66
Indução Prova Indutiva
Exemplo - Prova por Indução - p(n) : n < 2n
para qualquer n ∈ N, tem-se que n < 2n
Base de Indução. k = 0
0 < 1 = 20
Hipótese de Indução. Suponha que, para k ∈ N
p(k) : k < 2k é verdadeira
Passo de Indução. Prova para p(k + 1) : k + 1 < 2k+1
k + 1 < (hipótese de indução)
2k + 1 ≤ 2k + 2k = 2 ∗ 2k = 2k+1
Logo, para qualquer n ∈ N, tem-se que n < 2n
DCEL (UFES) 06 - Indução ATCI 33 / 66
Indução Prova Indutiva
Prova por Indução - p(n) : 2n < n!
Para qualquer n ∈ N, se n > 3, então 2n < n!
Base de Indução. k = 4
42 = 16 < 24 = 4!
Hipótese de Indução. Suponha para k > 3
p(k) : 2k < k ! é verdadeira
Passo de Indução. Prova para p(k + 1) : 2k+1 < (k + 1)!
2k+1 = 2 ∗ 2k < (hipótese de indução)
2 ∗ k ! < (k + 1) ∗ k ! = (k + 1)!
Logo, para qualquer n ∈ N, se n > 3, então 2n < n!
DCEL (UFES) 06 - Indução ATCI 34 / 66
Indução Prova Indutiva
Prova por Indução - 1 + 2 + . . .+ n = (n2 + n)/2
Para qualquer n ∈ N, tem-se que 1 + 2 + . . .+ n = (n2 + n)/2
Base de Indução. k = 0
(02 + 0)/2 = (0 + 0)/2 = 0/2 = 0
Hipótese de Indução. Suponha para k ∈ N
p(k) : 1 + 2 + . . .+ k = (k2 + k)/2 é verdadeira
DCEL (UFES) 06 - Indução ATCI 35 / 66
Indução Prova Indutiva
Prova por Indução - 1 + 2 + . . .+ n = (n2 + n)/2
Passo de Indução.
p(k + 1) : 1 + 2 + . . .+ k + (k + 1) = ((k + 1)2 + k + 1)/2
1 + 2 + . . .+ k + (k + 1) =
(1 + 2 + . . .+ k) + (k + 1) = pela hipótese de indução
(k2 + k)/2 + (k + 1) =
(k2 + k)/2 + (2k + 2)/2 =
(k2 + k + 2k + 2)/2 =
((k2 + 2k + 1) + (k + 1))/2 =
((k + 1)2 + (k + 1))/2
DCEL (UFES) 06 - Indução ATCI 36 / 66
Indução Prova Indutiva
Prova por Indução - #2A = 2#A
Foi afirmado que
Se o cardinal de um conjunto A é n, então o cardinal de 2A é 2n, o
que justifica a notação 2A.
Teorema (versão limitada a conjuntos finitos)
Para qualquer conjunto finito A, se #A = n, então tem-se que
#2A = 2n
Considere o seguinte exemplo motivacional:
P(∅) = {∅}
P({a}) = {∅, {a}}
P({a,b}) = {∅, {a}, {b}, {a,b}}
P({a,b, c}) = {∅, {a}, {b}, {c}, {a,b}, {a, c}, {b, c}, {a,b, c}}
DCEL (UFES) 06 - Indução ATCI 37 / 66
Indução Prova Indutiva
Prova por Indução - #2A = 2#A
Observe P({a,b}) e P({a,b, c}) (por exemplo)
Metade dos elementos de P({a,b, c}) corresponde a P({a,b})
P({a,b, c}) = P({a,b}) ∪ {{c}, {a, c}, {b, c}, {a,b, c}}
Outra metade de P({a,b, c}) corresponde a P({a,b}),
adicionando-se c a cada conjunto
P({a,b, c}) =P({a,b})∪
{∅ ∪ {c}, {a} ∪ {c}, {b} ∪ {c}, {a,b} ∪ {c}}
Ou seja, #P({a,b, c}) possui o dobro de elementos de
#P({a,b})
Cada elemento adicionado a um conjunto duplica o cardinal
do correspondente conjunto das partes
DCEL (UFES) 06 - Indução ATCI 38 / 66
Indução Prova Indutiva
Prova por Indução - #2A = 2#A
Base de Indução. Seja k = 0(#A = 0). Então A = ∅
P(∅) = {∅}
p(0) é verdadeira pois
#P(∅) = 1 = 20 = 2#∅
Hipótese de Indução. Suponha que, para algum k ∈ N(#A = k)
p(k) : #P(A) = 2#A é verdadeira
DCEL (UFES) 06 - Indução ATCI 39 / 66
Indução Prova Indutiva
Prova por Indução - #2A = 2#A
Passo de Indução. p(k + 1)
Sem perda de generalidade, suponha os seguintes conjuntos
(conjuntos com o mesmo cardinal são isomorfos)
A = {1,2,3, . . . , k}
B = {1,2,3, . . . , k , k + 1}
Por hipótese de indução #P(A) = 2k
P(A) são todos subconjuntos de B que não possuem o elemento k + 1
Demais subconjuntos B são aqueles que contém o elemento k + 1
A união de cada conjunto de P(A) com {k + 1}, resultando em
outros 2k conjuntos
#P(B) = 2k + 2k = 2k+1
Logo, para qualquer conjunto finito A, se #A = n, então tem-se que
#2A = 2n
DCEL (UFES) 06 - Indução ATCI 40 / 66
Indução Segundo Princípio da Indução Matemática
Sumário
1 Cardinalidade de Conjuntos
2 Indução
Prova Indutiva
Segundo Princípio da Indução Matemática
Definição Indutiva
Expressões Regulares
Computações de um Autômato Finito
DCEL (UFES) 06 - Indução ATCI 41 / 66
Indução Segundo Princípio da Indução Matemática
Segundo Princípio da Indução Matemática
Frequentemente é conveniente trabalhar com outras formulações do
Princípio da Indução Matemática
Primeiro Princípio da Indução Matemática: visto até agora
Segundo Princípio da Indução Matemática
Formulação especialmente importante
Considera não apenas o resultadoanterior p(k) mas todos os
anteriores para concluir p(k + 1)
DCEL (UFES) 06 - Indução ATCI 42 / 66
Indução Segundo Princípio da Indução Matemática
Relembrando
(Primeiro) Princípio da Indução Matemática - Definição
p(n) uma proposição sobre M = {n ∈ N | n ≥ m e m ∈ N}
Princípio da Indução Matemática
p(m) é verdadeira
Para qualquer k ∈ M, p(k)⇒ p(k + 1)
Então, para qualquer n ∈ N, p(n) é verdadeira
DCEL (UFES) 06 - Indução ATCI 43 / 66
Indução Segundo Princípio da Indução Matemática
Segundo Princípio da Indução Matemática - Definição
Seja p(n) proposição sobre M = {n ∈ N | n ≥ m e m ∈ N}
Primeira Versão
p(m) é verdadeira
Para qualquer k ∈ M, p(m) ∧ p(m + 1) ∧ . . . ∧ p(k)⇒ p(k + 1)
Então, para qualquer n ∈ N, p(n) é verdadeira
Segunda Versão. Suponha t ∈ N
p(m),p(m + 1), . . . ,p(m + t) são verdadeiras
Para qualquer k ∈ M tal que
k ≥ m + t : p(m) ∧ p(m + 1) ∧ . . . ∧ p(k)⇒ p(k + 1)
Então, para qualquer n ∈ N, p(n) é verdadeira
Segunda versão: prova os t primeiros casos em separado para
verificar a base de indução
DCEL (UFES) 06 - Indução ATCI 44 / 66
Indução Segundo Princípio da Indução Matemática
Segundo Princípio da Indução Matemática
Aplicação usual: definição e prova de propriedades de
Expressões
Fórmulas
Árvores etc.
Razão pela qual frequentemente é denominado de:
Indução em estrutura
Indução estruturada
Obs.: Interessante quando k + 1 depende de resultados anteriores a k
DCEL (UFES) 06 - Indução ATCI 45 / 66
Indução Segundo Princípio da Indução Matemática
Segundo Princípio: Proposição Lógica - Exemplo
Suponha que p é uma proposição lógica a qual contém
exclusivamente os conectivos lógicos ∧,∨ e→. Se o valor verdade de
todos os átomos de p é V , então o valor verdade de p é V
Uma prova por indução (no número de átomos, primeira versão):
Base de Indução. Seja k = 1
p é um átomo
Portanto, por hipótese, p é V
Hipótese de Indução. Suponha que, para algum k ∈ N, e para
qualquer u ∈ N tal que u ≤ k
se o número de átomos de p é u, então o valor verdade de p é V
DCEL (UFES) 06 - Indução ATCI 46 / 66
Indução Segundo Princípio da Indução Matemática
Segundo Princípio: Proposição Lógica - Exemplo
Passo de Indução. Seja p uma proposição com k + 1 átomos
p pode ser reescrita em um dos seguintes casos (q e r possuem
individualmente no máximo k átomos e, conjuntamente, k + 1
átomos):
q ∧ r
q ∨ r
q → r
Por hipótese de indução q e r são V . Portanto, em qualquer dos
casos, p é V
DCEL (UFES) 06 - Indução ATCI 47 / 66
Indução Segundo Princípio da Indução Matemática
Segundo Princípio: Postagem - Exemplo
Qualquer valor de postagem igual ou maior que 12 reais pode ser
formado usando exclusivamente selos de 4 e de 5 reais. Uma prova
por indução (no número de selos, segunda versão):
Base de Indução. Seja k ∈ {12,13,14,15}
12 reais: 3 selos de 4
13 reais: 2 selos de 4 e 1 selo de 5
14 reais: 1 selo de 4 e 2 selos de 5
15 reais: 3 selos de 5
DCEL (UFES) 06 - Indução ATCI 48 / 66
Indução Segundo Princípio da Indução Matemática
Segundo Princípio: Postagem - Exemplo
Hipótese de Indução. Suponha que, para algum k ∈ N, e para
qualquer u ∈ N tal que 15 ≤ u ≤ k
Se o valor é u, então pode ser formado usando selos de 4 e 5
Passo de Indução. Seja uma postagem cujo valor é k + 1 reais
Tal postagem pode ser formada usando:
Uma postagem de k − 3 reais
Mais um selo de 4 reais
DCEL (UFES) 06 - Indução ATCI 49 / 66
Indução Definição Indutiva
Sumário
1 Cardinalidade de Conjuntos
2 Indução
Prova Indutiva
Segundo Princípio da Indução Matemática
Definição Indutiva
Expressões Regulares
Computações de um Autômato Finito
DCEL (UFES) 06 - Indução ATCI 50 / 66
Indução Definição Indutiva
Definição Indutiva
Princípio da Indução Matemática: pode ser usado em definições
Definição Indutiva ou Definição Recursiva
Base de indução: explicita os casos elementares (os mais
simples)
Passo de indução/recursão: demais casos são definidos em
termos dos anteriores
DCEL (UFES) 06 - Indução ATCI 51 / 66
Indução Definição Indutiva
Definição Indutiva - Fecho Transitivo - Exemplo
Endorrelação R : A→ A. Fecho Transitivo
1 Se 〈a,b〉 ∈ R, então 〈a,b〉 ∈ R+
2 Se 〈a,b〉 ∈ R+ e 〈b, c〉 ∈ R+, então 〈a, c〉 ∈ R+
3 Os únicos elementos de R+ são os construídos como acima
(1) base de indução
(2) passo de indução (hipótese?)
(3) garante que, de fato, é definição indutiva
(3) pode ser omitido (subentendido)
DCEL (UFES) 06 - Indução ATCI 52 / 66
Indução Definição Indutiva
Definição Indutiva - Conjunto de Todas as Palavras - Exemplo
Alfabeto Σ = {a,b}
Σ∗ = {ε,a,b,aa,ab,ba,bb,aaa, . . .}
Base de Indução
ε ∈ Σ∗
qualquer x ∈ Σ, tem-se que x ∈ Σ∗
Passo de Indução
Se u e v são palavras de Σ∗ então a concatenação uv é palavra de Σ∗
DCEL (UFES) 06 - Indução ATCI 53 / 66
Indução Definição Indutiva
Definição Indutiva - Fórmula Lógica - Exemplo
Simplificada, não incluindo quantificadores, variáveis etc.
Base de Indução
Qualquer proposição atômica (incluindo V e F ) é fórmula
Passo de Indução: Se q e r são fórmulas, então também são
fórmulas
(¬q)
(q ∧ r)
(q ∨ r)
(q → r)
(q ↔ r)
DCEL (UFES) 06 - Indução ATCI 54 / 66
Indução Definição Indutiva
Definição Indutiva × Princípio da Indução Matemática - Exemplo
Ilustração da relação entre o Princípio da Indução e a definição
indutiva
Definição indutiva (no número de conectivos) de fórmula lógica
usando o Segundo Princípio
Base de Indução: Seja k = 0
Qualquer proposição atômica (incluindo V e F ) é uma fórmula
Hipótese de Indução: Suponha que, para algum k ∈ N, e para
qualquer i ∈ N tal que i ≤ k
Se p é uma fórmula com i conectivos, então p é uma fórmula lógica
DCEL (UFES) 06 - Indução ATCI 55 / 66
Indução Definição Indutiva
Definição Indutiva × Princípio da Indução Matemática - Exemplo
Passo de Indução. Seja p uma fórmula com k + 1 conectivos
p pode ser reescrita
q e r são fórmulas e possuem conjuntamente k conectivos
(¬q)
(q ∧ r)
(q ∨ r)
(q → r)
(q ↔ r)
DCEL (UFES) 06 - Indução ATCI 56 / 66
Indução Expressões Regulares
Sumário
1 Cardinalidade de Conjuntos
2 Indução
Prova Indutiva
Segundo Princípio da Indução Matemática
Definição Indutiva
Expressões Regulares
Computações de um Autômato Finito
DCEL (UFES) 06 - Indução ATCI 57 / 66
Indução Expressões Regulares
Expressões Regulares
Autômato Finito
Já introduzido
Especialmente importante
Define a classe das linguagens regulares
Possui diversas aplicações na Computação
Expressões Regulares
Alternativa para definir linguagens regulares
Definição indutiva que segue: Segundo Princípio da Indução
Matemática (segunda versão)
DCEL (UFES) 06 - Indução ATCI 58 / 66
Indução Expressões Regulares
Expressão Regular (ER) sobre um alfabeto Σ - Definição
Base de Indução
∅ é ER e denota a linguagem vazia
ε é ER e denota a linguagem {ε}
qualquer símbolo x ∈ Σ é ER e denota a linguagem {x}
Passo de Indução. Se r e s são ER e denotam as ling. R e S, então
União: (r + s) é ER e denota a linguagem R ∪ S
Concatenação: (rs) é ER e denota a linguagem
RS = {uv | u ∈ R e v ∈ S}
Concatenação Sucessiva: (r∗) é ER e denota a linguagem R∗
DCEL (UFES) 06 - Indução ATCI 59 / 66
Indução Expressões Regulares
Expressão Regular (ER) - Exemplos
Omissão de parênteses em uma ER é usual
Concatenação sucessiva: precedência sobre concatenação e
união
Concatenação: precedência sobre união
ER Linguagem Representada
aa somente a palavra aa
ba∗ todas palavras iniciam por b seguido por 0 ou mais a
(a + b)∗ todas as palavras sobre {a,b}
(a + b)∗aa(a + b)∗ todas as palavras contendo aa como subpalavra
a∗ba∗ba∗ todas as palavras contendo exatamente dois b
(a + b)∗(aa + bb) todas as palavras que terminam com aa ou bb
(a + ε)(b + ba)∗ todas as palavras sem dois a consecutivosDCEL (UFES) 06 - Indução ATCI 60 / 66
Indução Computações de um Autômato Finito
Sumário
1 Cardinalidade de Conjuntos
2 Indução
Prova Indutiva
Segundo Princípio da Indução Matemática
Definição Indutiva
Expressões Regulares
Computações de um Autômato Finito
DCEL (UFES) 06 - Indução ATCI 61 / 66
Indução Computações de um Autômato Finito
Computações de um Autômato Finito
Exemplos de modelos computacionais introduzidos
Rede de Petri, definida como uma relação
Autômato Finito, definido como uma função parcial
Definidos sintaticamente: definições formais de sua forma
Semântica ??
Interpretação do funcionamento ou processamento
Introduzida textualmente, de forma informal
DCEL (UFES) 06 - Indução ATCI 62 / 66
Indução Computações de um Autômato Finito
Autômato Finito
Processamento de um Autômato Finito é a sucessiva
aplicação de computações atômicas (transições)
DCEL (UFES) 06 - Indução ATCI 63 / 66
Indução Computações de um Autômato Finito
Programa de um Autômato Finito: função parcial
δ : Q × Σ→ Q
δ(〈q,a〉) = p
No estado q, ao ler o símbolo a, assume o estado p
Para dar semântica à sintaxe de um Autômato Finito
Estender a definição da função programa
Argumento: um estado e uma palavra
Definida indutivamente
DCEL (UFES) 06 - Indução ATCI 64 / 66
Indução Computações de um Autômato Finito
Função Programa Estendida
Base de indução: entrada vazia (palavra vazia)
Permanece no mesmo estado
Passo de indução: entrada não-vazia (palavra não-vazia)
Processa o primeiro símbolo da entrada, usando δ
Mesmo raciocínio sucessivamente ao resto da palavra
Função Programa Estendida - definição formal
δ : Q × Σ∗ → Q
δ(q, ε) = q
δ(q,aw) = δ(δ(q,a),w)
DCEL (UFES) 06 - Indução ATCI 65 / 66
Indução Computações de um Autômato Finito
Função Programa Estendida - Exemplo
δ(q0,abba) = δ(δ(q0,a),bba) =
δ(q1,bba) = δ(δ(q1,b),ba) =
δ(q2,ba) = δ(δ(q2,b),a) =
δ(qf ,a) = δ(δ(qf ,a), ε) =
δ(qf , ε) = qf
DCEL (UFES) 06 - Indução ATCI 66 / 66
	Cardinalidade de Conjuntos
	Indução
	Prova Indutiva
	Segundo Princípio da Indução Matemática
	Definição Indutiva
	Expressões Regulares
	Computações de um Autômato Finito

Continue navegando