La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Specifiche Algebriche Gianna Reggio

Presentazioni simili


Presentazione sul tema: "Specifiche Algebriche Gianna Reggio"— Transcript della presentazione:

1 Specifiche Algebriche Gianna Reggio

2 Indice Introduzione Logica del primordine, many-sorted, parziale con uguaglianza –Segnatura many-sorted del primordine –Algebra many-sorted parziali del primordine –Formule –Interpretazione e validità

3 Specifiche 1 Il processo di sviluppo di un sistema software (o di una sua parte) consiste essenzialmente nel produrre una serie di elaborati (artifacts) che –descrivono tale sistema a diversi livelli di astrazione requisiti dal punto di vista dellutilizzatore del sistema progetto (design) di massima progetto (design) dettagliato pseudo codice... –descrivono particolari aspetti di tale sistema prestazioni (Quality Of Service) tolleranza ai guasti dominio su cui opera il sistema...

4 Specifiche 2 occorre produrre –descrizioni di (particolari aspetti) (parti di) sistemi software, dette specifiche oppure modelli –quale linguaggio/notazione utilizzare per tali descrizioni più comune: linguaggio naturale, magari con diagrammi/disegnini, completamente libero [informale] *abbastanza espressivo *non necessita di addestramento, *ambiguo *non adatto a manipolazioni per mezzo di strumenti informatici

5 Specifiche 3 diagrammi/testo aventi una forma molto precisa, ma il cui significato è presentato informalmente uusando il linguaggio naturale, es. UML, [semi-formale] *espressivo *necessita di istruzione, ma non di particolari consocenze teoriche *possibilmente ambiguo *adatto a manipolazioni a livello sintattico per mezzo di strumenti informatici notazione basate su una precisa teoria matematiche (es. logica del primordine) [formale] *poco espressivo *necessita di istruzione, e della consocenza della teoria sottostante *non ambiguo (corredato di semantica formale) *adatto a manipolazioni a livello del contenuto per mezzo di strumenti informatici

6 Metodo di specifica (formale) FormalModel ItemSpecification * sem * rationale * * Item gli elementi specificati (descritti) [programmi funzionali] FormalModel strutture matematiche che corispondono agli item specificati [funzioni I/O] rationale come i formal model corrispondono agli item [….] sem semantica delle specifiche (ogni specifica individua un insieme di formal models)

7 Esercizi Esercizio 0: elencate delle notazioni/tecniche di specifiche che avete utilizzato prima di ora, classificandole rispetto alla loro formalità ed agli item che considerano.

8 Specifiche logico-algebriche 1 interpretation 1 * m-over f-over 1 formulae * BasicSpecification prop: set(Formula) Formula Signature FormalModel Item rationale * * Specification * sem * * holds satisfies * sig 1 *

9 Specifiche logico-algebriche 2 Signature i formal models sono classificati rispetto alla loro struttura statica [funzioni classificate dal loro tipo] m-over collega un formal model con la signature che descrive la sua struttura interpretation collega una signature con tutti i formal model aventi tale struttura Formula descrizione di proprietà di interesse riguardanti i formal models f-over ogni formula è costruita su una signature holds\satisfies quando una formula vale su un formal model\ un formal model soddisfa una formula

10 Specifiche logico-algebriche 3 BasicSpecification –la forma più semplice di specifica logico- algebrico, esistono anche, per esempio, specifiche strutturate –consiste essenzialmente di una segnatura e di un insieme di formule, chiaramente su tale segnatura sem in questo caso la semantica è definita come linsieme dei modelli formali sulla segnatura della specifica che soddisfano tutte le formule della specifica stessa

11 In questo corso specifiche basate su una logica –many-sorted –del primordine –parziale –con uguaglianza Item –strutture dati –moduli funzionali –aspetti funzionali di programmi imperativi moduli imperativi (componenti) –dominio applicativo frequentemente inclusa come sottoparte in molte notazioni (anche semi-formali, es., UML)

12 Formal models Algebre many-sorted parziali con predicati –estensione di quelle viste ad Algebra classificate da segnature many-sorted del primordine (viste a logica??)

13 Segnatura many-sorted del primordine Una segnatura = (S,F,P) consiste di –un insieme S di nomi dei tipi, o sort –una famiglia F di simboli di funzioni, indiciata su S* S se f F s 1 …s n,s indicheremo f: s 1 … s n s –una famiglia P di simboli di predicati, indiciata su S* se p P s 1 …s n indicheremo p: s 1 … s n

14 Esempio: list segnatura per le liste di interi S = { int, list } F consiste di –0: int [zerario, costante] –S: int int –empty: list –push: int list list –pop: list list –top: list int P consiste di –isempty: list –isIn: int list Esercizio 1: definire lista aggiungendo a list la concatenazione di liste e loperazione che ritorna linsieme degli elementi di una lista

15 FINE Lezione 1 Lunedì 28 Ottobre 15-16


Scaricare ppt "Specifiche Algebriche Gianna Reggio"

Presentazioni simili


Annunci Google