Skip to content

Elaborazione e interazione in programmazione logica e ad oggetti

Gratis La preview di questa tesi è scaricabile gratuitamente in formato PDF.
Per scaricare il file PDF è necessario essere iscritto a Tesionline. L'iscrizione non comporta alcun costo: effettua il Login o Registrati.

Anteprima della tesi: Elaborazione e interazione in programmazione logica e ad oggetti, Pagina 13
Parte Prima:  Limiti della LP 
LP e OOP   
15 
Possiamo interpretare ogni riga come una regola di riscrittura: quello che è a sinistra del simbolo “:-“ può essere 
sostituito con quello che si trova a sinistra o con la stringa vuota se non vi è nulla. L’input (goal) sia: 
f(a). 
Secondo la prima regola della teoria questo viene sostituito con 
g(b), f(c), h(a). 
usando poi la terza regola possiamo sostituire il primo termine: 
h(b), f(c), h(a). 
le altre sostituzioni sono le seguenti: 
f(c), h(a). 
h(a). 
. 
La terminazione con stringa vuota viene considerata come successo altrimenti come fallimento. Si noti che poiché un 
programma ha sempre una sola interpretazione invariabile risponderà sempre allo stesso modo agli stessi goal. Questo è 
diverso da quanto avviene nella OOP in cui la chiamata ad un metodo può dare risposte diverse in momenti diversi. 
Abbiamo detto che la riduzione della semantica alla sintassi è il punto cruciale della LP. Da questo non derivano 
solamente i limiti di cui parleremo in seguito, ma anche le peculiarità della LP. Difatti senza tale caratteristica non 
sarebbero nemmeno possibili l’unificazione (detta appunto sintattica), l’invertibilità, la dichiaratività che sono i punti di 
forza della LP che la distinguono dagli altri modelli. All’assenza del dominio semantico è da attribuire la mancanza dei 
tipi e delle variabili con assegnamento, ma questi non sono dei limiti. Vedremo invece che la mancanza di stato e di 
interazione sono dei veri limiti. E’ chiaro anche che  
nel momento in cui tentiamo di superare queste mancanze della LP introducendo lo stato e 
l’interazione perdiamo anche alcune peculiarità. 
Dovremo fare quindi un bilancio delle nuove funzionalità che si acquisiscono e di quelle che si perdono e valutare se 
l’estensione può risultare vantaggiosa. 
2.2. I veri limiti della LP 
In questa sezione cercheremo di far capire perché l’assenza di stato e di interazione sono effettivamente dei limiti per la 
LP. La trattazione sarà piuttosto informale ed intuitiva facendo appello ad idee che chiunque abbia mai avuto a che fare 
con la programmazione logica ed ad oggetti ha avuto modo di conoscere. Nella seconda parte verranno formalizzati tali 
concetti e si capirà meglio perché l’interazione e lo stato aggiungono una dimensione alla elaborazione. 
2.2.1 Mancanza di stato 
Sul fatto che la mancanza di stato sia veramente una mancanza certamente non saranno tutti d’accordo (“per computare 
non abbiamo bisogno di stato”). Cercheremo ora di vedere in maniera intuitiva perché questa sia realmente una pecca 
della LP mentre nella seconda parte approfondiremo tale questione con più precisione e daremo un significato più 
preciso alla frase sopra citata. 
Consideriamo il seguente esempio: 
contatore(0). 
incrementa :- contatore(X), retract(contatore(X)), assert(contatore(s(X))). 
valore(X) :- contatore(X). 
A tale programma poniamo i seguenti goal: 
:- value(Y). 
 yes, Y/0 
:- incrementa. 
 yes 
:- value(Y). 
 yes, Y/s(0) 
Lo stesso predicato (value(Y)) in interrogazioni diverse ha dato risposte diverse, cosa che è “illogica”. Questo perché 
allo stesso programma corrispondono più teorie logiche diverse non equivalenti. Nell’esempio il goal value(Y) è stato 
sottoposto la prima volta alla teoria: 
contatore(0). 
incrementa :- contatore(X), retract(contatore(X)), assert(contatore(s(X))). 
valore(X) :- contatore(X). 
e la seconda volta alla teoria: 
contatore(s(0)). 
incrementa :- contatore(X), retract(contatore(X)), assert(contatore(s(X))). 
valore(X) :- contatore(X). 
Consideriamo un altro esempio: 
lunghezza_lista(LISTA, N) :- assert(contatore(0)), lunghezza_lista(LISTA), contatore(N), 
retract(contatore(_)). 
Sitografia automatica

Non sei sicuro di avere citato tutte le fonti?
Evita il plagio! Grazie all'elenco dei link rilevati puoi controllare di aver fatto un buon lavoro

Preview dalla tesi:

Elaborazione e interazione in programmazione logica e ad oggetti

CONSULTA INTEGRALMENTE QUESTA TESI

