Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[PCBRAIN V.2.0] Analizzatore logico...

125 views
Skip to first unread message

[D0M3]

unread,
Oct 24, 2001, 2:58:29 PM10/24/01
to
Ciao a tutti,
sto realizzando un nuovo analizzatore logico. Supponendo che l'analizzatore
grammaticale alla base funzioni ipoteticamente al 100%, come posso
realizzare un analizzatore logico? La mia idea era questa: cerca il verbo,
se esiste, cerca il soggetto (il termine (in ordine di importanza:
sostantivo o nome proprio o aggettivi o pronimi) posto PRIMA del verbo), e
l'oggetto (posto dopo del verbo, in ordine di importanza: sostantivi, nomi
propri, aggettivi, pronomi, avverbi). Il tutto viene basato su di un ciclo
che continua finche non viene trovata la combinazione migliore di
soggetto-verbo-complemento oggetto/predicato.
Il tutto funziona bene, anche con frasi complesse, ma standard:

<cut>
---] il mio bellissimo cane mangia sempre la mia cena [---------------
[il]
(il) Articolo det
(il) Pronome pers masc sing
(io) Pronome pers masc sing
[mio]
(mio) Aggettivo poss masc sing
[bellissimo]
(bello) Aggettivo masc sing
[cane]
(cane) Sost masc sing
(cane) Sost masc sing
(cane) Sost femm plur
[mangia]
(mangiare) Verbo trans 1a coniug 3a pers sing
[sempre]
(sempre) Avverbio
(sempre) Avverbio
[la]
(la) Articolo det
(la) Articolo det
(le) Articolo det
(li) Pronome pers femm sing
(lo) Articolo det
[mia]
(mio) Aggettivo poss femm sing
[cena]
(cena) Sost femm sing
(cenare) Verbo intran 1a coniug 3a pers sing
(cenere) Sost femm sing
(cenere) Sost femm sing
(cenere) Sost femm sing

[Analisi logica]
cane> Soggetto
mangia> Verbo principale
cena> Oggetto

</cut>

PS: gia che ci sono vi posto anche un esempio di frase passiva ;)) :
<cut>
---] il gatto viene picchiato dal padrone [---------------
[il]
(il) Articolo det
(il) Pronome pers masc sing
(io) Pronome pers masc sing
[gatto]
(gatto) Sost masc sing
(gatta) Sost masc sing
[viene]
(venire) Verbo Irr intran 3a coniug 3a pers sing ausil
[picchiato]
(picchiato) Aggettivo masc sing
(picchiare) Verbo trans 1a coniug no pers plur
(picchiata) Sost masc sing
[dal]
(dal) Preposizione articolata
(dai) Preposizione articolata
[padrone]
(padrone) Sost masc sing
(padrone) Sost femm plur

[Analisi logica]
gatto> Oggetto
picchiato> Verbo principale
padrone> Soggetto

</cut>

Pero ho dei problemi con:
- soggetto sottointeso
- forme verbali molto complesse (con ausiliare + verbo me la cavo ancora)
- riflessivi
- frasi in cui viene spostato l'ordine di soggetto - verbo - oggetto

Per il resto l'analizzatore grammaticale di PCBrain funziona sempre meglio!
Ho inserito circa 700 nomi propri (di cui il dizionario era sprovvisto) e
ora sto cercando di inserirli nel contesto del dizionario (non mi ci vorrà
molto cmq).
Insomma, il programma promette bene, ma ci sono moltissimi casi particolari
della sfigatissima grammatica italiana che devono ancora essere presi in
considerazione! Chi mi da qualche aiutino?
Grazie in anticipo,
Dome


--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
PC Brain Official Web Site
http://digilander.iol.it/pcbrain
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Giacomo Bellucci

unread,
Oct 25, 2001, 2:41:44 PM10/25/01
to

"[D0M3]" <tdx...@libero.it> ha scritto nel messaggio
news:pbEB7.90810$1H1.9...@news.infostrada.it...

> Ciao a tutti,
> sto realizzando un nuovo analizzatore logico. Supponendo che
l'analizzatore
> grammaticale alla base funzioni ipoteticamente al 100%, come posso
> realizzare un analizzatore logico?

Se hai ancora un po di pazienza , sto implementando un analizzatore
sintattico per grammatiche generiche di tipo LL(1) tra le quali rientra
anche una possibile formalizzazione della grammatica italiana. Da l'analisi
sintattica si può risalire abbastanza facilmente all'analisi "logica"della
frase. Il problema è scrivere una grammatica in notazione BNF della lingua
italiana che sia la più completa possibile, che sia LL(1) e che non sia
ricorsiva a sinistra( cosa comunque alla quale si può quasi sempre
rimediare)

Milliken


Raistlin

unread,
Nov 9, 2001, 5:28:57 PM11/9/01
to
> sto realizzando un nuovo analizzatore logico. Supponendo che
l'analizzatore
> grammaticale alla base funzioni ipoteticamente al 100%, come posso
> realizzare un analizzatore logico?

Puoi cercare dati sulle ATN, Augmented Transition Networks... non sono un
esperto, ma ricordo che erano una delle possibili strutture proposte per
l'analisi sintattica-logica di una proposizione.

Stefano


Furlit

unread,
Nov 19, 2001, 1:10:46 PM11/19/01
to
On Wed, 24 Oct 2001 18:58:29 GMT, "[D0M3]" <tdx...@libero.it> wrote:

| Ciao a tutti,
| sto realizzando un nuovo analizzatore logico. ...


| La mia idea era questa: cerca il verbo,
| se esiste, cerca il soggetto (il termine (in ordine di importanza:
| sostantivo o nome proprio o aggettivi o pronimi) posto PRIMA del verbo)

non è la posizione che devi controllare, ma la concordanza

| <cut>

| Per il resto l'analizzatore grammaticale di PCBrain funziona sempre meglio!

Secondo me se inizi con l'analisi grammaticale non vai lontano.
ecco una prova che ho fatto con PCBrain scaricato dal sito tempo fa.

=====================
Debug info di PCBrain
=====================

---] la sera è calata [---------------
la> (la) Articolo det
sera> (sera) Sost femm sing
e'> ( sere) Verbo Irr intran 2a coniug 3a pers sing
calata> (calata) Sost femm sing *

---] la vecchia porta la sbarra [---------
--------------------- E IL VERBO ? (tra portare e sbarrare, nessuno)
la> (la) Articolo det
vecchia> (vecchio) Aggettivo femm sing
porta> (porta) Sost femm sing
la> (la) Articolo det
sbarra> (sbarra) Sost femm sing

---] non è un avverbio [-----------------------------------
----------------------- Questa era difficile. NON=sostantivo
non> (non) Avverbio *
e'> ( sere) Verbo Irr intran 2a coniug 3a pers sing
un> (un) Articolo indet
avverbio> (avverbio) Sost masc sing

---] il rosso è il mio colore preferito, non il tuo [---------------
il> (il) Articolo det
rosso> (rosso) Aggettivo masc sing *
e'> ( sere) Verbo Irr intran 2a coniug 3a pers sing
il> (il) Articolo det


mio> (mio) Aggettivo poss masc sing

colore> (colore) Sost masc sing
preferito> (preferito) Aggettivo masc sing
non> (non) Avverbio
il> (il) Articolo det
tuo> (tuo) Aggettivo poss masc sing

---] il gelato è buono [---------------
il> (il) Articolo det
gelato> (gelato) Aggettivo masc sing *
e'> ( sere) Verbo Irr intran 2a coniug 3a pers sing
buono> (buono) Sost masc sing

========================================

... quindi, meglio partire con l'analisi logica


Sani

Furlit
________________________________
reply-to x rot13 per contattarmi

[D0M3]

unread,
Nov 19, 2001, 1:24:25 PM11/19/01
to

> ... quindi, meglio partire con l'analisi logica
Uhmmmm... a dire il vero è proprio quello che ho detto ;)
La versione che c'è sul sito di PCBrain è vecchiotta. L'analizzatore allo
stato attuale (anche se sono fermo) propone tutte le possibili alternative.
Ti faccio vedere un output per le tue frasi:

---] la vecchia porta la sbarra [---------------
[la]
(la) Articolo det


(la) Articolo det
(le) Articolo det
(li) Pronome pers femm sing

(lo) Articolo det


[vecchia]
(vecchio) Aggettivo femm sing
[porta]
(porta) Sost femm sing

(portare) Verbo trans 1a coniug 3a pers sing
(porto) Sost femm sing
[la]
(la) Articolo det


(la) Articolo det
(le) Articolo det
(li) Pronome pers femm sing

(lo) Articolo det


[sbarra]
(sbarra) Sost femm sing

(sbarrare) Verbo trans 1a coniug 3a pers sing

[Analisi logica]
vecchia> Soggetto
porta> Verbo principale
sbarra> Oggetto

<ehm... qui forse sono scemo io... ;)) ma a me sembra che la l'analisi
logica ci abbia preso!>

---] il rosso è il mio colore preferito, non il tuo [---------------
[il]
(il) Articolo det

(il) Pronome pers masc sing

[rosso]
(rosso) Aggettivo masc sing
[e']
(
) Verbo Irr intran 2a coniug 3a pers sing ausil


[il]
(il) Articolo det
(il) Pronome pers masc sing

[mio]


(mio) Aggettivo poss masc sing
[colore]
(colore) Sost masc sing

(colorire) Verbo trans 3a coniug 3a pers sing
(colore) Sost femm plur
[preferito]
(preferito) Aggettivo masc sing
(preferire) Verbo trans 3a coniug no pers plur
[non]


(non) Avverbio
[il]
(il) Articolo det

(il) Pronome pers masc sing

[tuo]


(tuo) Aggettivo poss masc sing

[Analisi logica]
rosso> Soggetto
colore> Verbo principale
il> Oggetto

<qui il problema nasce dal fatto che è una periodo composto da due frasi:
"il rosso è il mio colore preferito", "il rosso non è il tuo colore
preferito" Per districarmi in questi casi sto progettando un analizzatore e
risolutore del periodo>

---] il gelato è buono [---------------
[il]
(il) Articolo det

(il) Pronome pers masc sing

[gelato]
(gelato) Aggettivo masc sing
(gelare) Verbo trans 1a coniug no pers plur
(gelata) Sost masc sing
[e']
(
) Verbo Irr intran 2a coniug 3a pers sing ausil
[buono]
(buono) Sost masc sing

[Analisi logica]
gelato> Soggetto
e'> Verbo principale
buono> Predicato
<qui non c'è difficoltà>

---] non è un avverbio [---------------

[non]
(non) Avverbio
[e']
(
) Verbo Irr intran 2a coniug 3a pers sing ausil
[un]


(un) Articolo indet
[avverbio]
(avverbio) Sost masc sing

Impossibile risalire alle singole componenti logiche della frase
<eheh... c'hai ragione... questa è davvero difficile. Se mai un giorno
PCBrain dovesse risolvere una frase del genere senza "trucchetti" mi sa che
lo brevetto ^_^>

Dome

Furlit

unread,
Nov 21, 2001, 11:05:24 AM11/21/01
to
On Mon, 19 Nov 2001 18:24:25 GMT, "[D0M3]" <tdx...@libero.it> wrote:

|
| > ... quindi, meglio partire con l'analisi logica
| Uhmmmm... a dire il vero è proprio quello che ho detto ;)

infatti volevo esprimere approvazione per il lavoro che vuoi fare

| La versione che c'è sul sito di PCBrain è vecchiotta. L'analizzatore allo
| stato attuale (anche se sono fermo) propone tutte le possibili alternative.
| Ti faccio vedere un output per le tue frasi:
|
| ---] la vecchia porta la sbarra [---------------

...<cut>


| [Analisi logica]
| vecchia> Soggetto
| porta> Verbo principale
| sbarra> Oggetto
|
| <ehm... qui forse sono scemo io... ;)) ma a me sembra che la l'analisi
| logica ci abbia preso!>

cvd: la sola analisi grammaticale era uscita con un esito privo di
verbo. La AL ha trovato una soluzione corretta. Avrebbe però dovuto
evidenziare i due possibili significati della frase: 1=come sopra, 2=
vecchia> aggettivo
porta> soggetto
sbarra> verbo


|
| ---] non è un avverbio [---------------
| [non]
| (non) Avverbio
| [e']
| (
| ) Verbo Irr intran 2a coniug 3a pers sing ausil
| [un]
| (un) Articolo indet
| [avverbio]
| (avverbio) Sost masc sing
| Impossibile risalire alle singole componenti logiche della frase
| <eheh... c'hai ragione... questa è davvero difficile. Se mai un giorno
| PCBrain dovesse risolvere una frase del genere senza "trucchetti" mi sa che
| lo brevetto ^_^>

...te lo auguro. Penso che questa frase potrebbe essere usata come un
test standard per vedere quanto è 'intelligente' un CB.


--
Sani

Furlit
______________________________
reply-to x rot13 per scrivermi

[D0M3]

unread,
Nov 21, 2001, 11:10:11 AM11/21/01
to
> | ---] la vecchia porta la sbarra [---------------
> ...<cut>
> | [Analisi logica]
> | vecchia> Soggetto
> | porta> Verbo principale
> | sbarra> Oggetto
> |
> | <ehm... qui forse sono scemo io... ;)) ma a me sembra che la l'analisi
> | logica ci abbia preso!>
Si si... devo essere scemo io! Continuo a non capire (leggi dopo)...

