LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de...

40
1 LINGUAGENS FORMAIS Definições Linguagens Naturais Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam São muito “ricas”, mas também ambíguas e imprecisas . Ex.: “João amarelou ao ver a silhueta na janela” “O homem nasceu livre; mas por toda a parte se vê acorrentado” (Rousseau) Linguagens Formais (artificiais) Linguagens Formais são utilizadas por cientistas para evitar as imperfeições das linguagens naturais Ex.: Explicar a Teoria da Relatividade em inglês, francês ou com a simbologia da matemática ? Linguagens Formais são apenas um instrumento a ser empregado, onde precisão e operacionalidade são desejáveis

Transcript of LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de...

Page 1: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

1

LINGUAGENS FORMAISDefinições

• Linguagens Naturais

→ Desenvolveram-se na História em função da necessidadedos grupos humanos que as empregavam

→ São muito “ricas”, mas também ambíguas e imprecisas.

Ex.: “João amarelou ao ver a silhueta na janela”

“O homem nasceu livre; mas por toda a parte se vêacorrentado” (Rousseau)

• Linguagens Formais (artificiais)

→ Linguagens Formais são utilizadas por cientistas paraevitar as imperfeições das linguagens naturais

Ex.: Explicar a Teoria da Relatividade em inglês, francêsou com a simbologia da matemática ?

→ Linguagens Formais são apenas um instrumento a serempregado, onde precisão e operacionalidade sãodesejáveis

Page 2: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

2

LINGUAGENS FORMAISDefinições

→ Linguagens Formais (artificiais) ⇒ São sistemassimbólicos elaborados para fins científicos (práticos outeóricos), para representar determinados domínios deconhecimento

→ Os símbolos das LF são utilizados conforme regrasrigorosas de manipulação estabelecidas previamente.

Ex.: “o quadrado da hipotenusa é o resultado da soma dosquadrados dos catetos de um triângulo retângulo”

H2 = a2 + b2

Page 3: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

3

LINGUAGENS FORMAISDefinições

• Semiótica

→ É Qualquer tipo de investigação em torno de umalinguagem-objeto (linguagem de interesse de estudo). Alinguagem objeto pode ser uma linguagem natural ouuma linguagem artificial

→ Semiótica é o estudo (metalinguístico) de qualquersistema simbólico.

→ Semiótica = Sintáctica + Semântica + Pragmática

→ Semiótica - Sintáctica = Sequência de ordenação dos símbolos de uma

determinada linguagem

→ Semiótica - Semântica = Sentidos e denotações de uma determinada expressão

linguística

→ Semiótica - Pragmática = Dimensão do sistema simbólico que o relaciona com

o mundo nos contextos sociais, psicológicos,econômicos, políticos, etc

Page 4: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

4

LINGUAGENS FORMAISDefinições

• Linguagens Formais (artificiais)

→ Desenvolvida na 1a metade do século XX com o objetivode desenvolver teorias relacionadas com as linguagensnaturais.

→ Investigação inicial: Estrutura matemática das linguagens

→ Áreas de aplicação

� Análise léxica e sintática de linguagens de programação

� Modelos de sistemas biológicos

� Projetos de circuitos (“chips”)

� Linguagens planares, espaciais e n-dimensionais

Page 5: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

5

LINGUAGENS FORMAISDefinições

Linguagem Sintáctica Semântica PragmáticaNatural Sim Sim SimFormal Sim Sim -

• Linguagens Formais (artificiais) – Dimensão: SINTAXE = Apresenta construções matemáticas bem definidas e

universalmente aceitas. Ex.: Gramáticas de Chomsky

Page 6: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

6

LINGUAGENS FORMAISConceitos Básicos

• Alfabeto (Σ)

→ Um conjunto finito de símbolos→ (um conjunto vazio também é considerado um

alfabeto)

Ex.: Letras, dígitos, operadores aritméticos, variáveis

• Sentença (palavra, cadeia de caracteres)

→ Uma sequência finita de símbolos (do alfabeto)justapostos

ε - sentença vazia

Σ* - Todas as sentenças (palavras) possíveis sobre Σ

Σ+ - Todas as sentenças (palavras) possíveis sobre Σexcetuando-se a palavra vazia. Σ+ = Σ* - { ε }

• Tamanho (comprimento) da sentença

→ Seja a sentença simbolizada por w. Então |w| é o númerode símbolos que compõem a sentença (palavra)

Page 7: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

7

LINGUAGENS FORMAISConceitos Básicos

Page 8: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

8

Page 9: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

9

LINGUAGENS FORMAISConceitos Básicos

• Prefixo, Sufixo, Subpalavra

→ Um prefixo (respectivamente sufixo) de uma sentença équalquer sequência inicial (respectivamente final) dasentença. Uma subpalavra de uma palavra é qualquersequência de símbolos contígua da palavra

• Concatenação

→ Define-se concatenação β de duas cadeias (sentenças) α eα’ como sendo a cadeia formada pela justaposição dassequências de símbolos α e α’ nesta ordem

β = α • α’ ou β = αα’

|β| = |α| + |α’|

→ Concatenação é uma operação associativa:(αβ)γ = α(βγ)

→ Cadeia ε é elemento neutro na concatenação:αε = εα = α

Page 10: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

10

LINGUAGENS FORMAISConceitos Básicos

• Linguagem Formal

→ Uma linguagem formal é um conjunto de sentenças(palavras) sobre um alfabeto

Page 11: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

11

LINGUAGENS FORMAISConceitos Básicos

• Gramática

→ Conjunto de leis de formação (justaposição) dossímbolos do alfabeto para formação das sentenças(palavras) da linguagem em questão

• Gramática

→ É uma quádrupla ordenada

G = (V, T, P, S) onde:

V - Conjunto finito de símbolos variáveis ou não-terminais

T - Conjunto finito de símbolos terminais distintos de V

P - Conjunto finito de pares do tipo α → β denominadosregras de produção

S - Elemento de V denominado variável inicial

V ∩ T = ∅α ∈ (V ∪ T)+

β ∈ (V ∪ T)*

Page 12: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

12

LINGUAGENS FORMAISConceitos Básicos

• Derivação

→ Seja G = (V, T, P, S) uma gramática. Uma derivação éum par da relação denotada por “⇒”

α ⇒ β, onde α ∈ (V ∪ T)+ e β ∈ (V ∪ T)*

→ Para todo par α ⇒ β, onde β = βuβvβw, se βv → βt éregra de P então: β = βuβtβw

⇒* é fecho transitivo e reflexivo: ou seja, zero ou maispassos de derivações sucessivos

⇒+ é fecho transitivo: ou seja, um ou mais passos dederivações sucessivos

⇒i exatos i passos de derivações sucessivos onde i ∈N

• Linguagem Gerada

→ A linguagem gerada pela gramática G = (V, T, P, S)denotada por L(G) ou GERA(G) é composta por todos assentenças (palavras) de símbolos terminais deriváveis apartir do símbolo inicial S

L(G) = { w ∈ T* | S ⇒+ w }

Page 13: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

13

LINGUAGENS FORMAISGramáticas - Exemplos

Page 14: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

14

Page 15: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

15

LINGUAGENS FORMAISGramáticas

• Gramáticas [ G = (V, T, P, S) ]

→ Dispositivos GERADORES de SENTENÇAS de umadeterminada linguagem

Page 16: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

16

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

• Gramáticas Lineares

→ Seja G = (V, T, P, S) uma gramática e sejam:A ∈ V , B ∈ V e w é uma sentença (palavra) de T*.Então G é uma:

a) Gramática Linear à Direita (GLD) ⇒ se todas as regras deprodução são da forma

A → wB ou A → w

b) Gramática Linear à Esquerda (GLE) ⇒ se todas as regrasde produção são da forma

A → Bw ou A → w

c) Gramática Linear Unitária à Direita (GLUD) ⇒ se todas asregras de produção são como na GLD e adicionalmente:

|w| ≤ 1

d) Gramática Linear Unitária à Esquerda (GLUE) ⇒ se todasas regras de produção são como na GLE e adicionalmente:

|w| ≤ 1

Page 17: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

17

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

• Teorema: Equivalência das Gramáticas Lineares

Seja L uma linguagem. Então:

L é gerada por uma GLD se e somente se,

L é gerada por uma GLE se e somente se,

L é gerada por uma GLUD se e somente se,

L é gerada por uma GLUE

• Gramática Regular

→ Uma gramática regular (tipo 3) é qualquer gramáticalinear

Page 18: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

18

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

Page 19: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

19

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

� A gramática acima é gramática tipo 3 ??

Page 20: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

20

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

� Na gramática acima VN = ? VT = ? P = ?� A gramática acima é gramática tipo 3 ??

Page 21: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

21

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

1) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde

L = { w | w = 1m0, m = 1, 2, 3, ... }

2) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças iniciem, obrigatoriamente, com “00” ou “11”

3) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças tenham, obrigatoriamente, “00” ou “11”comosubpalavras

4) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças iniciem, obrigatoriamente, com “1” eterminem, obrigatoriamente com “0”

5) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças possuem um número par de bits “1”

Page 22: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

22

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

6) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças possuem um número par de bits “1” e umnúmero par de bits “0”

7) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças possuem ou um número par de bits “1” e umnúmero ímpar de bits “0”, ou um número ímpar de bits“1” e um número par de bits “0”

8) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças não possuem a subpalavra “11”

9) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças não possuem a subpalavra “101”

10) Construa a gramática regular G sobre o alfabeto Σ={0,1}que gera SENTENÇAS da linguagem L onde assentenças possuem no máximo um par da subpalavra“00”

Page 23: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

23

LINGUAGENS FORMAISSistema de Estados (status) Finitos

→ Modelo matemático apresentando entradas e saídasdiscretas. Assume um número finito e pré-definido deestados

Exemplos→ “Status” da vida escolar de um indivíduo

� Curso primário incompleto� Curso primário completo e cursando o 1o grau� 1o grau completo e cursando o 2o grau� 2o grau completo e cursando 3o grau� 3o grau completo e cursando pós-graduação� Pós-graduação completo

→ “Status” da vida civil de um indivíduo� Solteiro� Casado� Divorciado� Viúvo� Outros

→ “Status” do plano de viagem de um avião� avião no pátio� chegada confirmada para o horário previsto� horário de chegada com atraso� ....

Page 24: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

24

LINGUAGENS FORMAISSistema de Estados (status) Finitos - Exemplos

→ “Status” do acesso a uma determinada home page� Localizando web site� Web site localizado... Carregando página� Web site não localizado� Concluído ( carregamento/apresentação da HP)� ....

Page 25: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

25

LINGUAGENS FORMAISSistema de Estados (status) Finitos - Exemplos

Page 26: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

26

LINGUAGENS FORMAISAutômato Finito

• Autômato Finito Determinístico

→ É uma “máquina” composta de 3 partes:

a) Fita : dispositivo de entrada que contém a informação aser processada

b) Unidade de controle: Reflete o estado corrente damáquina. Possui uma unidade de leitura (cabeça da fita) aqual acessa uma célula da fita de cada vez e movimenta-se exclusivamente para a direita

c) Programa ou função de transição: função que comandaas leituras e define o estado (status) da máquina

Page 27: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

27

LINGUAGENS FORMAISAutômato Finito Determinístico

• Um autômato finito determinístico (AFD) é uma 5-upla:

M = (Σ, Q, δ, q0, F)

Onde:

Σ Alfabeto de símbolo de entradaQ Conjunto de estados possíveis do autômatoδ Função programa ou função de transição

δ: Q x Σ → Qq0 Estado inicial do autômato (Obs.: q0 ∈ Q )F Conjunto de estados finais tal que F ⊂ Q

• Processamento de um AFD M, para uma palavra(SENTENÇA) w de entrada ⇒ Sucessiva aplicação dafunção programa para cada símbolo de w (da esquerda paraa direita) até ocorrer uma condição de parada

• Após processar o último símbolo da palavra w “escrita” nafita, o AFD assume um estado que pode ser um estado final(quando w é aceita) ou um estado não-final (quando w nãoé aceita)

Page 28: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

28

LINGUAGENS FORMAISAutômato Finito Determinístico

• Convenções para a representação da função de transição

Page 29: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

29

LINGUAGENS FORMAISAutômato Finito Determinístico - Exemplo

Page 30: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

30

LINGUAGENS FORMAISGramáticas X Autômatos

• Autômatos ⇒ Dispositivos RECONHECEDORES de“sentenças”

• Gramáticas ⇒ Dispositivos GERADORES de “sentenças”

• Construir a gramática G = (V, T, P, S) que gera sentenças wque tenham “aa” ou “bb” como subpalavra

L1 = { w | w possui aa ou bb como subpalavra }

V = { S, A, A2, B, B2 }

T = { a, b }

P: (1) S → aA2 | bB2 | aB | bA(2) A2 → aA | a | aB(3) B2 → bB | b | bb(4) A → aA2 | aB(5) B → bB2 | bA

Assim, L1(G) : “G gera a linguagem L1”

Page 31: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

31

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

• Uma linguagem L aceita por um autômato finitodeterminístico (AFD) é uma Linguagem Regular ou Tipo 3

• A linguagem aceita por um AFD M = (Σ, Q, δ, q0, F),denotada por ACEITA(M) ou L(M) é o conjunto de todasas SENTENÇAS pertencentes a Σ* aceitas por M, ou seja:

ACEITA(M) = L(M) = { w | δ(q0, w) ∈ F }

• Uma linguagem L gerada por uma gramática regular é umaLinguagem Regular ou Tipo 3

• A linguagem gerada por G = (V, T, P, S), denotada porGERA(G) ou L(G) é o conjunto de todas as SENTENÇASpertencentes a Σ* geradas por G, ou seja:

GERA(G) = L(G) = { w | S ⇒* w }

Page 32: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

32

LINGUAGENS FORMAISCompiladores – Primeiras idéias

• Um compilador é um programa que lê um programa escritonuma linguagem - a linguagem fonte - e o traduz numprograma equivalente numa outra linguagem - alinguagem alvo

• A compilação se divide em duas grandes fases: análise esíntese

Page 33: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

33

LINGUAGENS FORMAISCompiladores – Primeiras idéias

• Compilador – Fase de Análise

1) Análise linear - Um fluxo de caracteres constituindo umprograma é lido da esquerda para a direita e agrupado emtokens, que são sequências de caracteres tendo umsignificado coletivo

2) Análise hierárquica - Os caracteres ou tokens sãoagrupados hierárquicamente em coleções aninhadas comsignificado coletivo

3) Análise semântica - Certas verificações são realizadas afim de se assegurar que os componentes de um programase combinam de forma significativa

Page 34: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

34

LINGUAGENS FORMAISCompiladores – Primeiras idéias

• Análise léxica

→ Num compilador, a análise linear é chamada de análiseléxica ou esquadrinhamento (scanning)

• Exemplo:

montante := deposito_inicial + taxa_de_juros * 60

Encontram-se os seguintes tokens:

1) identificador montante2) símbolo de atribuição :=3) identificador deposito_inicial4) sinal de adição5) identificador taxa_de_juros6) sinal de multiplicação7) número 60

Page 35: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

35

LINGUAGENS FORMAISCompiladores – Primeiras idéias

• Análise sintática

→ É a análise hierárquica. Envolve o agrupamento detokens do programa fonte em frases gramaticais quesão usadas pelo compilador, a fim de sintetizar asaída. Usualmente, as frases gramaticais do programafonte são representadas por uma árvore gramatical

Page 36: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

36

LINGUAGENS FORMAISCompiladores – Primeiras idéias

• Fases de um compilador

Page 37: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

37

montante := deposito_inicial + taxa_de_juros * 60

Page 38: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

38

Page 39: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

39

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

11) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde

L = { w | w = 1m0, m = 1, 2, 3, ... }

12) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças iniciem, obrigatoriamente, com “00” ou “11”

13) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças tenham, obrigatoriamente, “00” ou “11”comosubpalavras

14) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças iniciem, obrigatoriamente, com “1” eterminem, obrigatoriamente com “0”

15) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças possuem um número par de bits “1”

Page 40: LINGUAGENS FORMAIS Definiçõespalhares2.flu.angelfire.com/uniceub/tc/tct001.pdf · sequências de símbolos α e α’ nesta ordem ... símbolos do alfabeto para formação das sentenças

40

LINGUAGENS FORMAISLinguagens Regulares (Tipo 3)

16) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças possuem um número par de bits “1” e umnúmero par de bits “0”

17) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças possuem ou um número par de bits “1” e umnúmero ímpar de bits “0”, ou um número ímpar de bits“1” e um número par de bits “0”

18) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças não possuem a subpalavra “11”

19) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças não possuem a subpalavra “101”

20) Construa um AFD sobre o alfabeto Σ={0,1} quereconheça SENTENÇAS da linguagem L onde assentenças possuem no máximo um par da subpalavra“00”