Principles of Software Composition PSC - code ??? 72h (9 cfu) 2nd semester written + oral exam borrowed from Computer Science (Sw curriculum) Roberto Bruni http://www.di.unipi.it/~bruni 1
Objectives Programming paradigms (declarative, HO, concurrent, mobile, stochastic,…)
Mathematical models (concrete & abstract) (domains, lambda-calculus, LTS, SOS, DTMC, CTMC, …)
Understand (induction, recursion, equivalence, congruence, compose, …)
Experiment (design, validate, improve, …) 2
Analyse (compliance, correctness, verification, performance, …)
Learning outcomes Assign meaning to Programs Higher-Order Functional Features Nondeterminism, Concurrency and Mobility Temporal and Modal Logic Service orchestration Probability + Action + Nondeterminism From formal syntax to formal semantics Property specification and proof techniques Rigorous methods for reliable soft ware development (Sw Architect, Engineer, Developer) 3
Theses SOS rule formats for reversible languages Semantics preser ving code obfuscation Models for communicating transactions …
4