La consultazione è esclusivamente in formato digitale .PDF

Acquista

Informazioni tesi

  Autore: Tiziano Moretti
  Tipo: Tesi di Laurea
  Anno: 1998-99
  Università: Università degli Studi di Bologna
  Facoltà: Ingegneria
  Corso: Ingegneria Informatica
  Relatore: Antonio Natali
  Lingua: Italiano
  Num. pagine: 233

FAQ

Per consultare la tesi è necessario essere registrati e acquistare la consultazione integrale del file, al costo di 29,89€.
Il pagamento può essere effettuato tramite carta di credito/carta prepagata, PayPal, bonifico bancario.
Confermato il pagamento si potrà consultare i file esclusivamente in formato .PDF accedendo alla propria Home Personale. Si potrà quindi procedere a salvare o stampare il file.
Maggiori informazioni
Ingiustamente snobbata durante le ricerche bibliografiche, una tesi di laurea si rivela decisamente utile:
  • perché affronta un singolo argomento in modo sintetico e specifico come altri testi non fanno;
  • perché è un lavoro originale che si basa su una ricerca bibliografica accurata;
  • perché, a differenza di altri materiali che puoi reperire online, una tesi di laurea è stata verificata da un docente universitario e dalla commissione in sede d'esame. La nostra redazione inoltre controlla prima della pubblicazione la completezza dei materiali e, dal 2009, anche l'originalità della tesi attraverso il software antiplagio Compilatio.net.
  • L'utilizzo della consultazione integrale della tesi da parte dell'Utente che ne acquista il diritto è da considerarsi esclusivamente privato.
  • Nel caso in cui l'Utente volesse pubblicare o citare una tesi presente nel database del sito www.tesionline.it deve ottenere autorizzazione scritta dall'Autore della tesi stessa, il quale è unico detentore dei diritti.
  • L'Utente è l'unico ed esclusivo responsabile del materiale di cui acquista il diritto alla consultazione. Si impegna a non divulgare a mezzo stampa, editoria in genere, televisione, radio, Internet e/o qualsiasi altro mezzo divulgativo esistente o che venisse inventato, il contenuto della tesi che consulta o stralci della medesima. Verrà perseguito legalmente nel caso di riproduzione totale e/o parziale su qualsiasi mezzo e/o su qualsiasi supporto, nel caso di divulgazione nonché nel caso di ricavo economico derivante dallo sfruttamento del diritto acquisito.
  • L'Utente è a conoscenza che l'importo da lui pagato per la consultazione integrale della tesi prescelta è ripartito, a partire dalla seconda consultazione assoluta nell'anno in corso, al 50% tra l'Autore/i della tesi e Tesionline Srl, la società titolare del sito www.tesionline.it.
L'obiettivo di Tesionline è quello di rendere accessibile a una platea il più possibile vasta il patrimonio di cultura e conoscenza contenuto nelle tesi.
Per raggiungerlo, è fondamentale superare la barriera rappresentata dalla lingua. Ecco perché cerchiamo persone disponibili ad effettuare la traduzione delle tesi pubblicate nel nostro sito.

Scopri come funziona »

DUBBI? Contattaci

Contatta la redazione a
[email protected]

Ci trovi su Skype (redazione_tesi)
dalle 9:00 alle 13:00

Oppure vieni a trovarci su

Parole chiave

elaborazione
interazione
programmazione ad oggetti
programmazione logica

Non hai trovato quello che cercavi?


Abbiamo più di 45.000 Tesi di Laurea: cerca nel nostro database

Oppure consulta la sezione dedicata ad appunti universitari selezionati e pubblicati dalla nostra redazione

Ottimizza la tua ricerca:

  • individua con precisione le parole chiave specifiche della tua ricerca
  • elimina i termini non significativi (aggettivi, articoli, avverbi...)
  • se non hai risultati amplia la ricerca con termini via via più generici (ad esempio da "anziano oncologico" a "paziente oncologico")
  • utilizza la ricerca avanzata
  • utilizza gli operatori booleani (and, or, "")

Idee per la tesi?

Scopri le migliori tesi scelte da noi sugli argomenti recenti


Come si scrive una tesi di laurea?


A quale cattedra chiedere la tesi? Quale sarà il docente più disponibile? Quale l'argomento più interessante per me? ...e quale quello più interessante per il mondo del lavoro?

Scarica gratuitamente la nostra guida "Come si scrive una tesi di laurea" e iscriviti alla newsletter per ricevere consigli e materiale utile.


La tesi l'ho già scritta,
ora cosa ne faccio?


La tua tesi ti ha aiutato ad ottenere quel sudato titolo di studio, ma può darti molto di più: ti differenzia dai tuoi colleghi universitari, mostra i tuoi interessi ed è un lavoro di ricerca unico, che può essere utile anche ad altri.

Il nostro consiglio è di non sprecare tutto questo lavoro:

È ora di pubblicare la tesi