55
Numerical Power Analysis Anna Achilli Diego Bellantuono

Numerical Power Analysis

  • Upload
    cloris

  • View
    66

  • Download
    0

Embed Size (px)

DESCRIPTION

Numerical Power Analysis. Anna Achilli Diego Bellantuono. Excursus. Introduzione alla NPA Classe di domini P(B,E) P(B,E) come reticolo completo: astrazione di Proprietà: ACC, Elementi Meet-Irriducible Combinazione con altri domini astratti - PowerPoint PPT Presentation

Citation preview

Page 1: Numerical Power Analysis

Numerical Power Analysis

Anna Achilli

Diego Bellantuono

Page 2: Numerical Power Analysis

2

Excursus

Introduzione alla NPA Classe di domini P(B,E) P(B,E) come reticolo completo: astrazione di Proprietà: ACC, Elementi Meet-Irriducible Combinazione con altri domini astratti Calcolo della semantica astratta e concreta in esempi

pratici Il problema di Collatz e sua risoluzione tramite l’NPA Programmi in linguaggio PCCP

Osservazioni conclusive.

)(B

Page 3: Numerical Power Analysis

3

Introduzione alla NPA

NPA è la Power Analysis di valori numerici interi o razionali. La Power Analysis è un strumento importante

per prevedere risultati statistici significativi in un determinato esperimento scientifico prima che l’esperimento sia effettuato

Come funziona la PA: E’ necessario avere in mente una ipotesi

alternativa a quella che si vuole dimostrare Utilizzata in particolare assieme ai metodi

statistici

Page 4: Numerical Power Analysis

4

Power Analisys: Esempio

Scopo: Effettuare un Sondaggio di Marketing Sia π ( chiamato parametro di interesse )la porzione

di persone favorevoli all’oggetto del sondaggio E’ interrogato un campione casuale di persone. Sia N

questo campione: generalmente N sarà un valore molto piccolo rispetto

alla popolazione in generale. Il calcolo delle persone interrogate è una statistica chiamata P.

Già prima di eseguire lo studio si sa che di una quantità chiamata errore di campionamento

La PA è utilizzata per rispondere a domande relative a velocità, semplicità, accuratezza ( dimensione del campione per minimizzare l’errore )

πP

Page 5: Numerical Power Analysis

5

Alternative alla PA: Intervalli di confidenza

In alternativa alla PA, esiste un approccio basato su intervalli di confidenza. se lo scopo è solo di illustrare i risultati è

sufficiente questa tecnica, se invece si vuole approfondire uno studio è

più utile la PA

Page 6: Numerical Power Analysis

6

Scopo: Costruire domini astratti

Progettare domini astratti per l’analisi delle potenze numeriche

Questi domini sono dimostrati corretti nel framework adjoint

dell’interpretazione astratta Il progettista di domini è facilitato a dimostrare la

correttezza e l‘ottimalità dell’analisi Altre proprietà rilevanti:

Possono avere infinite catene discendenti ma soddisfano l’ACC ( “Ascending Chain Condition” ) Non sono permesse infinite catene ascendenti Importante nell’analisi statica perché dimostra che

non ci possono essere cicli infiniti nella semantica astratta

Domini visti come reticoli con elementi meet-irriducible

Page 7: Numerical Power Analysis

7

Analisi

Consideriamo la nostra analisi come la soluzione di un sistema di equazioni di punti fissi associate alla semantica concreta del programma Ogni equazione è interpretata nel dominio astratto che

restituisce una trasformazione approssimata dell’invarianza del programma in ogni suo punto

Perché questa analisi sia effettiva La soluzione iterativa del sistema di equazioni approssimato

deve terminare. Condizione di terminazione raggiunta

Staticamente disegnando domini astratti senza catene ascendenti

Dinamicamente calcolando i punti fissi tramite operazioni di widening/narrowing per velocizzare la convergenza

Page 8: Numerical Power Analysis

8

Domini e proprietà

Questi domini sono ideati per scoprire proprietà del tipo:

menteautomatica edeterminat

sono dove

di proprietà

: proprietà

della gode che con

, di numerica potenza la è

, con , variabile la

,

,

c

n

c

k

c

ZNxx

i

k

EsempioPROBLEMA DI COLLATZ: applicando la NPA a questo problema è possibile individuare automaticamente delle proprietà

Page 9: Numerical Power Analysis

9

Campi di applicazioneCombinazione di domini

NPA è molto utile se combinata con altre tecniche di analisi di valori numerici Analisi di Congruenza di Granger, Interval Analysis La combinazione avviene tramite ad esempio

Prodotto ridottoProdotto ridotto Studiato per superare le limitazioni del prodotto diretto ( è il dominio

ottenuto dal prodotto cartesiano dei due domini astratti ) Mancanza di precisione perché manca l’interazione tra le

componenti Prodotto cartesiano + riduzione ( processo che trasforma una GC una

GI ) Prodotto di GrangerProdotto di Granger

Definisce due nuove operazioni sul prodotto cartesiano dei domini, che riducono rispettivamente ogni componente

Vantaggi Costruzione di analisi più sofisticate Riutilizzo di implementazioni esistenti

Page 10: Numerical Power Analysis

10

Campi di ApplicazioneProbabilistic Concurrent Constraint Program

NPA usata nell’analisi statica di linguaggi di programmazione probabilistica a scelta casuale

Posso usare NPA per approssimare la probabilità risultante in computazioni casuali Caso studio: programmi in linguaggio PCCP

razionali prodotti accurato modo in approssima NPA

frazione una di numerica potenza la è spesso

dove

àprobabilit con intermedi stati di traccia la è

finale stato

finale stato

p

pp

psps

PS

ii

ii

ii

,...,

1,0

00

Page 11: Numerical Power Analysis

11

Il dominio delle potenze numeriche

Consideriamo tipi numerici standard: Naturali, Interi, Razionali Identifichiamo gli elementi utili alla nostra analisi

come collezioni di insiemi ognuno dei quali contiene potenze numeriche di un particolare valore intero o razionale

POWERS-X odefiniscon si

esponentel' ,QΖ, base

XkkaxaEXBa

ZNXXEEB x

|:,

,,|)(

Page 12: Numerical Power Analysis

12

Il dominio concreto

Le variabili assumono valore in Z o Q, quindi i possibili valori che assumono durante l’esecuzione del programma appartengono al

è un reticolo booleano che rappresenta il dominio concreto dell’interpretazione Un reticolo booleano è un reticolo distributivo

complementato

)()( QZ al o

QZXZX ,,,0,,),( con

Page 13: Numerical Power Analysis

13

Classe di domini con X-Powers Introduciamo la classe di domini che include tutte le X-

Powers di valori interi o razionali

con la condizione che se allora In consideriamo all’inizio solo insiemi di potenze di

elementi atomici e poi assegnamo i risultati ottenuti alla stessa

Atomo esponenziale di A ( ) è il più piccolo elemento tale che con e e

a è atomico se allora con , , , In particolare quando e lavoriamo solo con

insiemi di potenze con valori maggiori di 1 e quindi possiamo estendere i risultati agli insiemi delle potenze di tutti i valori razionali

),( EBP

EXBaaBEBP X and |,),(

QB

ZEE

Xa

Xb

),( EBP

EX

QZNX ,,

kXX aa

0Nka

kba

QB

Ba Nk

ZEE

aa

Page 14: Numerical Power Analysis

14

Domino delle potenze degli interi

Dominio delle potenze degli interi

Page 15: Numerical Power Analysis

15

Analisi della Base

Introduciamo due domini astratti: con

formano RETICOLI COMPLETIRETICOLI COMPLETI: è un RETICOLO

Definire lub e glb è un reticolo COMPLETO

GI tra e Consideriamo domini EXPONENTIAL-CLOSED Proprietà: ACC e elementi MEET-IRRIDUCIBLE

è un’ASTRAZIONEASTRAZIONE DI è una MOORE – FAMILY

),( XBP ZNX ,

),( XBP

XBP ,

XBP ,

XBP ,

XBP ,

XBP ,

)(B

)(B

Page 16: Numerical Power Analysis

16

Fase 1:dimostrazione RETICOLO

Individuiamo Least Upper Bound - lub (e Greatest Lower Bound - glb)

Sia tale che con Consideriamo

Idea della dimostrazione: Caso

Visto che allora Quindi sappiamo che Dimostriamo che è contenuto nell’insieme con e

Nhk ,Bba ,

ZNX ,

altrimenti

se

B

dbaXhk

XX dba

),gcd(

hk bbaa ,

dba

hk bbaa ,),gcd( hkhk dba

XhkXX dba ),gcd(,

Xhkd ),gcd( Xc

XXX bac , Bc

Page 17: Numerical Power Analysis

17

Fase 1: dimostrazione RETICOLO

In altri termini Se , Sappiamo che d è atomico ( = ) e Quindi l’intersezione esiste

Per dimostrarlo considero tale che

con Ciò implica che

e quindi Ma al tempo stesso per le proprietà dell’intersezione

e quindi Possiamo concludere che cioè

XhkXXhk dcd ),gcd(),gcd(

dd dc

dba XhklcmXX dba ),(

Xe

XXXhk ecdba ),gcd(,

XXX cba ,

Bc

),gcd( hkde

XhkX de ),gcd( ),gcd( hkde),gcd( hkde

XhkX dc ),gcd(

Page 18: Numerical Power Analysis

18

Esempio 1: calcolo lub con B=Z

Consideriamo e Troviamo il lub=

Calcoliamo il gcd per definire k e h quindi quindi Allora e Usando la notazione del teorema per il calcolo del lub per cui

Lub =

612 53,, aZba 816 53 b

NN ba

6)12,6gcd( k da 532

db 5328)16,8gcd( h

2)8,6gcd( m

6da 8db

N24 53

Page 19: Numerical Power Analysis

19

Esempio 2: calcolo lub con B=Q e X={N,Z}

Consideriamo e

Calcoliamo k e h come gcd degli esponenti: quindi quindi Calcoliamo il gcd tra k e h m=gcd(4,6)=2 Allora il lub è:

8

42

8

4

5

32

5

54 p

X

r

2

2

22

5

32

12

63

12

6

5

32

5

54 q

4)8,4gcd( k

6)12,6gcd( h

2

3

5

32p

rpq

Page 20: Numerical Power Analysis

20

Domini Exponential-Closed

Finora abbiamo visto che è un reticolo ordinato per inclusione Consideriamo ora un tipo particolare di dominio chiamato

exponential-closed Tale assunzione è imposta dalla caratterizzazione di E:

consideriamo E come collezione di insiemi di interi o naturali In particolare E può essere visto come una astrazione

di

Questa generalizzazione permette di analizzare le potenze combinando con altri domini astratti

ma pone un problema che può essere superato introducendo questo tipo di domini

),( EBP

(Z) e )(N

),( XBP

Page 21: Numerical Power Analysis

21

Domini Exponential-Closed

Problema: Dati

Dove una funzione è UCO se è estensiva, monotona e idempotente

Un UCO identifica un’inserzione di Galois Se

ZNXEE

ENE

EE

X

ZN

zN

,|

Zucouco

e , con

astratti domini e

EZ

b

E kχ

NkE

Z

YX

con c

forma nella sia a che detto è non

Family,-Moore della ambitonell' quindi, e

che detto è non generale in

Zk o e

Page 22: Numerical Power Analysis

22

Domini Exponential-Closed

Se C è un reticolo completo allora è una Moore-Family di C ( ) se

Un dominio exponential-closed assicura che l’astrazione dell’esponente in un dominio E sia una Moore-Family ( e quindi una astrazione del )

Una Moore-Family è un dominio exponential-Una Moore-Family è un dominio exponential-closed se per ogni closed se per ogni

)(B

XE

niintersezio infinite con anche vale proprietà tale se

closed-lesponentia nteinfinitame è zWhYkχ

e

xE

xX EWXzXhkEY

|

,:,,

CX )(XM XSSX |glb

Page 23: Numerical Power Analysis

23

E: dominio exponential-closed Noi assumiamo che

Visto che

I domini così costruiti (con E che soddisfa ACC) non possono avere infinite catene ascedenti ( ma le possono avere infinite discedeti )

ZNXXEE x ,|)(uco

closed-lesponentia dominio un è E quindi perchè

closed-lesponentia dominio un è X allora

,),(

,

XhklcmhYkX

ZNX

Page 24: Numerical Power Analysis

24

Ascending Chain Condition (ACC)

Consideriamo un poset P: P soddisfa ACC se per ogni

Diamo ora una caratterizzazione degli elementi meet-irriducible di P(B,E).

ACCrispetta allora Se

P di elementi degli sequenza la Aumentando

)XP(B,ZNX

xxNk

xx

kk

n

,

...|

......

1

1

Page 25: Numerical Power Analysis

25

Elementi Meet-Irriducible

Sia C un reticolo con Mirr(C) è l’insieme degli elementi meet-irriducible in un reticolo C.

C è definito meet-generated dai suoi elementi meet-irriducible se e solo se C=M(Mirr(C))

Sia A un insieme e allora X è meet-irriducible in

yx

yx

PCP

o di come ottenuto essere

può non cioè y,P ox P che implica

P se eirriducibl-meet

chiama si P e

glb

glb

T

c

AX

E))),M(Mirr(P(BEBP

AMirrMA

AxAaA

),(

))((()(

0\|)(

Page 26: Numerical Power Analysis

26

P(B,E): Reticolo Completo Dimostriamo ora che P(B,E) con E dominio

esponential-closed è un reticolo completo. Per far ciò bisogna trovare una G.I. tra P(B,E) e il G.I. tra P(B,E) e il

powerset di Bpowerset di B

completi reticoliGI una è (B)γ,α,E),P(B, allora

sono (B) e E)P(B,

e

E YSia

1)

: in di GI

monotone con , e (B): Sia

closed-lesponentia nteinfinitame dominio un è E se oppure E Se

ZN

xx

xx

aa

aYExaY

xx

EBPBAdjunctionBEBPxx

xx

(B)P(B,E)

BEBPP(B,E)

,

|

.)3

)),(),(()(,,,),())(()2

))((

,)(),(:

Page 27: Numerical Power Analysis

27

P(B,E): astrazione di Finora abbiamo dimostrato che

sono reticoli completi. Osserviamo che è una astrazione di

cioè che è una Moore-Family del Una GI può essere caratterizzata nei termini di una Moore-Una GI può essere caratterizzata nei termini di una Moore-

FamilyFamily (Ward):

)(),(

)(

))(,,),,((

BEBP

B

P(B,E)BEBP

di astrazione una è

diFamily -Moore una ad

isomorfo è GI una è

),( EBP

(B) e ),( EBP

)(B),( EBP )(B

)(B

Page 28: Numerical Power Analysis

28

Operazioni astratte

Dopo aver descritto P(B,E) consideriamo il linguaggio di programmazione con operazioni aritmetiche standard su N o Q e ne definiamo l’interpretazione astratta

Queste operazioni sono corrette e in particolare

è un’operazione astratta che rappresenta una astrazione ottimale della corrispondente operazione concreta del )(B

Page 29: Numerical Power Analysis

29

Domini infinitamente exponential-closed

I domini conosciuti nell’ambito della NPA di interi o razionali sono infinitamente exponential-closed

Quindi sono utilizzabili per approssimare le proprietà dell’insieme esponente

1.1. Dominio di congruenza di Granger:Dominio di congruenza di Granger:

Consente di analizzare potenze numeriche nella forma mZ+n con n,m Z

2.2. Dominio di intervalli di Cousot:Dominio di intervalli di Cousot:

Utilizzato per analizzare la dimensione dell’insieme esponente in N o Z

Considereremo la restrizione a N:

Page 30: Numerical Power Analysis

30

C(Z), Int(Z), Int(N), P(Z,{N})

3.3. Dominio per NPA: P(B,E)Dominio per NPA: P(B,E) Per analizzare le proprietà dell’insieme esponente di

essere un power-set in P(Z,{N}) C(Z), Int(Z), P(Z, {N}) uco(Z) e Int(N) uco(N)

sono domini infinitamente exponential-closed sono cioè nella forma kX∩hX=zW

per infinite intersezioni Consideriamo alcuni esempi di intersezioni e lub nei

domini considerati per dimostrare che sono infinitamente exponential-closed

Page 31: Numerical Power Analysis

31

Esempio con E = Int(N)

Dati B=Z, E=Int(N) determiniamo l’intersezione:

Dove: e Calcoliamo i valori di k e h:

quindi quindi

Gli e-atomi di a e b sono uguali quindi l’intersezione esiste Possiamo trovare l’intersezione come:

Dove: 6N=2N 3N, Cioè c= e

15,445,12;10,220,4 hk

Page 32: Numerical Power Analysis

32

Esempio con E = C(Z)

Dati B=Q e E=C(Z), Trovare Si noti che Calcoliamo k e h:

quindi quindi Anche in questo caso i 2 e-atomi sono uguali perciò:

Perché = Concludendo e ( [ ] /6)

Page 33: Numerical Power Analysis

33

Esempio con E = Int(Z)

Dati B=Q, E=Int(Z) Troviamo Consideriamo gli elementi nella forma

Quindi

e Gli e-atomi di a e b sono pari a 2 Determiniamo il lub:

Perché

Page 34: Numerical Power Analysis

34

Programma per NPA con

Applichiamo i domini per le potenze numeriche all’analisi statica dei programmi tramite l’interpretazione astratta

Questo frammento di programma ci illustra l’analisi statica di potenze numeriche in

ZNP ,

ZNP ,

Page 35: Numerical Power Analysis

35

Semantica concreta e astratta

Semantica concreta S:

con π che indica un determinato punto del programma e rappresenta uno stato concreto

Vogliamo calcolare la semantica concreta del programma P al punto

è l’estensione point-wise alle funzioni dell’insieme unione

Page 36: Numerical Power Analysis

36

Soluzione del sistema

Semantica astratta

È il minimo punto fisso dell’equazione:

Otteniamo la soluzione in 3 passi:

Page 37: Numerical Power Analysis

37

Il problema di Collatz

Si presta bene ad essere usato dalla NPA

si può esprimere come iterazione della seguente funzione

dispari è n se

pari è n se

132)(n

nnS

Page 38: Numerical Power Analysis

38

Il grafo di Collatz

I risultati delle iterazioni possono essere rappresentati con un grafo chiamato grafo di Collatz della funzione S(n)

Page 39: Numerical Power Analysis

39

P termina sempre con 1

È facilmente osservabile che il risultato finale è sempre 1

Esempio: partiamo da 7E' dispari, quindi faccio 3x7+1=22.Pari, 22:2=11.Dispari, 11x3+1=34.Pari, 34:2=17.Dispari, 17x3+1=52.Pari, 26.Pari, 13.Dispari, 40.Pari, 20.Pari, 10.Pari, 5.

Dispari, 16.Pari, 8.Pari, 4.Pari, 2.Pari, 1.Da questo punto in poi : 4,2,1,4,2,1,4,2,1.....

Page 40: Numerical Power Analysis

40

Formalizziamo

Ciò equivale a dire che

è una tripla di Hoare valida, con: c può essere ogni potenza di 2

Cioè il programma P termina con n=1 ogni qual volta

Consideriamo le seguenti operazioni astratte:

Page 41: Numerical Power Analysis

41

Calcolo della semantica astratta

La semantica astratta per il programma P al punto

Quindi se con Allora è un punto fisso dell’equazione

Page 42: Numerical Power Analysis

42

Analisi statica di PCCP casuali

La NPA dei razionali è adatta ad approssimare la probabilità dei programmi casuali Gli oggetti astratti in si prestano ad

approssimare le componenti di probabilità delle computazioni riguardanti scelte casuali

Inoltre il dominio può caratterizzare le proprietà degli esponenti della probabilità elaborata

Consideriamo l’operazione prodotto astratto con

EQP N,

EN

),gcd(,),(, hkgdbaEE NIntNNN

Page 43: Numerical Power Analysis

43

Linguaggio PCCP

Per modellare questa situazione come un programma di analisi statica consideriamo una versione probabilistica del calcolo versione probabilistica del calcolo constraint concorrente (PCCP)constraint concorrente (PCCP)

PCCP si basa sul paradigma ask-tell che fa riferimento alla nozione di bloking-ask Un processo è sospeso quando lo store non

comporta l’ask-constraint e rimane sospeso fino a quando ciò accade

Page 44: Numerical Power Analysis

44

Sintassi PCCP

Basata sulla nozione di constraint system C Reticolo algebrico completo

C= insieme di constraint = relazione d’implicazione che ordina C = lub True= bottom di C False= top di C

Un programma PCCP chiamato P è un oggetto nella forma D.A D= insieme di dichiarazioni di procedure nella forma p(x) A= agente PCCP

Page 45: Numerical Power Analysis

45

Sintassi agenti PCCP

Page 46: Numerical Power Analysis

46

Semantica PCCP

Semantica operazionale Sistema di transizioni + probabilità (per ogni transizione)

Significato operazionale del costrutto scelta probabilistica Controlla se i constranit ci sono implicati nello store Normalizza le distribuzioni di probabilità considerando solo gli agenti

abilitati Ciò significa che abbiamo ridefinito le distribuzioni di probabilità

solo con agenti aventi probabilità diversa da 0 e somma delle probabilità pari a 1

Con =probabilità di transizione normalizzata

=somma su tutti gli agenti abilitati

Page 47: Numerical Power Analysis

47

Semantica: idea di base

Associare ad ogni agente una descrizione matematica del suo funzionamento computazionale

Spesso la computazione è influenzata dal funzionamento I/O

Ciò viene descritto da un insieme di constraint che rappresentano i possibili store finali dopo l’esecuzione di un agent

L’I/O è rappresentabile con la distribuzione di probabilità su un sistema constraint: Cioè su un insieme di coppie (c,p) dove

c= risultato p= probabilità della computazione risultante

Page 48: Numerical Power Analysis

48

Semantica e punti fissi Semantica

Ottenuta tramite applicazione iterativa dell’operatore di punto fisso (sull’insieme dell’interpretazione) partendo dall’interpretazione iniziale che assegna ad ogni agente l’insieme {true} Interpretazione: agenti → sottoinsieme di C (descrive i

risultati della computazione agente) Operatore di punto fisso

Con (per gli insiemi di constraint ) così definito:

Page 49: Numerical Power Analysis

49

Spazio vettoriale su C

Restrizione sintattica Consideriamo PCCP libero da sincronizzazioni Così ignoriamo gli aspetti relativi alla concorrenza che

richiedono strutture più complicate Distribuzione di probabilità

Rappresentata da vettori nello spazio vettoriale reale libero V(C) sul sistema constraint C

Spazio costruito come insieme di tutte le combinazioni lineari di constraint

O equivalentemente

Page 50: Numerical Power Analysis

50

Equazioni ricorsive su spazio vettoriale

Semantica di PCCP Costruita definendo il significato degli agenti tramite un

insieme di equazioni ricorsive su uno spazio vettoriale libero

Esempi Agente stopstop può solo produrre uno store vuoto con

probabilità pari a 1

Agente tell aggiunge sempre c allo store con probabilità 1

Page 51: Numerical Power Analysis

51

Semantica relazionale

Semantica relazionale I/O di un programma P

Dove Constraint c= = lub dei constraint prodotti da ogni

agente Ai

Probabilità p= = prodotto delle probabilità associate ad ogni constraint

Semantica astratta su GI )(,,,, QNQP

Page 52: Numerical Power Analysis

52

Soundness

Processo di astrazione Introduce una perdita di informazioni L’importante è che ciò che mantengo nel concreto lo

sia anche nel’astratto SoundnessSoundness del dominio astratto importante allora esiste Tale che cioè Sia

quindi

#pp A

Page 53: Numerical Power Analysis

53

Utilizzo di NPA in PCCP

Consideriamo questo algoritmo di calcolo casuale in PCCP

Il programma P genera una sequenza infinita di numeri casuali con probabilità decrescente:

Questa informazione può essere ottenuta automaticamente tramite interpretazione astratta in Dominio concreto:

NQP ,

)( QN

Page 54: Numerical Power Analysis

54

Conclusioni

Abbiamo visto come progettare una famiglia di domini astratti, utili per l’analisi delle potenze numeriche

Questo studio consente di creare nuovi domini astratti per NPA considerando astrazioni sull’insieme esponente Si può generalizzare questa costruzione con le strutture

algebriche dell’insieme base B Gli anelli eucludei offrono strutture algebriche che

consentono la fattorizzazione dei loro elementi Perciò si possono trovare strutture algebriche astratte

per B tale che P(B,E) sia un’astrazione di Importante per generalizzare la NPA alle potenze di

altri oggetti non numerici

)(B

Page 55: Numerical Power Analysis

55

Bibliografia Isabella Mastroeni, Numerical Power Analysis, Univ. degli Studi

di Verona,2005 Isabella Mastroeni, Abstract Non-Interference -An Abstract

Interpretation-based approach to Secure Information Flow,Ph.D. Thesis, Univ. Degli Studi di Verona

Isabella Mastroeni, Algebric Power Analysis by Abstract Interpretation, Univ. Degli Sutdi di Verona, 2004, Kluwer Academic Publishers

A.Di Pierro and H.Wiklicky. An operational semantics for probabilistic concurrent constraint programming. In Proc. Of the 1998 IEEE Internat. Conf. On Computer Languages (ICCL ’98). IEEE Computer Society Press, Los Alamitos, Calif., 1998

Tino Cortesi, Manipulating Abstract Domains and Abstract Operations for Static Analysis of (Declarative) Programs, Univ. degli Studi di Venezia Ca’ Foscari

L'algoritmo di Collatz, Gianfranco Bo, http://utenti.quipo.it/base5/numeri/collaz.htm