|
|
|
[an error occurred while processing this directive]
<<<
Per il fatto che gli
operatori di
AUCTORES
si compongono per fornire il risultato, cioè ad una coppia di
operatori si fa corrispondere un
operatore risultato,
nel corso della realizzazione del progetto si vuole indagare sulla possibilità di strutturare la composizione di
operatori in modo che si possano costruire
strutture algebriche.
Un’algebra che sia in grado di poter considerare
“equivalenze aggiuntive” è in grado di operare sia
semplificazioni in genere, sia adattamenti automatici e traduzioni
basate sulle equivalenze.
È facile intuirne le potenzialità; però il poter fondare un’algebra di
composizione tra
operatori
non è banale, anzi comporta delle difficoltà.
La prima e maggiore difficoltà consiste nel fatto che il
requisito fondamentale pe rpoter costituire una struttura algebrica
è la possibilitàdi composizione tra tutti gli elementi
del sistema.
Questo è un requisito che è fortemente
condizionato dal comportamento dei
processori
che possono essere “alimentati” (quindi comporsi) solo da particolari strutture di dati;
AUCTORES ha introdotto il concetto di
operatore,
composto dalle parti d’interfaccia oltre che dal
processore,
per poter ottemperare, in molte situazioni, a questo requisito.
Inoltre, ma questa è una difficoltà superabile con una adeguata organizzazione, in
AUCTORES
esistono parti d’interfaccia, i
connettori,
che sono essi stessi operatori; questo fa sì che si
debbano considerare due strutture algebriche, quella relativa agli
operatori
“in toto” e quella relativa alle composizioni con i
connettori;
ovviamente esisteranno regole aggiuntive di composizione.
Altra notevole limitazione deriva dal fatto che i processori ammettono
stati,
anzi ne sono condizionati: l’esistenza degli
stati,
derivanti in genere dalla composizione con operatori d’interfaccia col sistema ospite,
impedisce, quando ciò accade,
l’associatività tra gli operatori.
AUCTORES,
per poter, anche a fronte di queste difficoltà,
comunque permettere la fondazione di un sistema algebrico,
usa la classificazione per consentire agli operatori di valutazione delle equivalenze
(quando e se ci saranno) di poter considerare composizioni di
operatori
se appartenenti o no a strutture algebriche e se ciò accade, a quali esse appartengano.
In una interazione con l’utente, per esempio, si potrebbe considerare la sessione come formata da un
numero finito di interazioni elementari dove in ciascuna di esse la composizione tra
operatori
è indipendente da stati e per cui valgono le equivalenze del sistema algebrico di cui fanno parte gli
operatori.
Relativamente a molte operazioni, infatti, la composizione tra operatori potrebbe avere la
struttura di
gruppo;
questo porterebbe ad importanti conseguenze sulle equivalenze senza dover per forza applicare l’operazione stessa.
Per ciò, quando è possibile, si fa sì che gli
operatori
si comportino in modo che la composizione delle operazioni sia un
gruppo
e quindi valga per la composizione ogni proprietà dei
gruppi:
-
La
chiusura
è implicita: la legge che associa a due
simboli
il risultato della composizione produce un
simbolo;
il primo obiettivo di
AUCTORES,
che ha portato all’introduzione del concetto di
operatore, è proprio questo.
-
Associatività:
AUCTORES,
quando possibile, si basa su questa proprietà nella composizione: per esempio i
connettori
si considerano parte dell’operatore fruitore
e quindi si considera la composizione tra l’operatore semantico
ed il
connettore,
ma quest’ultimo si compone con l’ambiente di conoscenza
per fornire l’operatore fornitore;
ciò determina di fatto l’equivalenza tra la composizione a sinistra e quella a destra del
connettore.
-
Per ogni operazione deve esistere un
elemento neutro,
cioè tale che l’azione di esso sull’operazione lasci il risultato invariato.
L’introduzione dell’elemento neutro,
non sembra comportare eccessive difficoltà,
ma la sua esistenza è ovviamente legata all’esistenza di un
operatore inverso.
-
Operazione inversa:
Molte funzioni tipiche dei sistemi di programmazione non possono avere
operazione inversa
a meno di restrizioni che dovranno essere analizzate;
esistono però comunque situazioni in cui si può avere un
inverso sia in modo naturale che operando una forzatura.
[an error occurred while processing this directive]
>>>
|
|