Strumenti Utente

Strumenti Sito


magistraleinformatica:mpp:start

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
magistraleinformatica:mpp:start [10/09/2026 alle 07:58 (12 giorni fa)] – [Lectures (2nd part)] Roberto Brunimagistraleinformatica:mpp:start [15/09/2026 alle 13:06 (6 giorni fa)] (versione attuale) – [Lectures (1st part)] Roberto Bruni
Linea 1: Linea 1:
 ====== Models for Programming Paradigms ====== ====== Models for Programming Paradigms ======
  
-{{:magistraleinformatica:mpp:logo-van-gogh-like.png?150 | }}+{{:magistraleinformatica:mpp:immagine_codex_10_set_2026_10_36_38.png?150 | }}
  
 **MPP 2026/27 (0077A, 9 CFU)** **MPP 2026/27 (0077A, 9 CFU)**
Linea 93: Linea 93:
  
 ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^ ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^
-|  1 | Tue | 15/09 | 11:00-13:00 | PS4 | 01 - Introduction to the course |  |+|  1 | Tue | 15/09 | 11:00-13:00 | PS4 | {{ :magistraleinformatica:mpp:2026-09-15_-_mpp_-_01_-_intro.pdf |01 - Introduction to the course}} |  |
 |  2 | Wed | 16/09 | 11:00-13:00 | H | 02 - Preliminaries:\\ //from syntax to semantics, the role of formal semantics, SOS approach, small-step operational semantics, big-step operational semantics, denotational semantics, compositionality principle, normalisation, determinacy, consistency, equivalence, congruence// |  | |  2 | Wed | 16/09 | 11:00-13:00 | H | 02 - Preliminaries:\\ //from syntax to semantics, the role of formal semantics, SOS approach, small-step operational semantics, big-step operational semantics, denotational semantics, compositionality principle, normalisation, determinacy, consistency, equivalence, congruence// |  |
 |  3 | Fri | 18/09 | 14:00-16:00 | C1 | Exercises\\ \\ 03 - Unification:\\ //inference process, signatures, substitutions, most general than relation, unification problem, most general unifiers, unification algorithm//  |  | |  3 | Fri | 18/09 | 14:00-16:00 | C1 | Exercises\\ \\ 03 - Unification:\\ //inference process, signatures, substitutions, most general than relation, unification problem, most general unifiers, unification algorithm//  |  |
Linea 105: Linea 105:
 | 11 | Wed | 07/10 | 11:00-13:00 | H | 08c - Partial orders and fixpoints (Immediate Consequence Operator):\\ //McCarthy's 91 function, recursive definitions of partial functions as logical systems, immediate consequences operator, set of theorems as fixpoint//\\ \\ 09 - Denotational semantics:\\ //lambda-notation, free variables, capture-avoiding substitutions, alpha-conversion, beta rule, conditionals, denotational semantics of commands, fixpoint computation// |  | | 11 | Wed | 07/10 | 11:00-13:00 | H | 08c - Partial orders and fixpoints (Immediate Consequence Operator):\\ //McCarthy's 91 function, recursive definitions of partial functions as logical systems, immediate consequences operator, set of theorems as fixpoint//\\ \\ 09 - Denotational semantics:\\ //lambda-notation, free variables, capture-avoiding substitutions, alpha-conversion, beta rule, conditionals, denotational semantics of commands, fixpoint computation// |  |
 | 12 | Fri | 09/10 | 14:00-16:00 | C1 | 10 - Consistency:\\ //denotational equivalence, congruence, compositionality principle, consistency of commands, correctness, completeness// |  | | 12 | Fri | 09/10 | 14:00-16:00 | C1 | 10 - Consistency:\\ //denotational equivalence, congruence, compositionality principle, consistency of commands, correctness, completeness// |  |
-| 13 |     | Exercises:\\ //CPO, continuous functions, IMP// |  | +| 13 | Tue 13/10 11:00-13:00 PS4 | Exercises:\\ //CPO, continuous functions, IMP// |  | 
-| 14 |     | 11a - Haskell:\\ //an overview, Haskell ghci, basics, tuples, lists, list comprehension, guards, pattern matching, lambda, partial application, zip// | [[https://www.haskell.org/|Haskell]] | +| 14 | Wed 14/10 11:00-13:00 | 11a - Haskell:\\ //an overview, Haskell ghci, basics, tuples, lists, list comprehension, guards, pattern matching, lambda, partial application, zip// | [[https://www.haskell.org/|Haskell]] | 
-| 15 |     | 11b - Haskell GHCi:\\ //conditionals, cases, pattern matching, exercises, recursive definitions, let-in, where, map, filter, fixpoint operator, folds, application, function composition// | [[https://www.haskell.org/|Haskell]] | +| 15 | Fri 16/10 14:00-16:00 C1 | 11b - Haskell GHCi:\\ //conditionals, cases, pattern matching, exercises, recursive definitions, let-in, where, map, filter, fixpoint operator, folds, application, function composition// | [[https://www.haskell.org/|Haskell]] | 
-| 16 |     | 12a - HOFL:\\ //syntax, pre-terms, types, types judgements, type system, type checking, type inference, principal type, type preservation//\\ \\ Exercises:\\ //Haskell, type inference in HOFL// |  | +| 16 | Tue 20/10 11:00-13:00 PS4 | 12a - HOFL:\\ //syntax, pre-terms, types, types judgements, type system, type checking, type inference, principal type, type preservation//\\ \\ Exercises:\\ //Haskell, type inference in HOFL// |  | 
-| 17 |     | 12b - HOFL:\\ //canonical forms, operational semantics, lazy vs eager evaluation//\\ \\ Exercises:\\ //HOFL, typing, operational semantics// |  | +| 17 | Wed 21/10 11:00-13:00 | 12b - HOFL:\\ //canonical forms, operational semantics, lazy vs eager evaluation//\\ \\ Exercises:\\ //HOFL, typing, operational semantics// |  | 
-| 18 |     | 13a - Domain theory:\\ //Integers with bottom, cartesian product, projections, switching lemma, functional domains, lifting, let notation//\\ \\ Exercises:\\ //domains, HOFL denotational semantics// |  | +| 18 | Fri 23/10 14:00-16:00 C1 | 13a - Domain theory:\\ //Integers with bottom, cartesian product, projections, switching lemma, functional domains, lifting, let notation//\\ \\ Exercises:\\ //domains, HOFL denotational semantics// |  | 
-| 19 |     | 13b - Lifted Domains:\\ //lifted domains, lifting operator, de-lifting//\\ \\ 14 - Denotational semantics of HOFL:\\ //definition and examples, type consistency, continuity theorems, apply, fix, curry, uncurry, substitution lemma, compositionality, only free variables matters, canonical terms are not bottom//\\ \\ Exercises:\\ //HOFL, typing, denotational semantics, domains// |  | +| 19 | Tue 27/10 11:00-13:00 PS4 | 13b - Lifted Domains:\\ //lifted domains, lifting operator, de-lifting//\\ \\ 14 - Denotational semantics of HOFL:\\ //definition and examples, type consistency, continuity theorems, apply, fix, curry, uncurry, substitution lemma, compositionality, only free variables matters, canonical terms are not bottom//\\ \\ Exercises:\\ //HOFL, typing, denotational semantics, domains// |  | 
-| 20 |     | 14 - Denotational semantics of HOFL (ctd.):\\ //continuity theorems, fix, curry, uncurry, substitution lemma, compositionality, only free variables matters, canonical terms are not bottom//\\ \\ 15 - Consistency of HOFL:\\ //Counterexample to completeness, correctness of the operational semantics, operational convergence, denotational convergence, operational convergence implies denotational convergence (and vice versa), operational and denotational equivalence, correspondence for type int, unlifted semantics, lifted vs unlifted semantics// |  |+| 20 | Wed 28/10 11:00-13:00 | 14 - Denotational semantics of HOFL (ctd.):\\ //continuity theorems, fix, curry, uncurry, substitution lemma, compositionality, only free variables matters, canonical terms are not bottom//\\ \\ 15 - Consistency of HOFL:\\ //Counterexample to completeness, correctness of the operational semantics, operational convergence, denotational convergence, operational convergence implies denotational convergence (and vice versa), operational and denotational equivalence, correspondence for type int, unlifted semantics, lifted vs unlifted semantics// |  |
  
 ---- ----
Linea 123: Linea 123:
  
 ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^ ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^
-| 21 |     | {{ :magistraleinformatica:mpp:2025-11-06_-_15_-_consistency_hofl.pdf |15 - Consistency of HOFL (ctd.)}}:\\ //unlifted semantics, lifted vs unlifted semantics//\\ \\ Exercises:\\ //HOFL//\\ \\ {{ :magistraleinformatica:mpp:2025-11-07_-_16a_-_erlang.pdf |16a - Erlang}}:\\ //an overview, erl, numbers, atoms, tuples, lists, terms, variables, term comparison, pattern matching, list comprehension, modules, functions, guards, higher order, recursion, pids, spawn, self, send, receive, examples//  | [[http://www.erlang.org/|Erlang]] | +| 21 | Fri 30/10 14:00-16:00 | C1 | 15 - Consistency of HOFL (ctd.):\\ //unlifted semantics, lifted vs unlifted semantics//\\ \\ Exercises:\\ //HOFL//\\ \\ 16a - Erlang:\\ //an overview, erl, numbers, atoms, tuples, lists, terms, variables, term comparison, pattern matching, list comprehension, modules, functions, guards, higher order, recursion, pids, spawn, self, send, receive, examples//  | [[http://www.erlang.org/|Erlang]] | 
-| 22 |  |  |  |  | {{ :magistraleinformatica:mpp:2025-11-11_-_16b_-_google_go.pdf |16b - GoogleGo}}:\\ //an overview, playground, Go principles, variable declaration, type conversion, multiple assignments, type inference, imports, packages and public names, named return values, naked return, multiple results, conditionals and loops, pointers, struct, receiver arguments and methods, interfaces, goroutines, bidirectional channels, channel types, send, receive, asynchronous communication with buffering, close, select, communicating communication means, range, handling multiple senders, concurrent prime sieve// | [[http://golang.org/|Google Go]] | +| 22 |  |  |  |  | 16b - GoogleGo:\\ //an overview, playground, Go principles, variable declaration, type conversion, multiple assignments, type inference, imports, packages and public names, named return values, naked return, multiple results, conditionals and loops, pointers, struct, receiver arguments and methods, interfaces, goroutines, bidirectional channels, channel types, send, receive, asynchronous communication with buffering, close, select, communicating communication means, range, handling multiple senders, concurrent prime sieve// | [[http://golang.org/|Google Go]] | 
-| 23 |  |  |  |  | {{ :magistraleinformatica:mpp:2025-11-13_-_17_-_ccs.pdf |17 - CCS}}:\\ //Introduction to concurrency, Syntax, operational semantics, value passing, modelling imperative programs with CCS// |  | +| 23 |  |  |  |  | 17 - CCS:\\ //Introduction to concurrency, Syntax, operational semantics, value passing, modelling imperative programs with CCS// |  | 
-| 24 |  |  |  |  | {{ :magistraleinformatica:mpp:2025-11-14_-_18a_-_towards_bisimulation.pdf |18a - Towards bisimulation}}:\\ //abstract semantics, graph isomorphism, trace equivalence, bisimulation game// |  | +| 24 |  |  |  |  | 18a - Towards bisimulation:\\ //abstract semantics, graph isomorphism, trace equivalence, bisimulation game// |  | 
-| 25 |  |  |  |  | {{ :magistraleinformatica:mpp:2025-11-18_-_18b_-_ccs_bisimulation.pdf |18b - Bisimulation}}:\\ //strong bisimulation, strong bisimilarity, strong bisimilarity is an equivalence, strong bisimilarity is a bisimulation, strong bisimilarity is the coarsest strong bisimulation, finitely branching processes, strong bisimilarity as a fixpoint, Phi operator, Phi is monotone, Phi is continuous (on finitely branching processes), guarded processes// |  | +| 25 |  |  |  |  | 18b - Bisimulation:\\ //strong bisimulation, strong bisimilarity, strong bisimilarity is an equivalence, strong bisimilarity is a bisimulation, strong bisimilarity is the coarsest strong bisimulation, finitely branching processes, strong bisimilarity as a fixpoint, Phi operator, Phi is monotone, Phi is continuous (on finitely branching processes), guarded processes// |  | 
-| 26 |  |  |  |  | {{ :magistraleinformatica:mpp:2025-11-20_-_18c_-_more_bisimulation.pdf |18c - More on bisimulation}}:\\ //some properties of guarded processes, Knaster-Tarski's fixpoint theorem, strong bisimilarity is a congruence, some laws for strong bisimilarity//\\ \\ {{ :magistraleinformatica:mpp:2025-11-20_-_19_-_hml.pdf |19 - Hennessy-Milner logic}}:\\ //modalities, HML syntax, formula satisfaction, converse of a formula, HML equivalence// |  | +| 26 |  |  |  |  | 18c - More on bisimulation:\\ //some properties of guarded processes, Knaster-Tarski's fixpoint theorem, strong bisimilarity is a congruence, some laws for strong bisimilarity//\\ \\ 19 - Hennessy-Milner logic:\\ //modalities, HML syntax, formula satisfaction, converse of a formula, HML equivalence// |  | 
-| 27 |  |  |  |  | {{ :magistraleinformatica:mpp:2025-11-21_-_20_-_weak.pdf |20 - Weak Semantics}}:\\ //weak transitions, weak bisimulation, weak bisimilarity, weak bisimilarity is not  a congruence, weak observational congruence, Milner's tau-laws//\\ \\ {{ :magistraleinformatica:mpp:2025-11-21_-_21_-_ccs_at_work.pdf |21 - CCS at work}}:\\ //playing with CCS (using CAAL), modelling and verification of mutual exclusion algorithms with CCS and CAAL// |  | +| 27 |  |  |  |  | 20 - Weak Semantics:\\ //weak transitions, weak bisimulation, weak bisimilarity, weak bisimilarity is not  a congruence, weak observational congruence, Milner's tau-laws//\\ \\ 21 - CCS at work:\\ //playing with CCS (using CAAL), modelling and verification of mutual exclusion algorithms with CCS and CAAL// |  | 
-| 28 |  |  |  |  | CCS at work:\\ //playing with CCS (using CAAL), modelling and verification of mutual exclusion algorithms with CCS and CAAL//\\ \\ {{ :magistraleinformatica:mpp:caal-2025-26.zip |CAAL session}} (copy the text and paste it in the Edit panel) | [[http://caal.cs.aau.dk/|CAAL]] | +| 28 |  |  |  |  | CCS at work:\\ //playing with CCS (using CAAL), modelling and verification of mutual exclusion algorithms with CCS and CAAL//\\ \\ CAAL session (copy the text and paste it in the Edit panel) | [[http://caal.cs.aau.dk/|CAAL]] | 
-| 29 |  |  |  |  | {{ :magistraleinformatica:mpp:2025-11-27_-_22a_-_ltl_ctl.pdf |22a - Temporal logics}}:\\ //linear temporal logic (LTL), linear structures models, shifting, LTL satisfaction, equivalence of formulas, automata-like models, computational tree logic (CTL* and CTL), infinite trees, infinite paths, branching structure, CTL* satisfaction, equivalence of formulas, CTL formulas, expressiveness comparison//\\ \\ {{ :magistraleinformatica:mpp:2025-11-27_-_22b_-_mu_calculus.pdf |22b - Mu-calculus}}:\\ //mu-calculus syntax and semantics// |  | +| 29 |  |  |  |  | 22a - Temporal logics:\\ //linear temporal logic (LTL), linear structures models, shifting, LTL satisfaction, equivalence of formulas, automata-like models, computational tree logic (CTL* and CTL), infinite trees, infinite paths, branching structure, CTL* satisfaction, equivalence of formulas, CTL formulas, expressiveness comparison//\\ \\ 22b - Mu-calculus:\\ //mu-calculus syntax and semantics// |  | 
-| 30 |  |  |  |  | 22b - Mu-calculus:\\ //positive normal form, least and greatest fixpoints, invariant properties, possibly properties, mu-calculus with labels//\\ \\ **Prof. Bonchi**\\ KAT:\\ //Calculus of relations// |  |+| 30 |  |  |  |  | 22b - Mu-calculus:\\ //positive normal form, least and greatest fixpoints, invariant properties, possibly properties, mu-calculus with labels//\\ \\ KAT:\\ //Calculus of relations// |  |
 | 31 |  |  |  |  | KAT:\\ //Kleene Algebras with Tests// |  | | 31 |  |  |  |  | KAT:\\ //Kleene Algebras with Tests// |  |
 | 32 |  |  |  |  | KAT:\\ //Kleene Algebras with Tests// |  | | 32 |  |  |  |  | KAT:\\ //Kleene Algebras with Tests// |  |
magistraleinformatica/mpp/start.1789027135.txt.gz · Ultima modifica: da Roberto Bruni

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki