Escolar Documentos
Profissional Documentos
Cultura Documentos
Linguagem Natural
Considerações
Considerações
PLN
PLNééuma
umavasta
vastaárea
áreade
depesquisa
pesquisaque
queenvolve
envolvediversas
diversasáreas
áreasdo doconhecimento.
conhecimento.
Para
Parasimplificar,
simplificar,abordaremos
abordaremosapenas
apenasalguns
algunsconceitos
conceitosbásicos
básicosde deanálise
análisesintática.
sintática.
Mostraremos
Mostraremoscomo
comousar
usarconceitos
conceitosbásicos
básicosde
delinguagens
linguagensformais
formaispara
paradefinir
definiruma
uma
gramática
gramáticacapaz
capazde degerar
gerareereconhecer
reconhecerumumconjunto
conjuntorestrito
restritode
defrases
frasesem
emportuguês.
português.
Uma
Umagramática
gramática
ééuma
umaespecificação
especificaçãomatemática
matemáticada
daestrutura
estruturadas
dassentenças
sentençasde
deuma
umalinguagem.
linguagem.
Exercício
Exercício1.1.Uso
Usoda
dagramática
gramáticapara
parareconhecimento
reconhecimentode
defrases
frases
Digite
Digiteaagramática
gramáticado
doExemplo
Exemplo11eefaça
façaas
asconsultas
consultasaaseguir:
seguir:
?-
?- artigo([o,gato,caçou,o,rato],R).
artigo([o,gato,caçou,o,rato],R).
?-
?- sujeito([o,gato,caçou,o,rato],R).
sujeito([o,gato,caçou,o,rato],R).
?-
?- frase([o,gato,caçou,o,rato],[]).
frase([o,gato,caçou,o,rato],[]).
?-
?- frase([o,gato,rato,o,caçou],[]).
frase([o,gato,rato,o,caçou],[]).
?- frase([o,rato,caçou,o,gato],[]).
?- frase([o,rato,caçou,o,gato],[]).
?-
?- frase([gato,caçou,rato],[]).
frase([gato,caçou,rato],[]).
Prof. Dr. Silvio do Lago Pereira – DTI / FATEC-SP 8
Reconhecimento de frases
/* 1 */ frase(A,C)
frase(A,C)
/* 1 */ frase (A,C) :-
frase(A,C) :-- sujeito(A,B),
::- sujeito(A,B), predicado(B,C).
predicado(B,C).
/* 2 */ sujeito(A,C)
(A,C) :-
sujeito
/* 2 */ sujeito(A,C)
sujeito(A,C) :- ::- artigo(A,B), substantivo(B,C).
- artigo(A,B), substantivo(B,C).
/* 3 */ predicado(A,D) (A,D)
/* 3 */ predicado (A,D) :-
predicado(A,D)
predicado :-- verbo(A,B),
::- verbo(A,B), artigo(B,C),
artigo(B,C), substantivo(C,D).
substantivo(C,D).
/* 4 */ artigo([
artigo ([o
([ o |A],A).
|A ],A).
artigo([
/* 4 */ artigo ([o
([ |A],A).
o|A ],A).
/* 5 */ substantivo([
substantivo ([gato
([ gato|A
gato |A],A).
|A ],A).
substantivo([
/* 5 */ substantivo ([gato
([ gato|A
gato |A],A).
|A ],A).
/* 6 */ substantivo([
substantivo ([rato
([ rato|A],A).
rato |A],A).
substantivo([
/* 6 */ substantivo ([rato
([ rato|A],A).
rato |A],A).
*/ verbo([
verbo([ca
/*
/* 77 */ verbo ([
verbo([caç
ca
([ca
caç
([ca ççou|A
ou |A],A).
|A
ou|A
ou ],A).
|A],A).
|A ],A).
?- frase([o,gato,ca
frase([o,gato,caç
[o,gato,caçou,o,rato],[])
ou,o,rato],[]).
,[]).
?- sujeito([o,gato,ca
sujeito([o,gato,caç
[o,gato,caçou,o,rato],B
ou,o,rato],B1), predicado(B1,[]).
?- artigo([o,gato,ca
artigo([o,gato,caç
[o,gato,caçou,o,rato],B
ou,o,rato],B2), substantivo(B2,B1), predicado(B1,[]).
?- substantivo([gato,ca
substantivo([gato,caç
[gato,caçou,o,rato],B
ou,o,rato],B1), predicado(B1,[]).
?- predicado([ca
predicado([caç
[caçou,o,rato],[])
ou,o,rato],[]).
,[]).
?- verbo([ca
verbo([caç
[caçou,o,rato],B
ou,o,rato],B3), artigo(B3,C3), substantivo(C3,[]).
?- artigo([o,rato]
artigo([o,rato],C
[o,rato],C3), substantivo(C3,[]).
?- substantivo([rato]
substantivo([rato],[])
[rato],[]).
,[]).
?- sujeito([o,gato,rato,o,ca
sujeito([o,gato,rato,o,caç
[o,gato,rato,o,caçou],B
ou],B1), predicado(B1,[]).
?- artigo([o,gato,rato,o,ca
artigo([o,gato,rato,o,caç
[o,gato,rato,o,caçou],B
ou],B2), substantivo(B2,B1), predicado(B1,[]).
?- substantivo([gato,rato,o,ca
substantivo([gato,rato,o,caç
[gato,rato,o,caçou],B
ou],B1), predicado(B1,[]).
?- predicado([rato,o,ca
predicado([rato,o,caç
[rato,o,caçou],[])
ou],[]).
,[]).
?- verbo([rato,o,ca
verbo([rato,o,caç
[rato,o,caçou],B
ou],B3), artigo(B3,C3), substantivo(C3,[]).
FALHA
Exercício
Exercício2.2.Uso
Usoda
dagramática
gramáticapara
parageração
geraçãode
defrases
frases
Faça
Façaas
asconsultas
consultasaaseguir,
seguir,que
quegeram
geramtodas
todasas
asfrases
frasesda
dalinguagem
linguagemdefinida
definidapela
pela
gramática
gramáticado
doExemplo
Exemplo1:1:
??-- frase(F,[]).
frase(F,[]).
??-- forall(
forall(( frase(F,[]),
forall
forall( frase(F,[]),
frase (F,[]), writeln(F)
frase(F,[]), writeln(F)
writeln (F) ).
writeln(F) ).
Exercício
Exercício3.3.Ampliação
Ampliaçãodo
doléxico
léxicoda
dagramática
gramática
Altere
Altereaadefinição
definiçãoda
dagramática
gramáticado
doExemplo
Exemplo1,1,adicionando
adicionandoooartigo umeeooverbo
artigoum verbo
assustou. .Em
assustou Emseguida,
seguida,faça
façaas
asconsultas
consultasaaseguir:
seguir:
??-- frase(F,[]).
frase(F,[]).
??-- forall(
forall(( frase(F,[]),
forall
forall( frase(F,[]),
frase (F,[]), writeln(F)
frase(F,[]), writeln(F)
writeln (F) ).
writeln(F) ).
Exemplo
Exemplo2.2.Uma
Umagramática
gramáticaem
emnotação
notaçãoDCG
DCG
frase
frase -->
-->> sujeito,
--
--> sujeito, predicado.
predicado.
sujeito -->
--> artigo, substantivo.
--
sujeito --> > artigo, substantivo.
predicado
predicado -->-->> verbo,
--
--> verbo, artigo,
artigo, substantivo.
substantivo.
artigo
artigo -->
-->> [o
--
--> [oo].
[[o ].
substantivo
substantivo -->-->
-->> [gato
-- [gato]
gato]] || [rato
[[gato
gato
gato] [rato].
rato].
[[rato
rato
rato].
].
verbo -->
--
verbo -->> [ca
[caç
ca
--> [ca
[caçç ou].
ou
caçou].].
ou].
Exercício
Exercício4.4.Análise
Análisedo
doresultado
resultadodadacompilação
compilaçãoda danotação
notaçãoDCG
DCG
Digite
Digiteaagramática
gramáticado
doExemplo
Exemplo2,2,compile
compileeefaça
façaaaconsulta
consultaaaseguir:
seguir:
??-- listing.
listing.
Exercício
Exercício5.5.Teste
Testeda
dagramática
gramáticaG1 G1
Gere
Gereeeanalise
analisetodas
todasas
asfrases
frasesda
dalinguagem
linguagemdefinida
definidapela
pelagramática
gramáticaG1.
G1.
AAdependência
dependênciadedecontexto
contextoocorre
ocorrequando
quandouma
umapalavra
palavrada
dafrase
frasedeve
deveconcordar
concordarcom
com
outras
outraspalavras
palavrasda
damesma
mesmafrase.
frase.
Exemplo
Exemplo4.4.Gramática
GramáticaG2
G2
ss -->
-->> sn,
--
--> sn, sv.sv.
sn -->
--> det, n.
--
sn -->> det, n.
sv -->
--
sv -->> v,
--> v, sn.sn.
det -->
-->> [o
--
det --> [oo].
[[o ].
nn -->
-->> [gato
--
--> [gato]
gato]] || [rato
[[gato
gato
gato] [rato].
rato].
[[rato
rato
rato].
].
vv -->
-->> [ca
--
--> [caç
caççou].
[[ca
ca
caç ou].
ou
ou].
].
Exercício
Exercício6.6.Ampliação
Ampliaçãoda dagramática
gramáticacom
comgênero
gênerofeminino
feminino
Amplie
Amplieaagramática
gramáticaG2,
G2,adicionando artigoaaeeos
adicionandoooartigo substantivosgata
ossubstantivos gataeerata.
rata.Em
Em
seguida,
seguida,gere
gereeeanalise
analisetodas
todasas
asfrases
frasesdefinidas
definidaspela
pelagramática
gramáticaalterada.
alterada.
Exercício
Exercício7.7.Gramática
Gramáticacomcomconcordância
concordânciade degênero
gênero
Gere
Gereeeanalise
analisetodas
todasas
asfrases
frasesdefinidas
definidaspela
pelagramática
gramáticaG3.
G3.
Exercício
Exercício8.8.Ampliação
Ampliaçãodo doléxico
léxico
Adicione
Adicioneos
osartigos
artigosindefinidos umeeuma
indefinidosum umaeegere
gereas
asfrases
frasesdefinidas
definidaspela
pelagramática.
gramática.
Prof. Dr. Silvio do Lago Pereira – DTI / FATEC-SP 17
Dependência de contexto
Exemplo
Exemplo6.6.Gramática
GramáticaG4
G4
ss -->
-->> sn,
--
--> sn, sv.sv.
sn
sn -->
-- >
--> det(G
det(G),
det(
--> det(G G ), n(G
n(GG).
n(
n(G ).
sv
sv -->
-- >
--> v,
--> v, sn. sn.
det(m
det(mm)) -->
det(
det(m -->> [o
--
--> [oo]]
[[o || [um
[um].
um].
[[um
um
um].
].
det(f
det( f
det(f ) -->
--
det(f) --> > [a
[
--> [a a
[a]] | [uma
[ uma].
uma].
[uma
| [uma
uma].
].
n(m
n( m
n(m)
n(m) -->
-- >
--> [gato
[ gato]
gato
--> [gato
[gato] ] | [rato
[ rato].
rato].
rato
gato] | [rato
[rato]. ].
n(f
n( f
n(f)
n(f) -->
-- >
--> [gata
[ gata]
gata
--> [gata
[gata] ] | [rata
[ rata].
rata
gata] | [rata
[rata].].
rata].
vv -->
-- >
--> [ca
[
--> [cacaç
ca
[caç çou].
ou].
caçou].
ou].
Exercício
Exercício9.9.Ampliação
Ampliaçãoda
dagramática
gramáticacom
complural
plural
Amplie
Amplieaagramática
gramáticaG4,
G4,adicionando:
adicionando:
os artigos:os,
osartigos: os,uns,
uns,as,
as,umas
umas
os substantivos:gatos,
ossubstantivos: gatos,ratos,
ratos,gatas,
gatas,ratas
ratas
verbo:caçaram
ooverbo: caçaram
Em
Emseguida,
seguida,gere
gereeeanalise
analisetodas
todasas
asfrases
frasesdefinidas
definidaspela
pelanova
novagramática.
gramática.
Prof. Dr. Silvio do Lago Pereira – DTI / FATEC-SP 18
Dependência de contexto
Exemplo
Exemplo7.7.Gramática
GramáticaG5
G5
ss -->
-->> sn(N
--
--> sn(NN),
sn(
sn(N ), sv(N
sv(NN).
sv(
sv(N ).
sn(N
sn(NN))
sn(
sn(N -->
-->> det(G
--
--> det(GG,,NN),
det(
det(G ), n(G
n(GG,,NN).
n(
n(G ).
sv(N
sv(NN))
sv(
sv(N -->
-->> v(N
--
--> v(NN),
v(
v(N ), sn(_
sn(__).
sn(
sn(_ ).
det(m
det(
det(m m ,s )
det(m,s) --> -->
-- > [o
[
--> [o o]
[o] | [um
[[um].
| [umum].
um
um].
].
det(m
det(
det(m m ,p )
det(m,p) --> -->
-- > [os
[
--> [osos]
os
[os]]
os] | [uns
[ uns].
uns].
uns
| [uns
[uns]. ].
det(f
det(
det(f f ,s )
det(f,s) --> -->
-- > [a
[
--> [a a]
[a] | [uma
[ uma].
uma
| [uma
[uma].].
uma].
det(f
det(ff,,pp)) -->
det(
det(f -->> [as
--
--> [as]
as]]
[[as
as
as] || [umas
[umas].
umas].
[[umas
umas
umas]. ].
n(m
n(mm,,ss)) -->
n(
n(m -->> [gato
--
--> [gato]
gato]] || [rato
[[gato
gato
gato] [rato].
rato].
[[rato
rato
rato]. ].
n(m
n( m
n(m ,
n(m,p)p ) -->
-- >
--> [gatos
[ gatos]
gatos
--> [gatos
[gatos] ] | [ratos
[
gatos] | [ratosratos].
ratos].
ratos
[ratos]. ].
n(f
n( f
n(f ,
n(f,s)s ) -->
-- >
--> [gata
[ gata]
gata
--> [gata
[gata] ] |
gata] | [rata[rata
[ rata].
rata
[rata].
rata].].
n(f
n( f
n(f ,
n(f,p)p ) -->
-- >
--> [gatas
[ gatas]
gatas
--> [gatas
[gatas] ] | [ratas
[
gatas] | [ratasratas].
ratas].
ratas
[ratas]. ].
v(s
v( s
v(s
v(s)) -->
-- >
--> [ca
[
--> [cacaç
ca
[caçç ou].
ou
caçou].].
ou].
v(p
v(pp))
v(
v(p -->
-->> [ca
--
--> [caç
caççaram].
[[ca
ca
caç aram].
aram
aram].].
Exercício
Exercício10.
10.Teste
Testeda
dagramática
gramáticaG5G5
Gere
Gereeeanalise
analisetodas
todasas
asfrases
frasesdefinidas
definidaspela
pelagramática
gramáticaG5.
G5.
Prof. Dr. Silvio do Lago Pereira – DTI / FATEC-SP 19
Fim