Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Linguagens Formais - aula 02
Expressões Regulares A expressão regular é a maneira mais compacta e mais simples de descrever conjuntos regulares, e é usada com essa finalidade em construção de compiladores, editores, sistemas operacionais, protocolos, etc. É um formalismo denotacional, também considerado gerador. Linguagens Formais - aula 02
2
Linguagens Formais - aula 02
Definição: Uma Expressão Regular (ER) sobre um alfabeto é definida como segue: é uma ER (linguagem vazia) é uma ER (linguagem contendo somente a cadeia vazia ) para cada a , a é uma ER se e são ER´s, então | é uma ER. ( OU – alternância) se e são ER´s, então é uma ER. (concatenação) se é uma ER, então (*) é uma ER (exponenciação) *: | | | |..... +: | | |..... ordem de precedência: exponenciação, concatenação, alternância. Linguagens Formais - aula 02
3
Linguagens Formais - aula 02
Expressão regular Linguagem representada aa Somente a palavra aa ba* Todas as palavras que começam com b, seguido por zero ou mais a´s (a|b)* Todas as palavras sobre {a, b} (a|b)* aa (a|b) * Todas as palavras que contém aa como subpalavra a* ba* ba* Todas as palavras contendo exatamente 2 b´s (a|b)* (aa| bb ) Todas as palavras que terminam com aa ou bb (a| ) (b | ba)* Todas as palavras que não possuem 2 a´s consecutivos Linguagens Formais - aula 02
4
Linguagens Formais - aula 02
Expressões regulares representam Linguagens Regulares Se é uma expressão regular qualquer, então L() é uma linguagem representada por . L() = e L(a) = {a} para cada a Se e são expressões regulares, então L() = L()L() Se e são expressões regulares, então L(|) = L() | L() Se é uma expressão regular, então L(*) = L()* + = * Linguagens Formais - aula 02
5
Linguagens Formais - aula 02
Exemplos: 1. As expressões (a|b)* aa (a|b) * e (a|b)* bb (a|b) * representam as cadeias que contêm aa e bb respectivamente. Combinando as duas expressões com o operador | alternância, temos a expressão (a|b)* aa (a|b) * | (a|b)* bb (a|b) * que representa o conjunto de cadeias que contêm as subcadeias aa ou bb. Linguagens Formais - aula 02
6
Linguagens Formais - aula 02
Exercícios: 1. Indique se a cadeia 1011 pertence às linguagens correspondentes a cada uma das expressões regulares a) __________ (10)*1011 b) __________ 0*(10 | 11)* c) __________ 1(00)*(11)* d) __________ (1 | 00)(01 | 0)1* 2) Escreva uma expressão regular para cada uma das seguintes linguagens sobre o alfabeto {a,b}: a) O conjunto de todas as cadeias que começam e terminam com a e contém no mínimo um b b) O conjunto de todas as cadeias que terminam em ab c) O conjunto de todas as cadeias com comprimento igual a 2 Linguagens Formais - aula 02
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.