Programmazione funzionale in spazio logaritmico: una libreria di funzione aritmetiche


Autoria(s): Lodi, Michael
Contribuinte(s)

Dal Lago, Ugo

Data(s)

20/10/2010

Resumo

In questa Tesi forniamo una libreria di funzioni aritmetiche che operano in spazio logaritmico rispetto all'input. Partiamo con un'analisi dei campi in cui è necessario o conveniente porre dei limiti, in termini di spazio utilizzato, alla computazione di un determinato software. Vista la larga diffusione del Web, si ha a che fare con collezioni di dati enormi e che magari risiedono su server remoti: c'è quindi la necessità di scrivere programmi che operino su questi dati, pur non potendo questi dati entrare tutti insieme nella memoria di lavoro del programma stesso. In seguito studiamo le nozioni teoriche di Complessità, in particolare quelle legate allo spazio di calcolo, utilizzando un modello alternativo di Macchina di Turing: la Offline Turing Machine. Presentiamo quindi un nuovo “modello” di programmazione: la computazione bidirezionale, che riteniamo essere un buon modo di strutturare la computazione limitata in spazio. Forniamo poi una “guida al programmatore” per un linguaggio di recente introduzione, IntML, che permettere la realizzazione di programmi logspace mantenendo però il tradizionale stile di programmazione funzionale. Infine, per mostrare come IntML permetta concretamente di scrivere programmi limitati in spazio, realizziamo una libreria di funzioni aritmetiche che operano in spazio logaritmico. In particolare, mostriamo funzioni per calcolare divisione intera e resto sui naturali, e funzioni per confrontare, sommare e moltiplicare numeri espressi come parole binarie.

Formato

application/pdf

Identificador

http://amslaurea.unibo.it/1444/1/lodi_michael_tesi.pdf

Lodi, Michael (2010) Programmazione funzionale in spazio logaritmico: una libreria di funzione aritmetiche. [Laurea], Università di Bologna, Corso di Studio in Informatica [L-DM509] <http://amslaurea.unibo.it/view/cds/CDS0099/>

Relação

http://amslaurea.unibo.it/1444/

Direitos

info:eu-repo/semantics/openAccess

Palavras-Chave #programmazione funzionale, spazio sublineare, spazio logaritmico, complessità computazionale, IntML, computazione limitata in spazio #scuola :: 843899 :: Scienze #cds :: 0099 :: Informatica [L-DM509] #sessione :: seconda
Tipo

PeerReviewed