Strumenti Utente

Strumenti Sito


magistraleinformatica:psc: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 revisione Revisione precedente
Prossima revisione
Revisione precedente
magistraleinformatica:psc:start [20/05/2021 alle 20:38 (3 anni fa)]
Roberto Bruni [Lectures (2nd part)]
magistraleinformatica:psc:start [13/04/2024 alle 16:05 (5 giorni fa)] (versione attuale)
Roberto Bruni [Lectures (1st part)]
Linea 3: Linea 3:
 {{:magistraleinformatica:psc:psc.png?250 | }} {{:magistraleinformatica:psc:psc.png?250 | }}
  
-**PSC 2020/21 (375AA, 9 CFU)**+**PSC 2023/24 (375AA, 9 CFU)**
  
 Lecturer: **Roberto Bruni**\\ Lecturer: **Roberto Bruni**\\
-[[http://www.di.unipi.it/~bruni|web]] - [[mailto:bruni@di.unipi.it|email]] - [[https://teams.microsoft.com/l/team/19%3a8825cbfab4544a1789a382bf14027c14%40thread.tacv2/conversations?groupId=6eb3f4a5-bc31-419d-9965-778a70297e1d&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Microsoft Teams channel]]+[[http://www.di.unipi.it/~bruni|web]] - [[mailto:bruni@di.unipi.it|email]] - [[https://teams.microsoft.com/l/team/19%3AsDmxJu95LqR3omiYtTochKhmTMOcUJc61yv3GaPoDbI1%40thread.tacv2/conversations?groupId=ba0310d9-0944-4015-8a31-8e3bbeae73dc&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Microsoft Teams channel]]
  
-Office hours: **Tuesday 15:00-17:00 or by appointment**+Office hours: By appointment (preferably on **Tuesday 14:00-16:00**)
  
 ---- ----
Linea 60: Linea 60:
 ==== Exam ==== ==== Exam ====
  
-Normally, the evaluation would have been based on written and oral exams. +The evaluation will be solely based on oral exams, which can involve the assignment of written exercises.
- +
-Due to the covid-19 countermeasures, for the current period, the evaluation will be solely based on oral exams. As an alternative to the assignment of exercises during the oral exam, students can develop a small project before the exam (contact the teacher if interested).+
  
 Registration to exams (mandatory): [[https://esami.unipi.it/esami/|Exams registration system]] Registration to exams (mandatory): [[https://esami.unipi.it/esami/|Exams registration system]]
Linea 75: Linea 73:
 ==== Oral Exams: schedule ==== ==== Oral Exams: schedule ====
  
-^ Date ^^ Time ^ Name ^ Place ^ +See the channel **Exams** in the Microsoft Teams platform
-**weekday** | **DD/MM** | HH:MM | Student Name | Microsoft Teams |+
  
 ---- ----
Linea 82: Linea 79:
  
 ==== Announcements ==== ==== Announcements ====
- +  
-  * Due to the covid-19 emergency situation, there will be no **mid-term exams** +  * as the course starts:\\ Each student must subscribe the [[https://teams.microsoft.com/l/team/19%3AsDmxJu95LqR3omiYtTochKhmTMOcUJc61yv3GaPoDbI1%40thread.tacv2/conversations?groupId=ba0310d9-0944-4015-8a31-8e3bbeae73dc&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Microsoft Teams channel]] of the course and then fill the form [[https://forms.office.com/e/j1WFMAGeKt|Students information]] to provide the following contact data and info about her/his background
- +    - **first name** 
-  * as the course starts:\\ Each student must subscribe the [[https://teams.microsoft.com/l/team/19%3a8825cbfab4544a1789a382bf14027c14%40thread.tacv2/conversations?groupId=6eb3f4a5-bc31-419d-9965-778a70297e1d&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Microsoft Teams channel]] of the course and then send an email to the professor from his/her favourite email account with subject **PSC20-21** and the following data\\ (by doing so, the account will be included in the class mailing-list, where important announcements can be sent)+    - **last name** 
-    - **first name** and **last name** (please clarify which is which, to avoid ambiguities) +    - enrolment number (numero di matricola), optional 
-    - **enrolment number** (numero di matricola) +    - **email** 
-    - bachelor degree (**course of study** and **university**) +    - **bachelor degree** (course of study and university) 
-    - your favourite topics in computer science (optional)+    - **MSc course** (if Computer Science, specify which curriculum
 +  * then, fill the (optional) form about your familiarity with some of the subjects of the course: [[https://forms.office.com/e/Pv9yJ9Aqdj|Familiar subjects]]
  
 ---- ----
  
 ==== Lectures (1st part) ==== ==== Lectures (1st part) ====
- 
-[[https://teams.microsoft.com/l/team/19%3a8825cbfab4544a1789a382bf14027c14%40thread.tacv2/conversations?groupId=6eb3f4a5-bc31-419d-9965-778a70297e1d&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Virtual classroom]]: To join a lecture enter the course team on Microsoft Teams, go to the Lectures channel and click on the scheduled lecture. 
  
  
 ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^ ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^
-|  1 | Mon 15/02 | 16:00-18:00 | Teams | 01 - Introduction to the course | {{ :magistraleinformatica:psc:2021-02-15_-_01_-_intro.pdf |Lecture 01}} | +|  1 | Tue 20/02 | 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// | {{ :magistraleinformatica:psc:2024-02-20_-_01_-_intro.pdf |Lecture 01}}\\ {{ :magistraleinformatica:psc:2024-02-20_-_02_-_semantics.pdf |Lecture 02}} | 
-|  2 | Wed | 17/02 | 14:00-16:00 | Teams | 02 - Preliminaries:\\ //from syntax to semantics, the role of formal semantics, SOS approach, small-step operational semantics, big-step operational semantics// | {{ :magistraleinformatica:psc:2021-02-17_-_02_-_semantics.pdf |Lecture 02}} | +|  Thu 22/02 | 16:00-18:00 | M1 | 02 - Preliminaries (ctd):\\ //denotational semantics, compositionality principle, normalisation, determinacy, consistency, equivalence, congruence//\\ \\ 03 - Unification:\\ //inference process, signatures, substitutions, most general than relation, unification problem// | {{ :magistraleinformatica:psc:2024-02-20_-_02_-_semantics.pdf |Lecture 02}}\\ {{ :magistraleinformatica:psc:2024-02-22_-_03_-_unification.pdf |Lecture 03}} | 
-|  Fri 21/02 | 14:00-16:00 | Teams | 02 - Preliminaries (ctd.):\\ //denotational semantics, compositionality principle, normalisation, determinacy, consistency, equivalence, congruence, signatures//\\ \\ 03 - Unification:\\ //inference process, signatures, substitutions,unification problem, unification algorithm// | {{ :magistraleinformatica:psc:2021-02-19_-_03_-_unification.pdf |Lecture 03}} | +|  Fri 23/02 | 14:00-16:00 | C1 03 - Unification (ctd):\\ //unification problem, most general unifiers, unification algorithm//\\ \\ 04 - Logical systems:\\ //logical systems, derivations, theorems, logic programs, goal-oriented derivations//  | {{ :magistraleinformatica:psc:2024-02-22_-_03_-_unification.pdf |Lecture 03}}\\ {{ :magistraleinformatica:psc:2024-02-23_-_04_-_logic.pdf |Lecture 04}} | 
-|  Mon 22/02 | 16:00-18:00 | Teams | 04 - Logical systems:\\ //logical systems, derivations, logic programs, goal-oriented derivations// | {{ :magistraleinformatica:psc:2021-02-22_-_04_-_logic.pdf |Lecture 04}} | +|  Tue 27/02 | 16:00-18:00 | C1 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, determinacy of arithmetic expressions// | {{ :magistraleinformatica:psc:01_-_inference_-_2024.pdf |Exercises 01}}\\ {{ :magistraleinformatica:psc:2024-02-27_-_05a_-_induction.pdf |Lecture 05a}}\\ {{ :magistraleinformatica:psc:2024-02-29_-_05b_-_more_induction.pdf |Lecture 05b}} | 
-|  Wed 24/02 | 14:00-16:00 | Teams | 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// | {{ :magistraleinformatica:psc:2021-02-24_-_05a_-_induction.pdf |Lecture 05a}} +|  Thu 29/02 | 16:00-18:00 | X3 Exercises:\\ //induction//\\ \\ 05 - Induction (ctd.):\\ //many-sorted signatures, arithmetic and  boolean expressions, structural induction over many-sorted signatures, termination of boolean expressions, memories, update operation, operational semantics of commands// | {{ :magistraleinformatica:psc:2024-02-29_-_05b_-_more_induction.pdf |Lecture 05b}}\\  
-|  6 | Fri | 26/02 | 14:00-16:00 | Teams | 05 - Induction (ctd.):\\ //termination of arithmetic expressions//\\ \\  Exercises:\\ //unification, goal-oriented derivations//{{ :magistraleinformatica:psc:01_-_inference.pdf |Exercises 01}} | +|  Fri 01/03 | 14:00-16:00 | C1 | 05 - Induction (ctd.):\\ //divergence, rule for divergence, limits of structural induction, induction on derivations, rule induction, determinacy of commands// | {{ :magistraleinformatica:psc:2024-03-01_-_05c_-_rule_induction.pdf |Lecture 05c}} | 
-|  Mon 01/03 | 16:00-18:00 | Teams | 05 - Induction (ctd.):\\ //determinacy of arithmetic expressions, structural induction over many-sorted signatures, termination of boolean expressions, memories, update operation, operational semantics of commands, divergence// | {{ :magistraleinformatica:psc:2021-03-01_-_05b_-_more_induction.pdf |Lecture 05b}} | +|  Tue | 05/03 | 16:00-18:00 | C1 06 - Equivalence:\\ //operational equivalenceconcrete equivalencesparametric equivalencesequivalence and divergence//\\ \\ 07 Induction and recursion:\\ //well-founded recursionlexicographic precedence relationAckermann functiondenotational semantics of arithmetic expressions, fixpoint equations// | {{ :magistraleinformatica:psc:2024-03-05_-_06_-_equivalence.pdf |Lecture 06}}\\ {{ :magistraleinformatica:psc:2024-03-05_-_07_-_recursion.pdf |Lecture 07}} | 
-|  Wed 03/03 | 14:00-16:00 | Teams | 05 - Induction (ctd.):\\ //rule for divergence, limits of structural induction, induction on derivations, rule induction, determinacy of commands// | {{ :magistraleinformatica:psc:2021-03-03_-_05c_-_rule_induction.pdf |Lecture 05c}} | + Thu 07/03 | 16:00-18:00 | X3 | 07 - Induction and recursion (ctd):\\ //consistency of operational and denotational semantics for arithmetic expressions//\\ \\ 08 - Partial orders and fixpoints (ctd.):\\ //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// | {{ :magistraleinformatica:psc:2024-03-05_-_07_-_recursion.pdf |Lecture 07}}\\ {{ :magistraleinformatica:psc:2024-03-07_-_08a_-_cpo.pdf |Lecture 08a}}\\ {{ :magistraleinformatica:psc:2024-03-07_-_08b_-_kleene.pdf |Lecture 08b}}  
-|  Fri | 05/03 | 14:00-16:00 | Teams Exercises:\\ //inductionterminationdeterminacy, divergence//\\ \\ 06 Equivalence:\\ //operational equivalenceconcrete equivalencesparametric equivalencesequivalence and divergence// | {{ :magistraleinformatica:psc:2021-03-05_-_exercises_02.pdf |Exercises 02}}\\ \\ {{ :magistraleinformatica:psc:2021-03-05_-_06_-_equivalence.pdf |Lecture 06}} | + | Fri | 08/03 | 14:00-16:00 | C1 Exercises:\\ //induction, termination, determinacy, divergence//\\ \\ 08 - Partial orders and fixpoints (ctd.):\\ //continuity, Kleene's fixpoint theorem, McCarthy's 91 function// | {{ :magistraleinformatica:psc:02_-_properties_-_2024.pdf |Exercises 02}}\\ {{ :magistraleinformatica:psc:2024-03-07_-_08b_-_kleene.pdf |Lecture 08b}}\\  
-10 Mon 08/03 | 16:00-18:00 | Teams | 07 - Induction and recursion:\\ //well-founded recursion, denotational semantics of arithmetic expressions, consistency of operational and denotational semantics for arithmetic expressions, lexicographic precedence relation, Ackermann function, fixpoint equations// | {{ :magistraleinformatica:psc:2021-03-08_-_07_-_recursion.pdf |Lecture 07}} | +Tue | 12/03 | - | - | **Canceled** (Teacher's travel constraints) | - | 
-| 11 | Wed | 10/03 | 14:00-16:00 | Teams | Exercises:\\ //x++, arithmetic expressions with side-effects//\\ \\ 08 - Partial orders and fixpoints:\\ //partial orders, Hasse diagrams, chains, least element, minimal element, bottom element, upper bounds, least upper bound, chains, limits, complete partial orders, powerset completeness// | {{ :magistraleinformatica:psc:2021-03-10_-_08a_-_cpo.pdf |Lecture 08a}} | +| - | Thu | 14/03 | - | - | **Canceled** (Teacher's travel constraints) | - | 
-12 | Fri | 12/03 | 14:00-16:00 | Teams | 08 - Partial orders and fixpoints (ctd.):\\ //prefix independence, CPO of partial functions, monotonicity, continuity, Kleene's fixpoint theorem// | {{ :magistraleinformatica:psc:2021-03-12_-_08b_-_kleene.pdf |Lecture 08b}} | +| - | Fri | 15/03 | - | - | **Canceled** (Teacher's travel constraints) | - | 
-13 Mon | 15/03 | 16:00-18:00 | Teams | 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// | {{ :magistraleinformatica:psc:2021-03-15_-_08c_-_ico.pdf |Lecture 08c}}\\ \\ {{ :magistraleinformatica:psc:2021-03-15_-_09_-_denotational_imp.pdf |Lecture 09}} | +| 10 | Tue | 19/03 | 16:00-18:00 | C1 Exercises:\\ //well-founded recursion, posets, semantics//\\ \\ 08 - Partial orders and fixpoints (ctd.):\\ //recursive definitions of partial functions as logical systems, immediate consequences operator, set of theorems as fixpoint// | {{ :magistraleinformatica:psc:03_-_poset_-_2024.pdf |Exercises 03}}\\ {{ :magistraleinformatica:psc:2024-03-19_-_08c_-_ico.pdf |Lecture 08c}} | 
-14 Wed 17/03 | 14:00-16:00 | Teams | 09 - Denotational semantics (ctd.):\\ //denotational semantics of commands, fixpoint computation//\\ \\ 10 - Consistency:\\ //denotational equivalence, congruence, compositionality principle, consistency of commands, correctness, completeness//\\ \\ Exercises:\\ //well-founded recursion, posets, semantics// | {{ :magistraleinformatica:psc:2021-03-17_-_10_-_consistency_imp.pdf |Lecture 10}}\\ \\ {{ :magistraleinformatica:psc:2021-03-17_-_exercises_03.pdf |Exercises 03}} | +11 Thu 21/03 | 16:00-18:00 | X3 | 09 - Denotational semantics:\\ //lambda-notation, free variables, capture-avoiding substitutions, alpha-conversion, beta rule, conditionals, denotational semantics of commands, fixpoint computation//\\ \\ 10 - Consistency:\\ //denotational equivalence, congruence, compositionality principle, consistency of commands, correctness, completeness// | {{ :magistraleinformatica:psc:2024-03-19_-_09_-_denotational_imp.pdf |Lecture 09}}\\ {{ :magistraleinformatica:psc:2024-03-21_-_10_-_consistency_imp.pdf |Lecture 10}}  
-15 | Fri | 19/03 | 14:00-16:00 | Teams 10 Consistency (ctd.):\\ //completeness//\\ \\ Exercises:\\ //well-founded recursionrule induction//\\ \\ 11 - Haskell:\\ //an overview// | {{ :magistraleinformatica:psc:2021-03-19_-_11_-_haskell.pdf |Lecture 11}} | +12 | Fri | 22/03 | 14:00-16:00 | C1 11 Haskell:\\ //an overview//\\ \\ Haskell ghci:\\ //basicstuples, lists, list comprehension, guards, pattern matching, lambda, partial application, zip, exercises// | [[https://www.haskell.org/|Haskell]]\\ {{ :magistraleinformatica:psc:2024-03-22_-_11_-_haskell.pdf |Lecture 11}}\\ {{ :magistraleinformatica:psc:ghci-session1-2024.txt.zip |ghci session 01}} | 
-16 Mon 22/03 | 16:00-18:00 | Teams | Haskell ghci:\\ //basicslambdatupleslistslist comprehensionguardspattern matchingpartial application, recursive definitions, zip, exercises//\\ {{ :magistraleinformatica:psc:ghci-session1-2021.txt.zip |ghci session 01}} | [[https://www.haskell.org/|Haskell]] | +13 Tue 26/03 | 16:00-18:00 | C1 | Haskell ghci (ctd):\\ //recursive definitionstail recursionlet-inwheremapfilterfixpoint operator, folds, application, function composition, exercises// | [[https://www.haskell.org/|Haskell]]\\ {{ :magistraleinformatica:psc:ghci-session2-2024.txt.zip |ghci session 02}} 
-17 Wed 24/03 14:00-16:00 | Teams | Haskell ghci (ctd.):\\ //costrutto let-incostrutto wheremapfilterfixpoint operatorexercises//\\ {{ :magistraleinformatica:psc:ghci-session2-2021.txt.zip |ghci session 02}} | [[https://www.haskell.org/|Haskell]] +| 14 | Thu | 28/03 | 16:00-18:00 | X3 | Haskell ghci (ctd.):\\ //data types, type classes, recursive data structures, derived instances, exercises// | [[https://www.haskell.org/|Haskell]]\\ {{ :magistraleinformatica:psc:ghci-session3-2024.txt.zip |ghci session 03}} 
-18 Fri 26/03 14:00-16:00 | Teams Haskell ghci (ctd.):\\ //tail recursionfoldsapplicationfunction composition, data types, type classes, recursive data structures, derived instances, exercises//\\ {{ :magistraleinformatica:psc:ghci-session3-2021.txt.zip |ghci session 03}} | [[https://www.haskell.org/|Haskell]] +15 Thu 04/04 16:00-18:00 | X3 Exercises:\\ //Haskell//\\ \\ 12 - HOFL:\\ //syntax, pre-termstypestypes judgementstype systemtype checkingtype inference, principal type// | {{ :magistraleinformatica:psc:04_-_haskell_-_2024.pdf |Exercises 04}}\\ {{ :magistraleinformatica:psc:2024-04-04_-_12a_-_hofl_types.pdf |Lecture 12a}} | 
-19 Mon 29/03 16:00-18:00 | Teams Exercises:\\ //Haskell//\\ \\ 12 - HOFL:\\ //syntaxtype systemtype checking// | {{ :magistraleinformatica:psc:2021-03-29_-_12a_-_hofl_types.pdf |Lecture 12a}} | +| 16 | Fri | 05/04 | 14:00-16:00 | C1 | 12 - HOFL (ctd.):\\ //canonical forms, operational semantics, lazy vs eager evaluation//\\ \\ 13 - Domain theory:\\ //Integers with bottom, cartesian product, projections// | {{ :magistraleinformatica:psc:2024-04-04_-_12b_-_hofl_operational.pdf |Lecture 12b}}\\ {{ :magistraleinformatica:psc:2024-04-05_-_13a_-_cartesian_domains.pdf |Lecture 13a}} | 
-20 Wed 31/03 14:00-16:00 | Teams 12 - HOFL (ctd.):\\ //type inferenceprincipal typecanonical forms, operational semantics, lazy vs eager evaluation// Exercises 04\\ {{ :magistraleinformatica:psc:2021-03-31_-_12b_-_hofl_operational.pdf |Lecture 12b}} |+| - | Tue | 09/04 - | - | **Canceled** (Teacher's travel constraints) | - 
 +17 Thu 11/04 16:00-18:00 | X3 13 - Domain theory (ctd.):\\ //switching lemmafunctional domainsliftinglet notation//\\ \\ 14 - Denotational semantics of HOFL:\\ //definition and examples, type consistency// | {{ :magistraleinformatica:psc:2024-04-11_-_13b_-_functional_domains.pdf |Lecture 13b}}\\ {{ :magistraleinformatica:psc:2024-04-11_-_13c_-_continuity_theorems.pdf |Lecture 13c}}\\ {{ :magistraleinformatica:psc:2024-04-12_-_14_-_hofl_denotational.pdf |Lecture 14}} 
 +18 Fri 12/04 14:00-16:00 | C1 13 - Domain theory (ctd.):\\ //continuity theorems, apply, fix, curry, uncurry//\\ \\ 14 Denotational semantics of HOFL (ctd.):\\ //substitution lemmacompositionality and other properties//\\ \\ 15 - Consistency of HOFL:\\ //Counterexample to completenesscorrectness of the operational semantics// | {{ :magistraleinformatica:psc:2024-04-11_-_13c_-_continuity_theorems.pdf |Lecture 13c}}\\ {{ :magistraleinformatica:psc:2024-04-12_-_14_-_hofl_denotational.pdf |Lecture 14}}\\ {{ :magistraleinformatica:psc:2024-04-12_-_15_-_consistency_hofl.pdf |Lecture 15}} | 
 +19 Tue 16/04 16:00-18:00 | C1 15 Consistency of HOFL (ctd.):\\ //operational convergencedenotational convergenceoperational convergence implies denotational convergence (and vice versa), operational and denotational equivalence, correspondence for type int, unlifted semantics, lifted vs unlifted semantics//\\ \\ Exercises:\\ //HOFL, domains// | {{ :magistraleinformatica:psc:2024-04-12_-_15_-_consistency_hofl.pdf |Lecture 15}}\\ {{ :magistraleinformatica:psc:05_-_hofl_-_2024.pdf |Exercises 05}} | 
  
  
 ==== Lectures (2nd part) ==== ==== Lectures (2nd part) ====
- 
-[[https://teams.microsoft.com/l/team/19%3a8825cbfab4544a1789a382bf14027c14%40thread.tacv2/conversations?groupId=6eb3f4a5-bc31-419d-9965-778a70297e1d&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Virtual classroom]]: To join a lecture enter the course team on Microsoft Teams, go to the Lectures channel and click on the scheduled lecture. 
  
  
 ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^ ^ N ^ Date ^^ Time ^ Room ^ Lecture notes ^ Links ^
-21 Wed 07/04 14:00-16:00 Teams 13 - Domain theory:\\ //Integers with bottom, cartesian product, projections, switching lemma, functional domains// | {{ :magistraleinformatica:psc:2021-04-07_-_13a_-_cartesian_domains.pdf |Lecture 13a}}\\ {{ :magistraleinformatica:psc:2021-04-07_-_13b_-_functional_domains.pdf |Lecture 13b}} | +20     | 16 - Erlang:\\ //an overview//\\ \\ 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:\\ //Syntax, operational semantics, value passing//  Lecture 16\\ [[http://www.erlang.org/|Erlang]]\\ erl session\\ Lecture 17a | 
-| 22 | Fri | 09/04 | 14:00-16:00 | Teams | 13 Domain theory (ctd.):\\ //functional domains, lifting, continuity theorems, apply, fix, let notation// | {{ :magistraleinformatica:psc:2021-04-09_-_13c_-_continuity_theorems.pdf |Lecture 13c}} | +21     | 17 - CCS (ctd.):\\ //finitely branching processes, guarded processes//\\ \\ 18 - Bisimulation:\\ //abstract semantics, graph isomorphism, trace equivalence, bisimulation game, strong bisimulation// | Lecture 17b\\ Lecture 18a\\ Lecture 18b | 
-| 23 | Mon | 12/04 | 16:00-18:00 | Teams | 14 - Denotational semantics of HOFL:\\ //definition and examples, type consistency, substitution lemma, compositionality and other properties// | {{ :magistraleinformatica:psc:2021-04-12_-_14_-_hofl_denotational.pdf |Lecture 14}} | +22     | 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, Phi operator, Phi is monotone, Phi is continuous (on finitely branching processes), Knaster-Tarski's fixpoint theorem// | Lecture 18b\\ Lecture 18c | 
-| 24 | Wed | 14/04 | 14:00-16:00 | Teams | 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//\\ \\ Exercises:\\ //HOFL, domains// | {{ :magistraleinformatica:psc:2021-04-14_-_15_-_consistency_hofl.pdf |Lecture 15}}\\ {{ :magistraleinformatica:psc:2021-04-14_-_exercises_05.pdf |Exercises 05}} | +| 23 |  |  |  |  | 19 - Hennessy-Milner logic:\\ //modalities, HML syntax, formula satisfaction, converse of a formula, HML equivalence//\\ \\ 20 - Weak Semantics:\\ //weak transitions, weak bisimulationweak bisimilarity, weak bisimilarity is not  a congruence, weak observational congruence, Milner's tau-laws//\\ \\ 21 - CCS at work:\\ //modelling imperative programs with CCS, playing with CCS (using CAAL)// | Lecture 19\\ Lecture 20 
-| 25 | Fri | 16/04 | 14:00-16:00 | Teams | Exercises:\\ //HOFL//\\ \\ 16 - Erlang:\\ //an overview// | {{ :magistraleinformatica:psc:2021-04-16_-_16_-_erlang.pdf |Lecture 16}} | +24     | 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) | Lecture 21\\ [[http://caal.cs.aau.dk/|CAAL]]\\ CAAL session 
-| 26 | Mon | 19/04 | 16:00-18:00 | Teams | 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//\\ {{ :magistraleinformatica:psc:erl_2021.zip |erl session}} | [[http://www.erlang.org/|Erlang]] +25     | Exercises:\\ //Erlang, CCS//\\ \\ 22 - Temporal and modal logics:\\ //linear temporal logic (LTL), linear structures models, shifting, LTL satisfaction, equivalence of formulas, automata-like models// | Exercises 06\\ Lecture 22a | 
-| 27 | Wed | 21/04 | 14:00-16:00 | Teams | 17 - CCS:\\ //Syntax, operational semantics// | {{ :magistraleinformatica:psc:2021-04-21_-_17a_-_ccs.pdf |Lecture 17a}} +26     | 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// | Lecture 22a\\ Lecture 22b | 
-28 Fri 23/04 14:00-16:00 Teams | 17 - CCS:\\ //value passing, finitely branching processes, guarded processes (proofs about properties of guarded processes are optional)//\\ \\ 18 - Bisimulation:\\ //abstract semantics, graph isomorphism, trace equivalence, bisimulation game, strong bisimulation// | {{ :magistraleinformatica:psc:2021-04-23_-_17b_-_ccs_guarded.pdf |Lecture 17b}}\\ {{ :magistraleinformatica:psc:2021-04-23_-_18a_-_ccs_abstract.pdf |Lecture 18a}}\\ {{ :magistraleinformatica:psc:2021-04-23_-_18b_-_ccs_bisimulation.pdf |Lecture 18b}} +27     | 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 | Lecture 23\\ [[http://golang.org/|Google Go]]\\ go session 
-29 Mon 26/04 16:00-18:00 Teams | 18 - Bisimulation:\\ //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// | {{ :magistraleinformatica:psc:2021-04-26_-_18c_-_ccs_bis_as_fix.pdf |Lecture 18c}} | +28     | 24 - Pi-calculus:\\ //name mobility, free names, bound names, syntax and operational semantics, scope extrusion, early and late bisimilarities, weak semantics// | Lecture 24 | 
-| 30 | Wed | 28/04 | 14:00-16:00 | Teams | 18 - Bisimulation:\\ //strong bisimilarity as a fixpoint, Phi operator, Phi is monotone, Phi is continuous (on finitely branching processes), 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// | {{ :magistraleinformatica:psc:2021-04-28_-_19_-_hml.pdf |Lecture 19}}\\ {{ :magistraleinformatica:psc:2021-04-28_-_20_-_weak.pdf |Lecture 20}} | +29     | 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//   | Exercises 07\\ Lecture 25a | 
-| 31 | Fri | 30/04 | 14:00-16:00 | Teams | 20 - Weak Semantics:\\ //weak bisimilarity, weak bisimilarity is not  a congruence, weak observational congruence, Milner's tau-laws//\\ \\ 21 - CCS at work:\\ //modelling imperative programs with CCS, playing with CCS (using CAAL)//\\ {{ :magistraleinformatica:psc:buffers_in_caal_2021.zip |CAAL session 01}} (copy the text and paste it in the Edit panel) | {{ :magistraleinformatica:psc:2021-04-30_-_21_-_ccs_at_work.pdf |Lecture 21}}\\ [[http://caal.cs.aau.dk/|CAAL]] +30     | 25 - Measure theory and Markov chains (ctd):\\ //finite path probability, 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// | Lecture 25a\\ Lecture 25b\\ Lecture 26 | 
-32 Mon 03/05 16:00-18:00 Teams | 21 - CCS at work:\\ //modelling and verification of mutual exclusion algorithms with CCS and CAAL//\\ {{ :magistraleinformatica:psc:peterson_hyman_in_caal_2021.zip |CAAL session 02}} (copy the text and paste it in the Edit panel)  | [[http://caal.cs.aau.dk/|CAAL]] +| 31 |  |  |  |  | 27 - PEPA:\\ //motivation, basic ideas, PEPA workflow, PEPA syntax, cooperation combinator, bounded capacity, apparent rate, PEPA operational semantics, performance analysis, reward structures// | Lecture 27\\ [[http://www.dcs.ed.ac.uk/pepa/|PEPA]] 
-| 33 | Wed | 05/05 | 14:00-16:00 | Teams | Exercises:\\ //CAAL, Erlang, CCS// | {{ :magistraleinformatica:psc:2021-05-05_-_exercises_06.pdf |Exercises 06}}\\ [[http://caal.cs.aau.dk/|CAAL]] +| 32 |  |  |  |  | Exercises:\\ //Markov chains, probabilistic systems, PEPA// | Exercises 08 | 
-34 Fri 07/05 14:00-16:00 Teams | Exercises:\\ //CCS//\\ \\ 22 - Temporal and modal logics:\\ //linear temporal logic (LTL), linear structures models, shifting, LTL satisfaction, equivalence of formulas, automata-like models// | {{ :magistraleinformatica:psc:2021-05-07_-_22a_-_ltl_ctl.pdf |Lecture 22a}} +| 33 |  |  |  |  | Mini-projects discussion |  |
-35 Mon 10/05 16:00-18:00 Teams | 22 - Temporal and modal logics:\\ //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:2021-05-10_-_22b_-_mu_calculus.pdf |Lecture 22b}} +
-36 Wed 12/05 14:00-16:00 Teams | 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\\ {{ :magistraleinformatica:psc:go-session1-2021.zip |go session 01}} | {{ :magistraleinformatica:psc:2021-05-12_-_23_-_google_go.pdf |Lecture 23}}\\ [[http://golang.org/|Google Go]] | +
-37 Fri 14/05 14:00-16:00 Teams GoogleGo playground:\\ range, handling multiple senders, concurrent prime sieve\\ {{ :magistraleinformatica:psc:go-session2-2021.zip |go session 02}}\\ \\ 24 - Pi-calculus:\\ //name mobility, free names, bound names, syntax and operational semantics, scope extrusion, early and late bisimilarities, weak semantics// | {{ :magistraleinformatica:psc:2021-05-14_-_24_-_pi_calculus.pdf |Lecture 24}} +
-38 Mon 17/05 16:00-18:00 Teams | 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, finite path probability, ergodic DTMC, steady state distribution//   | {{ :magistraleinformatica:psc:2021-05-17_-_exercises_07.pdf |Exercises 07}}\\ {{ :magistraleinformatica:psc:2021-05-17_-_25a_-_dtmc.pdf |Lecture 25a}} +
-39 Wed 19/05 14:00-16:00 Teams | 25 - Measure theory and Markov chains:\\ //negative exponential distribution, CTMC, embedded DTMC, infinitesimal generator matrix, CTMC stationary distribution// | {{ :magistraleinformatica:psc:2021-05-19_-_25b_-_ctmc.pdf |Lecture 25b}} | +
-| 40 | Fri | 21/05 | 14:00-16:00 | Teams | 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//\\ \\ 27 - PEPA:\\ //motivation, basic ideas, PEPA workflow, PEPA syntax, cooperation combinator, bounded capacity, apparent rate, PEPA operational semantics, performance analysis, reward structures//\\ \\ Exercises:\\ //Markov chains, probabilistic systems, PEPA// | {{ :magistraleinformatica:psc:2021-05-21_-_26_-_probabilistic_bisimilarities.pdf |Lecture 26}}\\ Lecture 27\\ [[http://www.dcs.ed.ac.uk/pepa/|PEPA]] |+
 | End |  |  |  |  |  |  | | End |  |  |  |  |  |  |
  
-==== Exam sessions ==== 
  
-^ Date ^^ Time ^ Room ^ Info ^  
-| Fri | 04/06 | 11:00 | Teams | Exam\\ [[https://esami.unipi.it/esami/|Exams registration system]]\\ The actual date of the oral exam will be agreed with the teacher | 
-| Fri | 25/06 | 11:00 | Teams | Exam\\ [[https://esami.unipi.it/esami/|Exams registration system]]\\ The actual date of the oral exam will be agreed with the teacher | 
-| Fri | 23/07 | 11:00 | Teams | Exam\\ [[https://esami.unipi.it/esami/|Exams registration system]]\\ The actual date of the oral exam will be agreed with the teacher | 
-| Fri | 03/09 | 11:00 | Teams | Exam\\ [[https://esami.unipi.it/esami/|Exams registration system]]\\ The actual date of the oral exam will be agreed with the teacher | 
-| ... | ... | ... | Teams | Exam\\ [[https://esami.unipi.it/esami/|Exams registration system]]\\ The actual date of the oral exam will be agreed with the teacher | 
-| ... | ... | ... | Teams | Exam\\ [[https://esami.unipi.it/esami/|Exams registration system]]\\ The actual date of the oral exam will be agreed with the teacher | 
- 
- 
----- 
  
 ==== Past courses ==== ==== Past courses ====
  
 +  * [[magistraleinformatica:psc:2022-23:|A.A. 2022/23]]
 +  * [[magistraleinformatica:psc:2021-22:|A.A. 2021/22]]
 +  * [[magistraleinformatica:psc:2020-21:|A.A. 2020/21]]
   * [[magistraleinformatica:psc:2019-20:|A.A. 2019/20]]   * [[magistraleinformatica:psc:2019-20:|A.A. 2019/20]]
   * [[magistraleinformatica:psc:2018-19:|A.A. 2018/19]]   * [[magistraleinformatica:psc:2018-19:|A.A. 2018/19]]
magistraleinformatica/psc/start.1621543138.txt.gz · Ultima modifica: 20/05/2021 alle 20:38 (3 anni fa) da Roberto Bruni