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 [07/09/2025 alle 11:09 (4 settimane fa)] – [Lectures (2nd part)] Roberto Brunimagistraleinformatica:mpp:start [02/10/2025 alle 12:36 (3 giorni fa)] (versione attuale) – [Lectures (1st part)] Roberto Bruni
Linea 1: Linea 1:
 ====== Models for Programming Paradigms ====== ====== Models for Programming Paradigms ======
  
-{{:magistraleinformatica:psc:psc.png?250 | }}+{{:magistraleinformatica:mpp:logo-van-gogh-like.png?150 | }}
  
 **MPP 2025/26 (0077A, 9 CFU)** **MPP 2025/26 (0077A, 9 CFU)**
Linea 92: Linea 92:
  
 ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^ ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^
-|  1 | Tue | 16/09 | 16:00-18:00 | C1 | 01 - Introduction to the course\\ \\ 02 - Preliminaries:\\ //from syntax to semantics, the role of formal semantics, SOS approach, small-step operational semantics, big-step operational semantics// |  | +|  1 | Tue | 16/09 | 16:00-18:00 | C1 | {{ :magistraleinformatica:mpp:2025-09-16_-_01_-_intro.pdf |01 - Introduction to the course}} |  | 
-|  Thu 18/09 | 09:00-11:00 | L1 | 02 - Preliminaries (ctd):\\ //denotational semantics, compositionality principle, normalisation, determinacy, consistency, equivalence, congruence//\\ \\ 03 - Unification:\\ //inference process, signatures, substitutions, most general than relation, unification problem// |  | +|  2 | Thu | 18/09 | 09:00-11:00 | L1 | {{ :magistraleinformatica:mpp:2025-09-18_-_02_-_semantics.pdf |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// |  | 
-|  Fri 19/09 | 16:00-18:00 | L1 03 - Unification (ctd):\\ //unification problemmost general unifiers, unification algorithm//\\ \\ 04 - Logical systems:\\ //logical systems, derivations, theorems, logic programs, goal-oriented derivations//  |  | +|  Fri 19/09 | 16:00-18:00 | L1 | Exercises\\ \\ {{ :magistraleinformatica:mpp:2025-09-19_-_03_-_unification.pdf |03 - Unification}}:\\ //inference process, signatures, substitutions, most general than relation, unification problem, most general unifiers, unification algorithm//  |  | 
-|      Exercises:\\ //unification, goal-oriented derivations//\\ \\ 05 - Induction:\\ //precedence relation, infinite descending chains, well-founded relations, well-founded induction, mathematical induction, proof of induction principle, structural induction, termination of arithmetic expressions// |  | +|  Tue 23/09 | 16:00-18:00 | C1 Exercises:\\ //unification, goal-oriented derivations//\\ \\ {{ :magistraleinformatica:mpp:2025-09-23_-_04_-_logic.pdf |04 - Logical systems}}:\\ //logical systems, derivations, theorems, logic programs, goal-oriented derivations// |  | 
-|      | Exercises:\\ //induction//\\ \\ 05 - Induction (ctd.):\\ //determinacy of arithmetic expressions, many-sorted signatures, arithmetic and  boolean expressions, structural induction over many-sorted signatures, termination of boolean expressions, memories, update operation, operational semantics of commands// |  | +|  Thu 25/09 09:00-11:00 L1 {{ :magistraleinformatica:mpp:2025-09-25_-_05a_-_induction.pdf |05 - Induction}}:\\ //precedence relation, infinite descending chains, well-founded relations, well-founded induction, mathematical induction, proof of induction principle, structural induction, termination of arithmetic expressions, determinacy of arithmetic expressions, many-sorted signatures, arithmetic and  boolean expressions, structural induction over many-sorted signatures, termination of boolean expressions, memories, update operation, operational semantics of commands// |  | 
-|      | 05 - Induction (ctd.):\\ //divergence, rule for divergence, limits of structural induction, induction on derivations, rule induction, determinacy of commands// |  | +|  Fri 26/09 16:00-18:00 L1 | Exercises:\\ //induction//\\ \\ {{ :magistraleinformatica:mpp:2025-09-26_-_05b_-_more_induction.pdf |05 - More induction}} (Structural Induction)://many-sorted signatures, arithmetic and  boolean expressions, structural induction over many-sorted signatures, termination of boolean expressions, memories, update operation, operational semantics of commands// |  | 
-|      | 06 - Equivalence:\\ //operational equivalence, concrete equivalences, parametric equivalences, equivalence and divergence//\\ \\ 07 - Induction and recursion:\\ //well-founded recursion, lexicographic precedence relation, Ackermann function, denotational semantics of arithmetic expressions, consistency of operational and denotational semantics for arithmetic expressions, fixpoint equations// |  | +|  Tue 30/09 16:00-18:00 C1 | Exercises:\\ //induction//\\ \\ {{ :magistraleinformatica:mpp:2025-09-30_-_05c_-_rule_induction.pdf |05 - More induction (Rule Induction)}}:\\ //divergence, rule for divergence, limits of structural induction, induction on derivations, rule induction, determinacy of commands// |  | 
-|      | 08 - Partial orders and fixpoints:\\ //partial orders, Hasse diagrams, chains, least element, minimal element, bottom element, upper bounds, least upper bound, limits, complete partial orders, powerset completeness, prefix independence, CPO of partial functions, monotonicity// |  | +|  Thu 02/10 09:00-11:00 L1 | {{ :magistraleinformatica:mpp:2025-10-02_-_06_-_equivalence.pdf |06 - Equivalence}}:\\ //operational equivalence, concrete equivalences, parametric equivalences, equivalence and divergence//\\ \\ {{ :magistraleinformatica:mpp:2025-10-02_-_07_-_recursion.pdf |07 - Induction and recursion}}:\\ //well-founded recursion, lexicographic precedence relation, Ackermann function, denotational semantics of arithmetic expressions, towards denotational semantics of commands// |  | 
-|  9 |  |  |  |  | Exercises:\\ //induction, termination, determinacy, divergence//\\ \\ 08 - Partial orders and fixpoints (ctd.):\\ //continuity, Kleene's fixpoint theorem, McCarthy's 91 function// |  | +|  Fri 03/10 16:00-18:00 L1 | 08 - Partial orders and fixpoints:\\ //consistency of operational and denotational semantics for arithmetic expressions, fixpoint equations, partial orders, Hasse diagrams, chains, least element, minimal element, bottom element, upper bounds, least upper bound, limits, complete partial orders, powerset completeness, prefix independence, CPO of partial functions, monotonicity//\\ \\ Exercises:\\ //induction, termination, determinacy, divergence// |  | 
-| 10 |  |  |  |  | 08 - Partial orders and fixpoints (ctd.):\\ //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// |  |+| 10 |  |  |  |  | 08 - Partial orders and fixpoints (ctd.):\\ //continuity, Kleene's fixpoint theorem, 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 |  |  |  |  | Exercises:\\ //posets//\\ \\ 10 - Consistency:\\ //denotational equivalence, congruence, compositionality principle, consistency of commands, correctness, completeness// |  | | 11 |  |  |  |  | Exercises:\\ //posets//\\ \\ 10 - Consistency:\\ //denotational equivalence, congruence, compositionality principle, consistency of commands, correctness, completeness// |  |
 | 12 |  |  |  |  | Exercises:\\ //well-founded recursion, posets, semantics//\\ \\ 11 - Haskell:\\ //an overview//\\ \\ Haskell ghci:\\ //basics, tuples, lists, list comprehension, guards, pattern matching, lambda, partial application, zip, exercises// |  | | 12 |  |  |  |  | Exercises:\\ //well-founded recursion, posets, semantics//\\ \\ 11 - Haskell:\\ //an overview//\\ \\ Haskell ghci:\\ //basics, tuples, lists, list comprehension, guards, pattern matching, lambda, partial application, zip, exercises// |  |
Linea 121: Linea 121:
  
 ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^ ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^
-| 20 |  |  |  |  | Exercises:\\ //HOFL, domains//\\ \\ 16 - Erlang:\\ //an overview// {{ :magistraleinformatica:psc:2025-04-10_-_16_-_erlang.pdf |Lecture 16}}\\ [[http://www.erlang.org/|Erlang]] +| 20 |  |  |  |  | Exercises:\\ //HOFL, domains//\\ \\ 16 - Erlang:\\ //an overview//  
-| 21 |  |  |  |  | Erlang 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//\\ \\ 17 - CCS:\\ //Introduction to concurrency//[[http://www.erlang.org/|Erlang]]\\ {{ :magistraleinformatica:psc:2025-04-15_-_16a_-_erlang_session.pdf |erl session}}\\ {{ :magistraleinformatica:psc:2025-04-15_-_17a_-_ccs.pdf |Lecture 17a}} +| 21 |  |  |  |  | Erlang 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//\\ \\ 17 - CCS:\\ //Introduction to concurrency// 
-| 22 |  |  |  |  | 17 - CCS (ctd.)\\ //Syntax, operational semantics, value passing, finitely branching processes, guarded processes// | {{ :magistraleinformatica:psc:2025-04-15_-_17a_-_ccs.pdf |Lecture 17a}}\\ {{ :magistraleinformatica:psc:2025-04-17_-_17b_-_ccs_guarded.pdf |Lecture 17b}} +| 22 |  |  |  |  | 17 - CCS (ctd.)\\ //Syntax, operational semantics, value passing, finitely branching processes, guarded processes// |  
-| 23 |  |  |  |  | 18 - Bisimulation:\\ //abstract semantics, graph isomorphism, trace equivalence, bisimulation game, strong bisimulation//{{ :magistraleinformatica:psc:2025-04-24_-_18a_-_ccs_abstract.pdf |Lecture 18a}}\\ {{ :magistraleinformatica:psc:2025-04-24_-_18b_-_ccs_bisimulation.pdf |Lecture 18b}} +| 23 |  |  |  |  | 18 - Bisimulation:\\ //abstract semantics, graph isomorphism, trace equivalence, bisimulation game, strong bisimulation// 
-| 24 |  |  |  |  | 18 - Bisimulation (ctd.):\\ //strong bisimilarity, strong bisimilarity is an equivalence, strong bisimilarity is a bisimulation, strong bisimilarity is the coarsest strong bisimulation, strong bisimilarity is a congruence, some laws for strong bisimilarity, strong bisimilarity as a fixpoint, strong bisimilarity as a fixpoint, Phi operator, Phi is monotone, Phi is continuous (on finitely branching processes)//{{ :magistraleinformatica:psc:2025-04-24_-_18b_-_ccs_bisimulation.pdf |Lecture 18b}}\\ {{ :magistraleinformatica:psc:2025-04-29_-_18c_-_ccs_bis_as_fix.pdf |Lecture 18c}} +| 24 |  |  |  |  | 18 - Bisimulation (ctd.):\\ //strong bisimilarity, strong bisimilarity is an equivalence, strong bisimilarity is a bisimulation, strong bisimilarity is the coarsest strong bisimulation, strong bisimilarity is a congruence, some laws for strong bisimilarity, strong bisimilarity as a fixpoint, strong bisimilarity as a fixpoint, Phi operator, Phi is monotone, Phi is continuous (on finitely branching processes)// 
-| 25 |  |  |  |  | 18 - Bisimulation (ctd.):\\ //Guarded processes (again, from Lecture 17), Knaster-Tarski's fixpoint theorem//\\ \\ 19 - Hennessy-Milner logic:\\ //modalities, HML syntax, formula satisfaction, converse of a formula, HML equivalence//\\ \\ 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:\\ //modelling imperative programs with CCS// | {{ :magistraleinformatica:psc:2025-04-29_-_18c_-_ccs_bis_as_fix.pdf |Lecture 18c}}\\ {{ :magistraleinformatica:psc:2025-05-06_-_19_-_hml.pdf |Lecture 19}}\\ {{ :magistraleinformatica:psc:2025-05-06_-_20_-_weak.pdf |Lecture 20}}\\ {{ :magistraleinformatica:psc:2025-05-06_-_21_-_ccs_at_work.pdf |Lecture 21}} +| 25 |  |  |  |  | 18 - Bisimulation (ctd.):\\ //Guarded processes (again, from Lecture 17), Knaster-Tarski's fixpoint theorem//\\ \\ 19 - Hennessy-Milner logic:\\ //modalities, HML syntax, formula satisfaction, converse of a formula, HML equivalence//\\ \\ 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:\\ //modelling imperative programs with CCS// |  
-| 26 |  |  |  |  | 21 - CCS at work (ctd.) :\\ //modelling imperative programs with CCS, 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) | {{ :magistraleinformatica:psc:2025-05-06_-_21_-_ccs_at_work.pdf |Lecture 21}}\\ [[http://caal.cs.aau.dk/|CAAL]]\\ {{ :magistraleinformatica:psc:caal-session1-2025.zip |CAAL session 1}} +| 26 |  |  |  |  | 21 - CCS at work (ctd.) :\\ //modelling imperative programs with CCS, 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) |  
-| 27 |  |  |  |  | Exercises:\\ //Erlang, CCS//\\ \\ 22 - Temporal and modal logics:\\ //linear temporal logic (LTL), linear structures models, shifting, LTL satisfaction, equivalence of formulas, automata-like models// | {{ :magistraleinformatica:psc:06_-_erlang_-_ccs-2025.pdf |Exercises 06}}\\ {{ :magistraleinformatica:psc:2025-05-09_-_22a_-_ltl_ctl.pdf |Lecture 22a}} +| 27 |  |  |  |  | Exercises:\\ //Erlang, CCS//\\ \\ 22 - Temporal and modal logics:\\ //linear temporal logic (LTL), linear structures models, shifting, LTL satisfaction, equivalence of formulas, automata-like models// |  
-| 28 |  |  |  |  | 22 - Temporal and modal logics (ctd.):\\ //computational tree logic (CTL* and CTL), infinite trees, infinite paths, branching structure, CTL* satisfaction, equivalence of formulas, CTL formulas, expressiveness comparison, mu-calculus, positive normal form, least and greatest fixpoints, invariant properties, possibly properties, mu-calculus with labels// | {{ :magistraleinformatica:psc:2025-05-09_-_22a_-_ltl_ctl.pdf |Lecture 22a}}\\ {{ :magistraleinformatica:psc:2025-05-13_-_22b_-_mu_calculus.pdf |Lecture 22b}} +| 28 |  |  |  |  | 22 - Temporal and modal logics (ctd.):\\ //computational tree logic (CTL* and CTL), infinite trees, infinite paths, branching structure, CTL* satisfaction, equivalence of formulas, CTL formulas, expressiveness comparison, mu-calculus, positive normal form, least and greatest fixpoints, invariant properties, possibly properties, mu-calculus with labels// |  
-| 29 |  |  |  |  | 23 - GoogleGo:\\ //an overview//\\ \\ GoogleGo 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// | {{ :magistraleinformatica:psc:2025-05-15_-_23_-_google_go.pdf |Lecture 23}}\\ [[http://golang.org/|Google Go]]\\ {{ :magistraleinformatica:psc:go-session-2025.zip |go session}} +| 29 |  |  |  |  | 23 - GoogleGo:\\ //an overview//\\ \\ GoogleGo 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// |  
-| 30 |  |  |  |  | 24 - Pi-calculus:\\ //name mobility, free names, bound names, syntax and operational semantics, scope extrusion, early and late bisimilarities, weak semantics// | {{ :magistraleinformatica:psc:2025-05-16_-_24_-_pi_calculus.pdf |Lecture 24}} +| 30 |  |  |  |  | 24 - Pi-calculus:\\ //name mobility, free names, bound names, syntax and operational semantics, scope extrusion, early and late bisimilarities, weak semantics// |  
-| 31 |  |  |  |  | Exercises:\\ //logics, GoogleGo, pi-calculus//\\ \\ 25 - Measure theory and Markov chains:\\ //probability space, random variables, stochastic processes, homogeneous Markov chains, DTMC, DTMC as matrices, DTMC as PTS, next state probability, ergodic DTMC, steady state distribution, finite path probability//{{ :magistraleinformatica:psc:07_-_logics_-_googlego_-_pi-2025.pdf |Exercises 07}}\\ {{ :magistraleinformatica:psc:2025-05-22_-_25a_-_dtmc.pdf |Lecture 25a}} +| 31 |  |  |  |  | Exercises:\\ //logics, GoogleGo, pi-calculus//\\ \\ 25 - Measure theory and Markov chains:\\ //probability space, random variables, stochastic processes, homogeneous Markov chains, DTMC, DTMC as matrices, DTMC as PTS, next state probability, ergodic DTMC, steady state distribution, finite path probability// 
-| 32 |  |  |  |  | 25 - Measure theory and Markov chains (ctd):\\ //negative exponential distribution, CTMC, embedded DTMC, infinitesimal generator matrix, CTMC stationary distribution//\\ \\ 26 - Probabilistic bisimilarities:\\ //bisimilarity revisited, reachability predicate, CTMC bisimilarity, DTMC bisimilarity, Markov chains with actions, probabilistic reactive systems, bisimilarity for reactive systems, Larsen-Skou logic// {{ :magistraleinformatica:psc:2025-05-23_-_25b_-_ctmc.pdf |Lecture 25b}}\\ {{ :magistraleinformatica:psc:2025-05-23_-_26_-_probabilistic_bisimilarities.pdf |Lecture 26}} +| 32 |  |  |  |  | 25 - Measure theory and Markov chains (ctd):\\ //negative exponential distribution, CTMC, embedded DTMC, infinitesimal generator matrix, CTMC stationary distribution//\\ \\ 26 - Probabilistic bisimilarities:\\ //bisimilarity revisited, reachability predicate, CTMC bisimilarity, DTMC bisimilarity, Markov chains with actions, probabilistic reactive systems, bisimilarity for reactive systems, Larsen-Skou logic//  
-| 33 |  |  |  |  | 27 - PEPA:\\ //motivation, basic ideas, PEPA workflow, PEPA syntax, cooperation combinator, bounded capacity, apparent rate, PEPA operational semantics, performance analysis, reward structures//{{ :magistraleinformatica:psc:2025-05-27_-_27_-_pepa.pdf |Lecture 27}}\\ [[http://www.dcs.ed.ac.uk/pepa/|PEPA]] +| 33 |  |  |  |  | 27 - PEPA:\\ //motivation, basic ideas, PEPA workflow, PEPA syntax, cooperation combinator, bounded capacity, apparent rate, PEPA operational semantics, performance analysis, reward structures// 
-| 34 |  |  |  |  | Exercises:\\ //Markov chains, probabilistic systems, PEPA// | {{ :magistraleinformatica:psc:08_-_probability_-_2025.pdf |Exercises 08}} |+| 34 |  |  |  |  | Exercises:\\ //Markov chains, probabilistic systems, PEPA// |  |
 | 35 |  |  |  |  | Exercises:\\ //Samples from exam exercises// |  | | 35 |  |  |  |  | Exercises:\\ //Samples from exam exercises// |  |
 | 36 |  |  |  |  | Mini-projects:\\ //discussion// |  | | 36 |  |  |  |  | Mini-projects:\\ //discussion// |  |
magistraleinformatica/mpp/start.1757243354.txt.gz · Ultima modifica: 07/09/2025 alle 11:09 (4 settimane fa) da Roberto Bruni

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki