4/26/20151 Metodi formali nello sviluppo software a.a.2013/2014 Prof.Anna Labella
4/26/ Ripartiamo dagli automi Stati e transizioni etichettate Gli automi sono caratterizzati dal linguaggio che “accettano”
4/26/ L’algebra dei linguaggi Algebra di Boole Monoide rispetto alla concatenazione Iterazione
4/26/ L’algebra dei linguaggi
4/26/ L’algebra dei linguaggi
4/26/2015 6
7 Equivalenza di automi Accettare lo “stesso” linguaggio –Il linguaggio di uno può ridursi al linguaggio dell’altro usando le proprietà algebriche di P(A*)
4/26/ Sistemi reattivi Protocolli di comunicazione Sistemi operativi Dispositivi di comando e controllo
4/26/ Sincronia ed asincronia Comunicazione Osservabilità Non determinismo
4/26/ Sistemi di transizione Sistemi stato-transizione: una macchina astratta per la computazione Definizione Etichettatura Relazione con gli automi
4/26/ Sistema di transizione (etichettato) TS=( ,S, , S 0 ), dove – è un alfabeto finito non vuoto –S è un insieme (finito) non vuoto di stati – S S è la relazione di trsansizione, –S 0 S è l‘insieme degli stati inziali simile ad un automa finito nondeterministico, con molti stati iniziali ma senza stati finali simile ad un modello di Kripke etichettato: un sistema di mondi possibili con una nozione di accessibilità
4/26/ Un sistema di transizione genera parole (finite o infinite) w 0 w 1 w 2... sse ci sono stati s 0 s 1 s 2 s 3... t.c. s 0 S 0 e (s i,w i,s i+1 ) Uno stato è identificato con le possibilità che mette a disposizione Problemi con la terminazione ed il deadlock
4/26/ Esempio: un registratore 1. ={up, dn} 2. S={off, tape, memory, play} 3. ={(off,dn,tape), (tape,up,off), (tape,dn,memory), (memory,up,off), (memory,dn,play), (play,dn,tape), (play,up,off)} 4. S 0 ={off} off memorytapeplay dn up
4/26/ Sistemi di Transizione paralleli Parallel transition system T=(T 1,…,T n ) –each T i is a transition system –S i S j = interleaving semantics –on its private alphabet, each T i can make an independent move –synchronization is via common events example: power switch and camcorder mode
4/26/ Example T=(switch, camera) {pwr_fail, pwr_res} are private to camera synchronization alphabet {up,dn} how big is the state space? but_hi but_lo dn up off on dn, pwr_res up, pwr_fail memorytape play dn on switch camera dn
4/26/ The global transition system T associated with a parallel transition system (T 1,…,T n ) is defined as T=( , S, , S 0 ), where – = i –S= S 1 … S n –S 0 = S 1,0 … S n,0, and –((s 1,…,s n ),a,(s 1 ‘,…,s n ‘)) iff for all T i if a i, then ((s i ),a,(s i ‘)) i, and if a i, then s i =s i ‘.
4/26/ Finite State Automata Coffee machine A 1 : Coffee machine A 2 : Are the two machines ”the same”? 1kr tea coffee 1kr tea coffee 1kr