introdução ao estudo computacional da linguagem

64
Preˆ ambulo Linguagem Sintaxe Gram´ atica Semˆ antica Pragm´ atica Introduc ¸ ˜ ao ao Estudo Computacional da Linguagem Marcelo Finger Departamento de Ciˆ encia da Computa¸c˜ ao Instituto de Matem´ atica e Estat´ ıstica Universidade de S˜ ao Paulo 2 o Semestre 2019 Marcelo Finger IME-USP Introduc ¸˜ ao 1 / 49

Upload: others

Post on 16-Oct-2021

18 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Introducao ao Estudo Computacionalda Linguagem

Marcelo Finger

Departamento de Ciencia da ComputacaoInstituto de Matematica e Estatıstica

Universidade de Sao Paulo

2o Semestre 2019

Marcelo Finger IME-USP

Introducao 1 / 49

Page 2: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Topicos

1 Preambulo

2 Linguagem e sua Modelagem

3 Sintaxe: A Analise da Estrutura

4 Linguagens Formais e Gramaticas Formais

5 Semantica

6 Pragmatica

Marcelo Finger IME-USP

Introducao 2 / 49

Page 3: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Topicos

1 Preambulo

2 Linguagem e sua Modelagem

3 Sintaxe: A Analise da Estrutura

4 Linguagens Formais e Gramaticas Formais

5 Semantica

6 Pragmatica

Marcelo Finger IME-USP

Introducao 3 / 49

Page 4: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Estudo da Linguagem

Ao menos, desde a antiguidade classica

Diversos enfoques

Muitos deles eram dependentes de linguagens

Visao unificadora a partir do seculo 19

Processamento automatico a partir do seculo 20

Marcelo Finger IME-USP

Introducao 4 / 49

Page 5: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Estudo da Linguagem

Ao menos, desde a antiguidade classica

Diversos enfoques

Muitos deles eram dependentes de linguagens

Visao unificadora a partir do seculo 19

Processamento automatico a partir do seculo 20

Marcelo Finger IME-USP

Introducao 4 / 49

Page 6: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons

Ritmos (Prosodia)

Fonemas

Palavras

Sintagmas (Frases)

Significados

Usos

Marcelo Finger IME-USP

Introducao 5 / 49

Page 7: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons

Ritmos (Prosodia)

Fonemas

Palavras

Sintagmas (Frases)

Significados

Usos

Marcelo Finger IME-USP

Introducao 5 / 49

Page 8: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons

Ritmos (Prosodia)

Fonemas

Palavras

Sintagmas (Frases)

Significados

Usos

Marcelo Finger IME-USP

Introducao 5 / 49

Page 9: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons

Ritmos (Prosodia)

Fonemas

Palavras

Sintagmas (Frases)

Significados

Usos

Marcelo Finger IME-USP

Introducao 5 / 49

Page 10: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons

Ritmos (Prosodia)

Fonemas

Palavras

Sintagmas (Frases)

Significados

Usos

Marcelo Finger IME-USP

Introducao 5 / 49

Page 11: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons

Ritmos (Prosodia)

Fonemas

Palavras

Sintagmas (Frases)

Significados

Usos

Marcelo Finger IME-USP

Introducao 5 / 49

Page 12: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons

Ritmos (Prosodia)

Fonemas

Palavras

Sintagmas (Frases)

Significados

Usos

Marcelo Finger IME-USP

Introducao 5 / 49

Page 13: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons – Acustica

Ritmos (Prosodia)– Fonologia

Fonemas – Fonetica

Palavras – Morfologia e Filologia

Sintagmas (Frases) – Sintaxe

Significados – Semantica

Usos – Pragmatica

Marcelo Finger IME-USP

Introducao 6 / 49

Page 14: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons – Acustica

Ritmos (Prosodia)– Fonologia

Fonemas – Fonetica

Palavras – Morfologia e Filologia

Sintagmas (Frases) – Sintaxe

Significados – Semantica

Usos – Pragmatica

Marcelo Finger IME-USP

Introducao 6 / 49

Page 15: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons – Acustica

Ritmos (Prosodia)– Fonologia

Fonemas – Fonetica

Palavras – Morfologia e Filologia

Sintagmas (Frases) – Sintaxe

Significados – Semantica

Usos – Pragmatica

Marcelo Finger IME-USP

Introducao 6 / 49

Page 16: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons – Acustica

Ritmos (Prosodia)– Fonologia

Fonemas – Fonetica

Palavras – Morfologia e Filologia

Sintagmas (Frases) – Sintaxe

Significados – Semantica

Usos – Pragmatica

Marcelo Finger IME-USP

Introducao 6 / 49

Page 17: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons – Acustica

Ritmos (Prosodia)– Fonologia

Fonemas – Fonetica

Palavras – Morfologia e Filologia

Sintagmas (Frases) – Sintaxe

Significados – Semantica

Usos – Pragmatica

Marcelo Finger IME-USP

Introducao 6 / 49

Page 18: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons – Acustica

Ritmos (Prosodia)– Fonologia

Fonemas – Fonetica

Palavras – Morfologia e Filologia

Sintagmas (Frases) – Sintaxe

Significados – Semantica

Usos – Pragmatica

Marcelo Finger IME-USP

Introducao 6 / 49

Page 19: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Elementos da linguagem

Sons – Acustica

Ritmos (Prosodia)– Fonologia

Fonemas – Fonetica

Palavras – Morfologia e Filologia

Sintagmas (Frases) – Sintaxe

Significados – Semantica

Usos – Pragmatica

Marcelo Finger IME-USP

Introducao 6 / 49

Page 20: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Varias Visoes

Por exemplo, na sintaxe:

Visao da estrutura sintagmatica (constituintes)

Visao das dependencias entre palavras [Sec XII]

Marcelo Finger IME-USP

Introducao 7 / 49

Page 21: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Varias Visoes

Por exemplo, na sintaxe:

Visao da estrutura sintagmatica (constituintes)

Visao das dependencias entre palavras [Sec XII]

Marcelo Finger IME-USP

Introducao 7 / 49

Page 22: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Varias Visoes

Por exemplo, na sintaxe:

Visao da estrutura sintagmatica (constituintes)

Visao das dependencias entre palavras [Sec XII]

Marcelo Finger IME-USP

Introducao 7 / 49

Page 23: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Estrutura: Sintagmatica vs Dependencia

Marcelo Finger IME-USP

Introducao 8 / 49

Page 24: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Estrutura: Sintagmatica vs Dependencia

Marcelo Finger IME-USP

Introducao 9 / 49

Page 25: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Topicos

1 Preambulo

2 Linguagem e sua Modelagem

3 Sintaxe: A Analise da Estrutura

4 Linguagens Formais e Gramaticas Formais

5 Semantica

6 Pragmatica

Marcelo Finger IME-USP

Introducao 10 / 49

Page 26: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Linguagem

Linguagem e um fenomeno humano.

Desta forma, difere em natureza dos fenomenos naturais.

Fenomenos naturais sao estudados pela Fısica, Quımica eBiologia.

Ciencias Humanas, em geral, nao possuem tratamentomatematico.

Ou melhor, nao possuıam ate bem recentemente.

Marcelo Finger IME-USP

Introducao 11 / 49

Page 27: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Caracterısticas da Linguıstica

E uma ciencia eminentemente multidisciplinar:

Psicologia (cognicao)Ciencia Fısica (emissao de som)Biologia (anatomia humana influencia a fala)Sociologia (Pragmatica)

Subdivide-se (grosseiramente) em:

Fonetica (sılabas), Fonologia (prosodia), Morfologia (pa-lavras), Sintaxe (sentencas), Semantica (significado) ePragmatica (uso).

Marcelo Finger IME-USP

Introducao 12 / 49

Page 28: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Modelagem Matematica da Linguıstica

Certas sub-areas da linguıstica podem ser modeladasmatematicamente.

Morfologia e Sintaxe: Linguagens Formais e Automatos

Sintaxe: Logica Categorica

Semantica: Calculo Lambda e Logica Categorica

Estes modelos matematicas nao sao numericos ouquantitativos.

Modelos numericos e quantitativos sao mais faceis deprocessar

Cf: Muita matematica precisou ser “inventada” para odesenvolvimento da Fısica.

Idem deve ocorrer para a Linguıstica.

Marcelo Finger IME-USP

Introducao 13 / 49

Page 29: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Topicos

1 Preambulo

2 Linguagem e sua Modelagem

3 Sintaxe: A Analise da Estrutura

4 Linguagens Formais e Gramaticas Formais

5 Semantica

6 Pragmatica

Marcelo Finger IME-USP

Introducao 14 / 49

Page 30: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

A Estrutura da Frase

A palavra e unidade basica na analise da frase.

A cada palavra e atribuıda uma categoria morfo-sintatica.Tambem conhecida como classe gramatical.

Exemplos:Categoria Conhecida como Abreviacao

Determinante Artigo DetNome Substantivo N

Verbo Transitivo VT

Marcelo Finger IME-USP

Introducao 15 / 49

Page 31: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

A estrutura da frase (cont.)

Representacao usual: 〈Categoria〉 −→ 〈Palavra〉.Por exemplo, nas palavras da frase:

o vilao beijou a mocinha

Temos o seguinte lexico:Det −→oDet −→aN −→vilaoN −→mocinhaVT −→beijou

Marcelo Finger IME-USP

Introducao 16 / 49

Page 32: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Sintagmas

Palavras se combinam para formar novos componentes.

Estes componentes sao chamados de sintagmas. Exemplos:Sintagma Abreviacao

Sintagma Nominal SNSintagma Verbal SVSintagma Adjetival SASintagma Prepositivo SPSentenca S

Nota: sintagma em ingles e phrase.

Sintagmas sao categorias sintaticas.

Marcelo Finger IME-USP

Introducao 17 / 49

Page 33: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Sintagmas (cont.)

Genericamente, podemos dizer que categorias (sintaticas oumorfo-sintaticas) se combinam para gerar novas categorias.

Desta forma, um conjunto de categorias

C1, . . . ,Cn

se combina para gerar uma categoria C .

Representacao: C −→ C1, . . . ,Cn.

Por exemplo:S −→SN SVSN −→Det NSV −→VT SN

Marcelo Finger IME-USP

Introducao 18 / 49

Page 34: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Sintagmas (cont.)

Juntando todas as regras, temos uma gramatica que gera (ereconhece) a frase:

o vilao beijou a mocinhaS −→SN SVSN −→Det NSV −→VT SNDet −→o

Det −→aN −→vilaoN −→mocinhaVT −→beijou

Arvore sintatica: SSN

Deto

Nvilao

SVVT

beijouSN

Deta

Nmocinha

Marcelo Finger IME-USP

Introducao 19 / 49

Page 35: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Topicos

1 Preambulo

2 Linguagem e sua Modelagem

3 Sintaxe: A Analise da Estrutura

4 Linguagens Formais e Gramaticas Formais

5 Semantica

6 Pragmatica

Marcelo Finger IME-USP

Introducao 20 / 49

Page 36: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Linguagens Formais

Seja V um conjunto nao vazio de sımbolos ou palavras.

Uma linguagem L sobre V e um conjunto de cadeiasformadas com os elementos de V :

L ⊆ V ∗

onde, V ∗ e o conjunto de sequencias de 0 ou mais sımbolosde V

Se r e s sao sequencias em V ∗, rs representa a sequenciaresultante da sua concatenacao.

ε e a sequencia vazia. Para todo s: sε = s = εs.

Marcelo Finger IME-USP

Introducao 21 / 49

Page 37: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Exemplos de Linguagens Formais

Exemplo. Com V = {a, b} temos varias possıveis linguagens:

L1 = {a, b, ε}L2 = {an, bn|n = 0, 1, . . .}L3 = {(ab)n|n = 0, 1, . . .}

Se A e B sao conjuntos, AB = A× B.

A2 = AA, A3 = AAA, etc.

Por convencao: A0 = {ε}.∅A = A∅ = ∅Uma linguagem LG ⊆ V ∗ poder ser definida por umagramatica G .

Marcelo Finger IME-USP

Introducao 22 / 49

Page 38: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Gramaticas Formais

Uma gramatica G e uma quadrupla:

G = 〈V ,T ,P,S〉

onde:

V e um conjunto nao vazio, chamado vocabularioT ⊆ V e um conjunto nao vazio de sımbolos terminais.N = V − T e o conjunto de sımbolos nao-terminais.S ∈ N e o sımbolo inicialP e um conjunto finito de regras (producoes) da forma

α −→ β

onde α ∈ V ∗NV ∗ e β ∈ V ∗.

Marcelo Finger IME-USP

Introducao 23 / 49

Page 39: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Por exemplo, a gramatica vista anteriormente e formado dosseguintes elementos:

T = {o, vilao, beijou, a, mocinha}N = {S, SN, SV, Det, N, VT}V = T ∪ N

P =

S −→ SN SVSN −→ Det NSV −→ VT SNDet −→ oDet −→ aN −→ vilaoN −→ mocinhaVT −→ beijou

Marcelo Finger IME-USP

Introducao 24 / 49

Page 40: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Classificacao de Gramaticas Formais

Gramaticas sao classificadas tipo restricoes que se aplica sobreas regras de producao admitidas na gramatica:

α −→ β

Notacao: L(G ) e a linguagem reconhecida/gerada pelagramatica G .

Marcelo Finger IME-USP

Introducao 25 / 49

Page 41: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Gramaticas regulares

Gramaticas regulares admitem apenas producoes onde:

α e um nao terminal (α ∈ N)

β ∈ T ∗NT ∗ ∪ T ∗, ou seja, β pode conter no maximo um naoterminal, rodeado por 0 ou mais nao-terminais.

Gramaticas regulares sao muito uteis para o reconhecimentopadroes em textos, utilizados em linguagens de processamento detexto como Perl.Gramaticas regulares sao reconhecıveis por automatos finitos, quepossuem implementacao eficiente.

Marcelo Finger IME-USP

Introducao 26 / 49

Page 42: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Expressoes Regulares

Seja T um vocabulario (terminais). Definimos expressoesregularess sobre T , ER(T ):

ε ∈ ER(T );

v ∈ T ⇒ v ∈ ER(T );

x ∈ ER(T )⇒ (x)∗ ∈ ER(T );

x , y ∈ ER(T )⇒ xy ∈ ER(T ), x |y ∈ ER(T ).

Define-se ainda

x+ = x(x)∗;

[v1 . . . vn] = (v1| . . . |vn) (vi ∈ T );

[ v1 . . . vn] = (vi1 | . . . |vim) (vij ∈ T − {v1, . . . , vn}).

Marcelo Finger IME-USP

Introducao 27 / 49

Page 43: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Expressoes Regulares (exemplos)

T = {a, b, c}.L(E ) = Linguagem reconhecida pela e.r. E ∈ ER(T ).

L(a|b|c) = T .

L((ab)∗) = {ε, ab, abab, ababab, . . .}.L((a|b)∗) = {ε, a, b, aa, ab, ba, bb, . . .}L((a|b)∗c) = xc , x ∈ L((a|b)∗) ={c , ac, bc, aac , abc, bac , bbc, . . .}Note que L((ab)∗) = L((ab(ab)∗)∗), ou seja, mais de uma e.r.representa a mesma linguagem.

Marcelo Finger IME-USP

Introducao 28 / 49

Page 44: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Expressoes Regulares e GramaticasRegulares

Theorem

Existe uma e.r. E se e somente se existe uma gramatica regular Gr

tal que L(E ) = L(Gr ).

Exemplos:

(a|b)∗c ⇔

S → CS → aSS → bSC → c

b(ab)∗(ac)∗ ⇔

S → bXX → YX → abXY → εY → acY

Marcelo Finger IME-USP

Introducao 29 / 49

Page 45: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Automatos Finitos

Um automato finito e uma quıntupla A = (Q,T ,M, q0,F )onde:

Q 6= ∅ e um conjunto de estados;T e um vocabulario (terminais);M : Q × T → Q e a funcao de transicao de estados;q0 ∈ Q e o estado inicialF ⊆ Q sao os estados de aceitacao

Uma cadeia s ∈ T ∗ e aceita por A se, a partir do estadoinicial, seguindo a funcao de transicao, termina-se num estadode aceitacao.

L(A) e a linguagem reconhecida/gerada por A.

Marcelo Finger IME-USP

Introducao 30 / 49

Page 46: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Automatos Finitos (Exemplo)

S X Y

b ac

ab ac

Note que L(A) = L(b(ab)∗(ac)∗).

Marcelo Finger IME-USP

Introducao 31 / 49

Page 47: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Automatos Finitos e Gramaticas Regulares

Existe um automato A sse existe uma gramatica regular G talque L(A) = L(G ).Logo, ha equivalencia entre a.f.’s , e.r.’s e gramaticasregulares.Vide exemplo anterior.

O automato e determinıstico se nao possui arcos rotulados porε (ou se M e uma funcao, e nao uma relacao).

Para todo a.f. nao-determinıstico A existe um a.f.determinıstico A′ com L(A) = L(A′).

Um a.f. pode ser minimizado, gerando-se um a.f. equivalentecom menos estados.

O a.f. mınimo e unico (a menos de isomorfismos).

Marcelo Finger IME-USP

Introducao 32 / 49

Page 48: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Automatos Acıclicos

Automatos acıclicos reconhecem linguagens finitas.

Um lexico e uma linguagem finita. Pode ser minimizado emum automato finito.

Forma muiiiiito eficiente de se guardar/indexar grandesquantidades de dados.

Lexicos inteiros podem ser armazenados em memoria.

Marcelo Finger IME-USP

Introducao 33 / 49

Page 49: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Gramaticas Livres de Contexto

Gramaticas livres de contexto (GLC) admitem apenas producoesα −→ β onde:

α e um nao-terminal (α ∈ N)

β ∈ V ∗, ou seja, β pode conter uma sequencia de elementosdo vocabulario.

As GLCs sao de grande utilidade pratica.Basicamente, TODAS as linguagens de programacao sao definidaspor GLCs. Os tipos das variaveis sao a unica condicao de contextoutilizadas em linguagens de programacao, em geral.GLCs sao reconhecidas por automatos de pilhas, tambem deeficiente implementacao no computador.

Marcelo Finger IME-USP

Introducao 34 / 49

Page 50: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

A seguir, apresentamos um trecho de uma gramatica GLC de umalinguagem pseudo-Pascal, com sımbolo inicial Comando:Comando −→Var := ExpressaoComando −→If Cond Comando Else ComandoComando −→While Cond ComandoComando −→Bloco

Bloco −→Begin SeqComandos End

SeqComandos −→ComandoSeqComandos −→Comando ; SeqComandos...

Marcelo Finger IME-USP

Introducao 35 / 49

Page 51: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Gramaticas Sensıveis ao Contexto

Gramaticas Sensıveis ao Contexto admitem apenas producoes daforma:

A X B −→ A Y B ouS −→ ε

onde A,B ∈ V ∗, X ∈ N e Y ∈ V+.A sensibilidade ao contexto aumenta muito a complexidade de sereconhecer tais gramaticas.

Marcelo Finger IME-USP

Introducao 36 / 49

Page 52: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Hierarquia de Chomsky

Gramaticas Genericas : tipo 0

Gramaticas Sensıveis a Contexto : tipo 1

Gramaticas Livres de Contexto : tipo 2

Gramaticas Regulares : tipo 3

Referencia: Introduction to Formal Languages, G. E. Revesz, 1983.Dover Publications (1991)

Marcelo Finger IME-USP

Introducao 37 / 49

Page 53: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Geracao vs Reconhecimento

Conceitos duais:

Geracao: Dada uma gramatica G e uma sentenca s, s e geradapor esta gramatica?

Reconhecimento: Um programa que responde corretamente apergunta acima e um reconhecedor para aquelagramatica.

A saıda de um reconhecedor e:

NAO, se G nao gera s.

SIM, se G gera s. Neste caso, podemos ter como saıda umaarvore sintatica associada a s.

Pode haver mais de uma arvore sintatica associada a um s.

Marcelo Finger IME-USP

Introducao 38 / 49

Page 54: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Arvores de Reconhecimento

A sentenca: o vilao beijou a mocinhaao ser reconhecida pela gramatica:

S −→SN SV SN −→Det NSV −→VT SN Det −→oDet −→a N −→vilaoN −→mocinha VT −→beijou

gera a seguinte arvore sintatica:

SSN

Deto

Nvilao

SVVT

beijouSN

Deta

Nmocinha

Marcelo Finger IME-USP

Introducao 39 / 49

Page 55: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Gramaticas Ambıguas

Uma mesma sentenca gera mais de uma arvore sintatica.Exemplo: Eu vi o menino com o telescopio.Gramatica: S −→SN SV

SN −→Det NSN −→PROSN −→SN SP

SV −→VT SNSV −→SV SP

SP −→P SN

PRO −→euVT −→viDet −→oP −→comN −→telescopioN −→menino

Nota: SP e o sintagma prepositivo (adjunto)

Marcelo Finger IME-USP

Introducao 40 / 49

Page 56: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Sentido 1: Anexacao do SP ao SN

S

SN

PRO

eu

SV

VT

vi

SN

SN

D

o

N

menino

SP

P

com

SN

D

o

N

telescopio

Sentido: o menino estava carregando o telescopio

Marcelo Finger IME-USP

Introducao 41 / 49

Page 57: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Sentido 2: Anexacao do SP ao SV

S

SN

PRO

eu

SV

SV

VT

vi

SN

D

o

N

menino

SP

P

com

SN

D

o

N

telescopio

Sentido: eu usei o telescopio para ver o menino

Marcelo Finger IME-USP

Introducao 42 / 49

Page 58: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Topicos

1 Preambulo

2 Linguagem e sua Modelagem

3 Sintaxe: A Analise da Estrutura

4 Linguagens Formais e Gramaticas Formais

5 Semantica

6 Pragmatica

Marcelo Finger IME-USP

Introducao 43 / 49

Page 59: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Interface Sintaxe-Semantica

Fenomeno: a cada arvore sintatica atribui-se um significado(potencialmente) distinto.Problema:

Como atribuir significado a uma arvore sintatica?

O que e “significado”?

Marcelo Finger IME-USP

Introducao 44 / 49

Page 60: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Semanticas Formais

Representacao matematica formal do significado

Composicionalidade: O significado de um elemento e umacomposicao dos significados de suas partes

Gramaticas Categoricas baseadas em Logicas Categoricas eCalculo Lambda

Ponte formal para a interface Sintaxe-Semantica

Marcelo Finger IME-USP

Introducao 45 / 49

Page 61: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Semanticas Contextuais

Expressoes com significados semelhantes ocorrem m contextossemelhantes

O contexto e a semantica, a semantica e um padrao

Insercao (embedding) em espacos vetoriais n-dimensionais

Pontos proximos representam conceitos semanticamentesemelhantes

Exploram propriedades dos espacos vetoriais no processamento

Marcelo Finger IME-USP

Introducao 46 / 49

Page 62: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Topicos

1 Preambulo

2 Linguagem e sua Modelagem

3 Sintaxe: A Analise da Estrutura

4 Linguagens Formais e Gramaticas Formais

5 Semantica

6 Pragmatica

Marcelo Finger IME-USP

Introducao 47 / 49

Page 63: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Pragmatica

Relacao entre a linguagem e seus falantes.

Pragmatica trata do uso concreto da linguagem, enquanto asemantica e a sintaxe constituem a construcao teorica

Trata de assuntos como deixis, revezamento na conversacao,organizacao do texto, pressuposicoes e implicatura.

Interface ente linguagem e cultura

Marcelo Finger IME-USP

Introducao 48 / 49

Page 64: Introdução ao Estudo Computacional da Linguagem

Preambulo Linguagem Sintaxe Gramatica Semantica Pragmatica

Exemplos de Pragmatica em Acao

1 Eu gostaria de saber se voce teria condicoes de me dar umacarona.

2 Que beleza esta o transito hoje!

3 Esta um calor aqui dentro, nao?

4 Que bela loja voce tem, seria uma pena se algo acontecesse aela.

Marcelo Finger IME-USP

Introducao 49 / 49