> evidenziare i due possibili significati della frase: 1=come sopra, 2=
> vecchia> aggettivo
> porta> soggetto
> sbarra> verbo

... eh si! Non l'ho mica capita sta cosa?! Come potrebbe essere la frase???
la vecchia porta la sbarra, con soggetto la porta, e sbarra come verbo non
mi sembra italiano ;))))
O no? ;((
Mi sa che sono ignorante (quindi se è ignorante il creatore, figuriamoci il
bot).
Illuminatemi!

> |
> | ---] non è un avverbio [---------------
> | [non]
> | (non) Avverbio
> | [e']
> | (
> | ) Verbo Irr intran 2a coniug 3a pers sing ausil
> | [un]
> | (un) Articolo indet
> | [avverbio]
> | (avverbio) Sost masc sing
> | Impossibile risalire alle singole componenti logiche della frase
> | <eheh... c'hai ragione... questa è davvero difficile. Se mai un giorno
> | PCBrain dovesse risolvere una frase del genere senza "trucchetti" mi sa
che
> | lo brevetto ^_^>
> ...te lo auguro. Penso che questa frase potrebbe essere usata come un
> test standard per vedere quanto è 'intelligente' un CB.

Uhmmmmmmmmmmmmm
giusto
potremmo tenerla nelle liste di prove da superare per un chatterbot nella
famosa gara di Ombra!

Ombra

unread,
Nov 21, 2001, 11:36:33 AM11/21/01
to
Il 21 Nov 2001, 17:10, "[D0M3]" <tdx...@libero.it> ha scritto:
>potremmo tenerla nelle liste di prove da superare per un chatterbot nella
>famosa gara di Ombra!

Azz! Mi vuoi proprio rovinare!
Cmq, per ragioni
personali... :-))
La gara non si terrà prima del 2002 :-(
Sono
letteralmente nella merda con Sam!
Quindi lo sto riscrivendo completamente
da "0" per la prima volta...
Sto cercando di dotarlo di un potente motore
inferenziale e...

>Dome

--------------------------------
Inviato via http://usenet.iol.it

Furlit

unread,
Nov 21, 2001, 4:56:11 PM11/21/01
to
On Wed, 21 Nov 2001 16:10:11 GMT, "[D0M3]" <tdx...@libero.it> wrote:

| > | ---] la vecchia porta la sbarra [---------------

| ... eh si! Non l'ho mica capita sta cosa?! Come potrebbe essere la frase???


| la vecchia porta la sbarra, con soggetto la porta, e sbarra come verbo non
| mi sembra italiano ;))))

<romanzo>
Eloisa decide di portare Francesco fuori dal tunnel. Pensa di passare
dalla stessa via da cui č entrata. Purtroppo non č piů possibile.
La vecchia porta la sbarra.
</romanzo>

[D0M3]

unread,
Nov 21, 2001, 5:10:12 PM11/21/01
to

"Furlit" <hello...@infinito.eu> ha scritto nel messaggio
news:3bfc2196...@127.0.0.1...

> On Wed, 21 Nov 2001 16:10:11 GMT, "[D0M3]" <tdx...@libero.it> wrote:

> Eloisa decide di portare Francesco fuori dal tunnel. Pensa di passare

> dalla stessa via da cui è entrata. Purtroppo non è più possibile.


> La vecchia porta la sbarra.

ahhhhhhh l'ho capita!!
ma daiiiiiiiiiiiiiii ;))) sto romanzo è bellino, lo vendono in libreria?
cosa è, una disperata storia di amore? ;))))
Comunque la frase è corretta... sono io che ho una preferenza grammaticale
diversa (avrei detto "la vecchia porta la ostacola", che è molto piu
diretto.. ma queste sono preferenze mie ;)) )
Grazie per l'aiuto!
Ciao,
Domenico

[D0M3]

unread,
Nov 21, 2001, 5:18:40 PM11/21/01
to
Scherzi a parte... il mito lentini pare aver rinunciato a replicare.... o
meglio... sara da qualche parte rintanato... perche ho fatto una ricerchina,
e non compaiono suoi messaggi sui NG di mezzo mondo dal 16 novembre! ;)
LOL
Dome


Furlit

unread,
Nov 22, 2001, 9:41:20 AM11/22/01
to
On Wed, 21 Nov 2001 22:10:12 GMT, "[D0M3]" <tdx...@libero.it> wrote:

| (avrei detto "la vecchia porta la ostacola", che è molto piu
| diretto..

un ostacolo si presume superabile, seppur con difficoltà, che so...
ricorrendo all'aiuto di una personalità virtuale ..., uno sbarramento
no ;-)

Draco Roboter

unread,
Nov 22, 2001, 11:33:30 AM11/22/01
to
Giacomo Bellucci ha scritto nel messaggio

> Il problema è scrivere una grammatica in notazione BNF della lingua
> italiana che sia la più completa possibile, che sia LL(1)

E noto che non si puo', al limite se puo' costruire una molto
semplificata.

Ciao R.
--
Inviato il gio 22 nov 2001 17:33:30 CET da fw01-e31.inferentia.net
[217.29.160.1]
http://www.neuromante.net/

Naemoth

unread,
Nov 22, 2001, 2:44:02 PM11/22/01
to

"Draco Roboter" <roccop...@yahoo.it> ha scritto nel messaggio
news:9tj9cq$bo9$1...@g.l.neuromante.dyndns.org...

> Giacomo Bellucci ha scritto nel messaggio
>
> > Il problema č scrivere una grammatica in notazione BNF della lingua
> > italiana che sia la piů completa possibile, che sia LL(1)

>
> E noto che non si puo', al limite se puo' costruire una molto
> semplificata.

Infatti io avevo detto "che sia la piů completa possibile". Comunque credo
che se ne potrebbe costruire una completa all'80 per cento almeno...
Il problema risiede molto anche nel vincolo LL(1)

--
___ ____
/ __ /___/
/__/ /___/

Giacomo Bellucci giaco...@tiscalinet.it
mill...@infinito.it

tcp-ip

unread,
Nov 22, 2001, 5:14:15 PM11/22/01
to

"[D0M3]" <tdx...@libero.it> ha scritto nel messaggio
news:t7cK7.2111$263....@news1.tin.it...

> ---] non è un avverbio [---------------
> <eheh... c'hai ragione... questa è davvero difficile. Se mai un giorno
> PCBrain dovesse risolvere una frase del genere senza "trucchetti" mi sa
che
> lo brevetto ^_^>

Il problema è che questa frase è veramente ambigua: potrebbe effettivamente
anche essere una risposta (con il soggetto sottinteso) ad una frase detta da
un interlocutore. Neanche un umano potrebbe decidere senza conoscere la
frase precedente.
Per quanto riguarda il caso della frase mi è venuta un'idea. Ecco due
elementi da cui si potrebbe capire che 'non' è il soggetto:

1) Questo (dai miei ricordi della grammatica studiata a scuola) è il
classico esempio di frase con funzione metalinguistica. PCBrain potrebbe
essere modificato per cercare di riconoscere questo tipo di frasi (la
presenza di parole tipiche della grammatica come 'avverbio' potrebbero
essere un segno distintivo) e stare in guardia: sa che per soggetto potrebbe
esserci anche una parola che di solito non è presente in questa funzione.

2) PCBrain dovrebbe capire che se prima non c'è nessuna frase non può
esserci un soggetto sottointeso e quindi cercare il soggetto a tutti i
costi.

Come si comporta PCBrain per frasi simili ma un po' meno ambigue (es. "Il è
un articolo")?


0 new messages