Grammatiche basate sulla Unificazione
Attributi
Possiamo associare a ciascuna parola di una frase degli attributi, che ne determinano la funzione e ne restringono l'uso
.|
Il |
ragazzo |
canta |
|
|
|
|
La categoria di una parola ha una importanza primaria e puo' essere estratta dalla struttura.
Possiamo cosi' scrivere una regola del tipo:
|
Frase |
|
SN |
SV |
|
|
|
|
|
Che esprime l' idea che una frase e' formata da un sintagma nominale seguito da un sintagma verbale,
e che la persona e il numero del nome e del verbo debbono coincidere.
Analogamente possiamo scrivere una regola per il sintagma nominale
|
SN |
|
Det |
Nome |
|
|
|
|
|
Che impone l' accordo in genere e numero fra articolo e nome
.
Ogni struttura contiene una serie di attributi a ciascuno dei quali e'associato un valore:
.
A questa struttura puo essere associato un grafo orientato aciclico (DAG).
Una valore puo' a sua volta essere una struttura di attributi come in:
.
Unificazione
Due strutture di attributi possono essere fuse fra loro mediante lóperazione di unificazione. L'unificatore C di due strutture A e B è la più piccola struttura che contiene sia le informazioni di A che quelle di B.
L'unificazione di due strutture di attributi A e B é definita dalle seguenti regole (dando luogo alla struttura C):
I valori degli attributi vengono unificati come segue:
Esempi:
![]()
mentre
e ![]()
Una notazione per le strutture di attributi
L'operatore ":" lega un attributo al suo valore, mentre l'operatore ".." combina coppie attributo-valore in una struttura di attributi. Entrambi gli operatori sono associativi a destra. Ad esempio a:b:c = a:(b:c)).
La struttura ![]()
viene scritta come:
a:b..c:d
Mentre la struttura 
può essere scritta come
a:b..c:(d:e..f:g)
Un modo equivalente di rappresentare la struttura è

che può essere espressa come:
a:b..c:d:e..c:f:g
La regola :
|
SN |
|
Det |
Nome |
|
|
|
|
|
Può essere espressa mediante le regole grammaticali del Prolog come:
sn --> det(Det),nome(N),
{Det=genere:X,
Det=numero:Y,
N=genere:X,
N=numero:Y}.
Concordanze
L'esempio 1
mostra come sia possibile gestire concordanze in genere e numero fra articolo e nome, e in genere, numero e persona fra soggetto e verbo.Ogni verbo viene anche sottocategorizzato come transitivo o intransitivo.
Controlli semantici
L'esempio 2
mostra invece come sia possibile realizzare dei semplici controlli semantici:Il lessico dei verbi contiene delle indicazioni sulle categorie semantiche cui debbono appartenere soggetto e l'eventuale complemento. I nomi sono classificati a loro volta secondo queste categorie.
Estraposizione
In proposizioni interrogative o relative vi è un movimento (estraposizione) di un componente(il pronome interrogativo o relativo.
Ad esempio:
A chi Mario a regalato un libro.
Oppure anche uno spostamento da un livello più profondo
A chi Mario ha detto di aver regalato un libro.
Analogo fenomeno si ha nelle frasi relative
Ho letto il libro che Mario mi ha regalato.
Per analizzare queste frasi è necessario disporre di un meccanismo che rimetta a posto il componente spostato.
L'esempio 3 mostra questa tecnica.