On the Expressiveness of Infinite Behavior and Name Scoping in Process Calculi

Size: px
Start display at page:

Download "On the Expressiveness of Infinite Behavior and Name Scoping in Process Calculi"

Transcription

1 On the Expressiveness of Infinite Behavior and Name Scoping in Process Calculi Pablo Giambiagi (KTH, Sweden) Gerardo Schneider (IRISA/INRIA) Speaker: Frank D. Valencia (Uppsala Univ., Sweden) FOSSACS 04, Barcelona, March 2004 FOSSACS 04: Inf. Behaviour and Scoping p.1/34

2 Motivation: Process Calculi CCS is an important representative of process calculi FOSSACS 04: Inf. Behaviour and Scoping p.2/34

3 Motivation: Process Calculi CCS is an important representative of process calculi : Simplicity of its definition and techniques, Applicability to synchr. communication. Foundational ideas grown out from it. FOSSACS 04: Inf. Behaviour and Scoping p.2/34

4 Motivation: Process Calculi CCS is an important representative of process calculi : Simplicity of its definition and techniques, Applicability to synchr. communication. Foundational ideas grown out from it. This talk: CCS Variants wrt infinite behavior and name scoping. Variants exhibits interesting connections wrt Relative Expressiveness. Verification. FOSSACS 04: Inf. Behaviour and Scoping p.2/34

5 Motivation: Process Calculi CCS is an important representative of process calculi : Simplicity of its definition and techniques, Applicability to synchr. communication. Foundational ideas grown out from it. This talk: CCS Variants wrt infinite behavior and name scoping. Variants exhibits interesting connections wrt Relative Expressiveness. Verification. FOSSACS 04: Inf. Behaviour and Scoping p.2/34

6 Motivation: Scoping Variants Consider CCS construct with rule: REC FOSSACS 04: Inf. Behaviour and Scoping p.3/34

7 Motivation: Scoping Variants Consider CCS construct with rule: REC Does involve name -conversion? FOSSACS 04: Inf. Behaviour and Scoping p.3/34

8 Motivation: Scoping Variants Consider CCS construct with rule: REC Does involve name -conversion? Name Scoping: If yes, Static else Dynamic. FOSSACS 04: Inf. Behaviour and Scoping p.3/34

9 Motivation: Scoping Variants Consider CCS construct with rule: REC Does involve name -conversion? Name Scoping: If yes, Static else Dynamic. This affects not only semantics (e.g., expressiveness and verification. -equivalence), also FOSSACS 04: Inf. Behaviour and Scoping p.3/34

10 Motivation: Infinite Behaviour Ways of specifying infinite behaviour in process calculi: Parametric vs. Constant definitions 1. Finitely many constants 2. Finitely many definitions FOSSACS 04: Inf. Behaviour and Scoping p.4/34

11 Motivation: Infinite Behaviour Ways of specifying infinite behaviour in process calculi: Parametric vs. Constant definitions 1. Finitely many constants 2. Finitely many definitions Can we encode (2) into (1)? (Without Relabelling or Infinite Sums). FOSSACS 04: Inf. Behaviour and Scoping p.4/34

12 Motivation: Infinite Behaviour Ways of specifying infinite behaviour in process calculi: Parametric vs. Constant definitions 1. Finitely many constants 2. Finitely many definitions Can we encode (2) into (1)? (Without Relabelling or Infinite Sums). What about other constructions: Replication or Recursive Expressions? FOSSACS 04: Inf. Behaviour and Scoping p.4/34

13 Motivation: Infinite Behaviour Ways of specifying infinite behaviour in process calculi: Parametric vs. Constant definitions 1. Finitely many constants 2. Finitely many definitions Can we encode (2) into (1)? (Without Relabelling or Infinite Sums). What about other constructions: Replication or Recursive Expressions? In -calculus all forms coincide. What about less expressive calculi?. FOSSACS 04: Inf. Behaviour and Scoping p.4/34

14 Motivation and Contributions We discuss: Static vs Dynamic Scoping. Parametric vs. Constant definitions. Recursion vs Replication. FOSSACS 04: Inf. Behaviour and Scoping p.5/34

15 Motivation and Contributions We discuss: Static vs Dynamic Scoping. Parametric vs. Constant definitions. Recursion vs Replication....and show that these issues affect Expressiveness Decidability of Divergency. FOSSACS 04: Inf. Behaviour and Scoping p.5/34

16 Overview The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks FOSSACS 04: Inf. Behaviour and Scoping p.6/34

17 Overview The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks FOSSACS 04: Inf. Behaviour and Scoping p.6/34

18 The Finite Core: Syntax Given: A set of names A set of co-names A set of actions FOSSACS 04: Inf. Behaviour and Scoping p.7/34

19 The Finite Core: Syntax Given: A set of names A set of co-names A set of actions Processes specifying finite behaviour: FOSSACS 04: Inf. Behaviour and Scoping p.7/34

20 The Finite Core: Semantics SUM if RES if PAR PAR COM FOSSACS 04: Inf. Behaviour and Scoping p.8/34

21 Overview of the presentation The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks FOSSACS 04: Inf. Behaviour and Scoping p.9/34

22 Scoping: Example Consider with FOSSACS 04: Inf. Behaviour and Scoping p.10/34

23 Scoping: Example Consider with Consider the following rule: REC without name -conversion. FOSSACS 04: Inf. Behaviour and Scoping p.10/34

24 Scoping: Example Consider with Then, for the unfolding FOSSACS 04: Inf. Behaviour and Scoping p.10/34

25 Scoping: Example Consider with Then, for the unfolding FOSSACS 04: Inf. Behaviour and Scoping p.10/34

26 Scoping: Example Consider with Then, for the unfolding FOSSACS 04: Inf. Behaviour and Scoping p.10/34

27 Scoping: Example Consider with Then, for the unfolding Then may be executed. FOSSACS 04: Inf. Behaviour and Scoping p.10/34

28 Scoping: Example 2 Consider again with FOSSACS 04: Inf. Behaviour and Scoping p.11/34

29 Scoping: Example 2 Consider again with Consider now the following rule: REC but applying name -conversion when necessary FOSSACS 04: Inf. Behaviour and Scoping p.11/34

30 FOSSACS 04: Inf. Behaviour and Scoping p.11/34 Scoping: Example 2 with Consider again Then,

31 FOSSACS 04: Inf. Behaviour and Scoping p.11/34 Scoping: Example 2 with Consider again Then,

32 FOSSACS 04: Inf. Behaviour and Scoping p.11/34 Scoping: Example 2 with Consider again Then,

33 Scoping: Example 2 Consider again with Then, FOSSACS 04: Inf. Behaviour and Scoping p.11/34

34 Scoping: Example 2 Consider again with Then, Then will never be executed. FOSSACS 04: Inf. Behaviour and Scoping p.11/34

35 Static vs Dynamic Scoping If name occurrences get dynamically (i.e. during execution) captured under the scope of a restriction, we talk about dynamic scoping. Otherwise, static scoping. -conversion to avoid captures Otherwise dynamic scoping static scoping FOSSACS 04: Inf. Behaviour and Scoping p.12/34

36 Overview of the presentation The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks FOSSACS 04: Inf. Behaviour and Scoping p.13/34

37 Infinite Behaviour At least four constructions specifying infinite behaviour in CCS-like calculi: FOSSACS 04: Inf. Behaviour and Scoping p.14/34

38 Infinite Behaviour At least four constructions specifying infinite behaviour in CCS-like calculi: CCS p : Given by a finite set of parametric definitions book on. Basically, the variant in Milner s 99 -calculus. FOSSACS 04: Inf. Behaviour and Scoping p.14/34

39 Infinite Behaviour At least four constructions specifying infinite behaviour in CCS-like calculi: CCS p : CCS k : Like CCS p but using constant definitions. Essentially CCS (Milner 89) without relabelling nor infinite summations. FOSSACS 04: Inf. Behaviour and Scoping p.14/34

40 Infinite Behaviour At least four constructions specifying infinite behaviour in CCS-like calculi: CCS p : CCS k : CCS! : Given by replication!. This variant is presented, e.g., in works by Busi, Gabbrielli and Zavattaro [2003,2004]. FOSSACS 04: Inf. Behaviour and Scoping p.14/34

41 Infinite Behaviour At least four constructions specifying infinite behaviour in CCS-like calculi: CCS p : CCS k : CCS! :! CCS : Given by recursive expressions of the form as in Milner 89. We adopt, as in ECCS, static scoping of names. FOSSACS 04: Inf. Behaviour and Scoping p.14/34

42 Infinite Behaviour At least four constructions specifying infinite behaviour in CCS-like calculi: CCS p : CCS k : CCS! :! CCS : FOSSACS 04: Inf. Behaviour and Scoping p.14/34

43 Parametric Definitions: CCSp Syntax:., where FOSSACS 04: Inf. Behaviour and Scoping p.15/34

44 Parametric Definitions: CCSp Syntax:., where Semantics: def if CALL -conversion when necessary. name FOSSACS 04: Inf. Behaviour and Scoping p.15/34

45 Constant Definitions: CCS k Syntax: where FOSSACS 04: Inf. Behaviour and Scoping p.16/34

46 Constant Definitions: CCS k Syntax: where Semantics: CONS if def FOSSACS 04: Inf. Behaviour and Scoping p.16/34

47 Constant Definitions: CCS k Syntax: where Semantics (alternative): Use instead and REC without name -conversion. FOSSACS 04: Inf. Behaviour and Scoping p.16/34

48 Recursion Expressions: CCS Syntax: FOSSACS 04: Inf. Behaviour and Scoping p.17/34

49 Recursion Expressions: CCS Syntax: Semantics: REC with name -conversion when necessary. FOSSACS 04: Inf. Behaviour and Scoping p.17/34

50 Replication: CCS! Syntax:! FOSSACS 04: Inf. Behaviour and Scoping p.18/34

51 Replication: CCS! Syntax:! Semantics: REP!! FOSSACS 04: Inf. Behaviour and Scoping p.18/34

52 Overview of the presentation The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks FOSSACS 04: Inf. Behaviour and Scoping p.19/34

53 Expressiveness and Classification Criteria Let be weak bisimilarity. Expressiveness: CCS is as expressive as CCS iff for every there exists such that, FOSSACS 04: Inf. Behaviour and Scoping p.20/34

54 Expressiveness and Classification Criteria Let be weak bisimilarity. Expressiveness: CCS is as expressive as CCS iff for every there exists such that Divergence:, FOSSACS 04: Inf. Behaviour and Scoping p.20/34

55 Expressiveness and Classification Criteria Let be weak bisimilarity. Expressiveness: CCS is as expressive as CCS iff for every there exists such that Divergence: is divergent iff sequence, i.e., there exists an infinite., FOSSACS 04: Inf. Behaviour and Scoping p.20/34

56 Expressiveness and Classification Criteria Let be weak bisimilarity. Expressiveness: CCS is as expressive as CCS iff for every there exists such that Divergence: is divergent iff sequence We ll discuss:, i.e., there exists an infinite. 1. The relative expressiveness w.r.t. weak bisimilarity 2. The decidability of divergence, FOSSACS 04: Inf. Behaviour and Scoping p.20/34

57 Expressiveness Results Encodings: (weak) bisimulation preserving mappings FOSSACS 04: Inf. Behaviour and Scoping p.21/34

58 Expressiveness Results Encodings: (weak) bisimulation preserving mappings Encoding CCS p into CCS k Encoding CCS k into CCS p Encoding CCS into CCS! Encoding CCS! into CCS FOSSACS 04: Inf. Behaviour and Scoping p.21/34

59 Expressiveness Results Encodings: (weak) bisimulation preserving mappings Encoding CCS p into CCS k Encoding CCS k into CCS p Encoding CCS into CCS! Encoding CCS! into CCS FOSSACS 04: Inf. Behaviour and Scoping p.21/34

60 Encoding CCS p into CCS k. Idea: Given in CCS p, FOSSACS 04: Inf. Behaviour and Scoping p.22/34

61 Encoding CCS p into CCS k. Idea: Given in CCS p, Suppose For each call def uses that def and replace. may make, generate constant with. FOSSACS 04: Inf. Behaviour and Scoping p.22/34

62 Encoding CCS p into CCS k. Idea: Given in CCS p, Suppose For each call def uses that def and replace. may make, generate constant with Problem: Potentially infinite generation of constants!. FOSSACS 04: Inf. Behaviour and Scoping p.22/34

63 Encoding CCS p into CCS k. Idea: Given in CCS p, Suppose For each call def uses that def and replace. may make, generate constant with Problem: Potentially infinite generation of constants! - Due to name -conversion in CCS p, an infinite number of fresh names may be generated.. FOSSACS 04: Inf. Behaviour and Scoping p.22/34

64 Encoding CCS p into CCS k...nevertheless, Theorem: Let CCS p with set of definitions effectively construct and its set of constants. One can s.t., FOSSACS 04: Inf. Behaviour and Scoping p.23/34

65 Encoding CCS p into CCS k...nevertheless, Theorem: Let CCS p with set of definitions effectively construct and its set of constants. One can s.t., But CCS p can encode the perhaps most used kind of relabellings: The injective ones. FOSSACS 04: Inf. Behaviour and Scoping p.23/34

66 Encoding CCS p into CCS k...nevertheless, Theorem: Let CCS p with set of definitions effectively construct and its set of constants. One can s.t., But CCS p can encode the perhaps most used kind of relabellings: The injective ones. Corollary: Injective relabellings are derivable in CCS k FOSSACS 04: Inf. Behaviour and Scoping p.23/34

67 into CCS! Encoding CCS! Idea:! FOSSACS 04: Inf. Behaviour and Scoping p.24/34

68 Encoding CCS into CCS!! Idea:!... But the encoding does not work if we hadn t assumed in CCS. -conversion FOSSACS 04: Inf. Behaviour and Scoping p.24/34

69 Encoding CCS into CCS! : Example Let be the following CCS process: FOSSACS 04: Inf. Behaviour and Scoping p.25/34

70 Encoding CCS into CCS! : Example Let be the following CCS process: Then the corresponding encoding is:! FOSSACS 04: Inf. Behaviour and Scoping p.25/34

71 Encoding CCS into CCS! : Example Let be the following CCS process: Then the corresponding encoding is:! Clearly and are not strongly bisimilar. However, Theorem: For diverges.,. Moreover, diverges iff FOSSACS 04: Inf. Behaviour and Scoping p.25/34

72 Overview of the presentation The finite core Static vs Dynamic scoping Infinite behaviour Expressiveness Concluding Remarks FOSSACS 04: Inf. Behaviour and Scoping p.26/34

73 Conclusions CCS p CCS k Divergence: Undecidable CCS CCS! Divergence: Decidable Slight variations of lead to: 1. Static Scoping Replication. 2. Dynamic Scoping Param. Definitions. FOSSACS 04: Inf. Behaviour and Scoping p.27/34

74 Conclusions CCS p CCS k Divergence: Undecidable CCS CCS! Divergence: Decidable Slight variations of lead to: 1. Static Scoping Replication. 2. Dynamic Scoping Param. Definitions. Injective relabellings are redundant in CCS with constants. FOSSACS 04: Inf. Behaviour and Scoping p.27/34

75 Conclusions CCS p CCS k Divergence: Undecidable CCS CCS! Divergence: Decidable Slight variations of lead to: 1. Static Scoping Replication. 2. Dynamic Scoping Param. Definitions. Injective relabellings are redundant in CCS with constants. CCS with constants does not preserve -conversion. FOSSACS 04: Inf. Behaviour and Scoping p.27/34

76 Conclusions CCS p CCS k Divergence: Undecidable CCS CCS! Divergence: Decidable Slight variations of lead to: 1. Static Scoping Replication. 2. Dynamic Scoping Param. Definitions. Injective relabellings are redundant in CCS with constants. CCS with constants does not preserve -conversion. FOSSACS 04: Inf. Behaviour and Scoping p.27/34

77 Final Remarks CCS variant in Milner 99 uses parametric definitions with static scoping. CWB uses parametric definitions with dynamic scoping. FOSSACS 04: Inf. Behaviour and Scoping p.28/34

78 Final Remarks CCS variant in Milner 99 uses parametric definitions with static scoping. CWB uses parametric definitions with dynamic scoping. ECCS advocates the static scoping of names. CHOCS advocates for dynamic name scoping in the context of higher-order CCS. FOSSACS 04: Inf. Behaviour and Scoping p.28/34

79 Thanks! FOSSACS 04: Inf. Behaviour and Scoping p.29/34

80 Bisimilarity A relation : is a (strong) simulation if for all FOSSACS 04: Inf. Behaviour and Scoping p.30/34

81 Bisimilarity A relation : is a (strong) simulation if for all FOSSACS 04: Inf. Behaviour and Scoping p.30/34

82 Bisimilarity A relation : is a (strong) simulation if for all is a (strong) bisimulation if both (strong) simulations:. and its converse are FOSSACS 04: Inf. Behaviour and Scoping p.30/34

83 Bisimilarity is a weak simulation if for all A relation : is a weak bisimulation if both and its converse are weak simulations:. - ) is (where FOSSACS 04: Inf. Behaviour and Scoping p.30/34

84 Encoding CCS p into CCS k Idea: For each CCS p, let occurrence of with CCS k replacing in each For each definition definition def def, generate a constant FOSSACS 04: Inf. Behaviour and Scoping p.31/34

85 Encoding CCSk into CCSp with The encoding of into CCSp is a process associated set of definitions : The encoding where It satisfies It is an homomorphism over all other operators FOSSACS 04: Inf. Behaviour and Scoping p.32/34

86 Encoding CCS! into CCS The encoding! : It satisfies! It is an homomorphism over all other operators FOSSACS 04: Inf. Behaviour and Scoping p.33/34

87 Encoding CCS p into CCS k : Example Let FOSSACS 04: Inf. Behaviour and Scoping p.34/34

88 Encoding CCSp into CCSk: Example Let 1. FOSSACS 04: Inf. Behaviour and Scoping p.34/34

89 Encoding CCSp into CCSk: Example Let FOSSACS 04: Inf. Behaviour and Scoping p.34/34

90 Encoding CCSp into CCSk: Example Let FOSSACS 04: Inf. Behaviour and Scoping p.34/34

91 Encoding CCSp into CCSk: Example Let FOSSACS 04: Inf. Behaviour and Scoping p.34/34

92 Encoding CCSp into CCSk: Example Let FOSSACS 04: Inf. Behaviour and Scoping p.34/34

93 Encoding CCSp into CCSk: Example Let Remark: The generation of fresh names could continue forever! FOSSACS 04: Inf. Behaviour and Scoping p.34/34

On the Expressiveness of Polyadicity in Higher-Order Process Calculi

On the Expressiveness of Polyadicity in Higher-Order Process Calculi On the Expressiveness of Polyadicity in Higher-Order Process Calculi Ivan Lanese, Jorge A. Pérez, Davide Sangiorgi (Univ. di Bologna) Alan Schmitt (INRIA Grenoble - Rhône Alpes) ICTCS 09 Cremona, September

More information

Lecture Notes on Program Equivalence

Lecture Notes on Program Equivalence Lecture Notes on Program Equivalence 15-312: Foundations of Programming Languages Frank Pfenning Lecture 24 November 30, 2004 When are two programs equal? Without much reflection one might say that two

More information

Course on Probabilistic Methods in Concurrency. (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1

Course on Probabilistic Methods in Concurrency. (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1 Course on Probabilistic Methods in Concurrency (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1 The pi-calculus and the asynchronous pi-calculus. Catuscia Palamidessi INRIA

More information

Rule Formats for Nominal Modal Transition Systems

Rule Formats for Nominal Modal Transition Systems Rule Formats for Nominal Modal Transition Systems Anke Stüber Universitet Uppsala, Uppsala, Sweden anke.stuber@it.uu.se Abstract. Modal transition systems are specification languages that allow the expression

More information

Labelled Transition Systems For a Game Graph

Labelled Transition Systems For a Game Graph Labelled Transition Systems For a Game Graph Soren Lassen 1 Paul Blain Levy 2 1 Google, Inc. 2 University of Birmingham March 29, 2009 Soren Lassen, Paul Blain Levy ( Google, Inc., UniversityLTSs of Birmingham)

More information

Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen

Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen Harsh Beohar LF 265, harsh.beohar@uni-due.de Harsh Beohar Course Modelling of Concurrent Systems 1 Course handler

More information

Substitution in Structural Operational Semantics and value-passing process calculi

Substitution in Structural Operational Semantics and value-passing process calculi Substitution in Structural Operational Semantics and value-passing process calculi Sam Staton Computer Laboratory University of Cambridge Abstract Consider a process calculus that allows agents to communicate

More information

Foundations of AI. 9. Predicate Logic. Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution

Foundations of AI. 9. Predicate Logic. Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution Foundations of AI 9. Predicate Logic Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution Wolfram Burgard, Andreas Karwath, Bernhard Nebel, and Martin Riedmiller 09/1 Contents Motivation

More information

Specification and Analysis of Contracts Tutorial

Specification and Analysis of Contracts Tutorial Specification and Analysis of Contracts Tutorial Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo Gerardo Schneider (UiO) Specification and

More information

Elementary Recursive Function Theory

Elementary Recursive Function Theory Chapter 6 Elementary Recursive Function Theory 6.1 Acceptable Indexings In a previous Section, we have exhibited a specific indexing of the partial recursive functions by encoding the RAM programs. Using

More information

The Formal Semantics of Programming Languages An Introduction. Glynn Winskel. The MIT Press Cambridge, Massachusetts London, England

The Formal Semantics of Programming Languages An Introduction. Glynn Winskel. The MIT Press Cambridge, Massachusetts London, England The Formal Semantics of Programming Languages An Introduction Glynn Winskel The MIT Press Cambridge, Massachusetts London, England Series foreword Preface xiii xv 1 Basic set theory 1 1.1 Logical notation

More information

Modelling Downgrading in Information Flow Security. A. Bossi, C. Piazza, and S. Rossi. Dipartimento di Informatica Università Ca Foscari di Venezia

Modelling Downgrading in Information Flow Security. A. Bossi, C. Piazza, and S. Rossi. Dipartimento di Informatica Università Ca Foscari di Venezia Modelling Downgrading in Information Flow Security A. Bossi, C. Piazza, and S. Rossi Dipartimento di Informatica Università Ca Foscari di Venezia bossi, piazza, srossi @dsi.unive.it Joint Meeting MYTHS/MIKADO/DART,

More information

LANGUAGES, LOGICS, TYPES AND TOOLS FOR CONCURRENT SYSTEM MODELLING

LANGUAGES, LOGICS, TYPES AND TOOLS FOR CONCURRENT SYSTEM MODELLING LANGUAGES, LOGICS, TYPES AND TOOLS FOR CONCURRENT SYSTEM MODELLING Ramūnas Gutkovas ramunas@fct.unl.pt 2016-12-14 NOVA LINCS A LITTLE ABOUT MYSELF 2011 MSc 2016 PhD Uppsala, Sweden 2007 BSc Startup 2007-2009

More information

6. Hoare Logic and Weakest Preconditions

6. Hoare Logic and Weakest Preconditions 6. Hoare Logic and Weakest Preconditions Program Verification ETH Zurich, Spring Semester 07 Alexander J. Summers 30 Program Correctness There are many notions of correctness properties for a given program

More information

Induction and Recursion. CMPS/MATH 2170: Discrete Mathematics

Induction and Recursion. CMPS/MATH 2170: Discrete Mathematics Induction and Recursion CMPS/MATH 2170: Discrete Mathematics Outline Mathematical induction (5.1) Sequences and Summations (2.4) Strong induction (5.2) Recursive definitions (5.3) Recurrence Relations

More information

(Refer Slide Time: 4:00)

(Refer Slide Time: 4:00) Principles of Programming Languages Dr. S. Arun Kumar Department of Computer Science & Engineering Indian Institute of Technology, Delhi Lecture - 38 Meanings Let us look at abstracts namely functional

More information

Graph Query Verification using Monadic 2 nd -Order Logic

Graph Query Verification using Monadic 2 nd -Order Logic 1 Graph Query Verification using Monadic 2 nd -Order Logic Graph Kazuhiro Inaba ( 稲葉一浩 ) kinaba@nii.ac.jp Oct 10, 2010 1 st PKU-NII International Joint Workshop on Advanced Software Engineering 2 Goal

More information

CS131 Typed Lambda Calculus Worksheet Due Thursday, April 19th

CS131 Typed Lambda Calculus Worksheet Due Thursday, April 19th CS131 Typed Lambda Calculus Worksheet Due Thursday, April 19th Name: CAS ID (e.g., abc01234@pomona.edu): I encourage you to collaborate. collaborations below. Please record your Each question is worth

More information

Computability Theory XI

Computability Theory XI Computability Theory XI Recursively Enumerable Set Guoqiang Li Shanghai Jiao Tong University Dec. 12&19, 2013 Assignment Assignment 4 was announced! The deadline is Dec. 26! An Exercise Let A, B N. Define

More information

Interaction Nets vs. the ρ-calculus: Introducing Bigraphical Nets

Interaction Nets vs. the ρ-calculus: Introducing Bigraphical Nets Interaction Nets vs. the ρ-calculus: Introducing Bigraphical Nets Maribel Fernández 1 Ian Mackie 1 François-Régis Sinot 2 1 DCS, King s College London 2 LIX, École Polytechnique Rho-Calculus Workshop,

More information

Conservative Concurrency in Haskell

Conservative Concurrency in Haskell Conservative Concurrency in Haskell David Sabel and Manfred Schmidt-Schauß Goethe-University, Frankfurt am Main, Germany LICS 12, Dubrovnik, Croatia Motivation a View on Haskell Purely functional core

More information

Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen

Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen Harsh Beohar LF 265, harsh.beohar@uni-due.de Harsh Beohar Course Modelling of Concurrent Systems 1 Course handler

More information

The Untyped Lambda Calculus

The Untyped Lambda Calculus Resources: The slides of this lecture were derived from [Järvi], with permission of the original author, by copy & x = 1 let x = 1 in... paste or by selection, annotation, or rewording. [Järvi] is in turn

More information

CSCI-GA Scripting Languages

CSCI-GA Scripting Languages CSCI-GA.3033.003 Scripting Languages 12/02/2013 OCaml 1 Acknowledgement The material on these slides is based on notes provided by Dexter Kozen. 2 About OCaml A functional programming language All computation

More information

CS-XXX: Graduate Programming Languages. Lecture 9 Simply Typed Lambda Calculus. Dan Grossman 2012

CS-XXX: Graduate Programming Languages. Lecture 9 Simply Typed Lambda Calculus. Dan Grossman 2012 CS-XXX: Graduate Programming Languages Lecture 9 Simply Typed Lambda Calculus Dan Grossman 2012 Types Major new topic worthy of several lectures: Type systems Continue to use (CBV) Lambda Caluclus as our

More information

On the Relative Expressive Power of Asynchronous Communication Primitives

On the Relative Expressive Power of Asynchronous Communication Primitives Technical Report 06/2005, Dip di Informatica, Univ di Roma La Sapienza On the Relative Expressive Power of Asynchronous Communication Primitives Daniele Gorla Dipartimento di Informatica Università di

More information

Security for Multithreaded Programs under Cooperative Scheduling

Security for Multithreaded Programs under Cooperative Scheduling Security for Multithreaded Programs under Cooperative Scheduling Alejandro Russo and Andrei Sabelfeld Dept. of Computer Science and Engineering, Chalmers University of Technology 412 96 Göteborg, Sweden,

More information

Chapter 1. Preliminaries

Chapter 1. Preliminaries Chapter 1 Preliminaries 1.1 Topological spaces 1.1.1 The notion of topological space The topology on a set X is usually defined by specifying its open subsets of X. However, in dealing with topological

More information

Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen

Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen Harsh Beohar LF 265, harsh.beohar@uni-due.de Harsh Beohar Course Modelling of Concurrent Systems 1 Course handler

More information

Behavioural Equivalences and Abstraction Techniques. Natalia Sidorova

Behavioural Equivalences and Abstraction Techniques. Natalia Sidorova Behavioural Equivalences and Abstraction Techniques Natalia Sidorova Part 1: Behavioural Equivalences p. p. The elevator example once more How to compare this elevator model with some other? The cabin

More information

Programming Languages Lecture 15: Recursive Types & Subtyping

Programming Languages Lecture 15: Recursive Types & Subtyping CSE 230: Winter 2008 Principles of Programming Languages Lecture 15: Recursive Types & Subtyping Ranjit Jhala UC San Diego News? Formalize first-order type systems Simple types (integers and booleans)

More information

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Insup Lee 1, Oleg Sokolsky 1, Anna Philippou 2 1 RTG (Real-Time Systems Group) Department of

More information

Treewidth and graph minors

Treewidth and graph minors Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under

More information

Program verification. Generalities about software Verification Model Checking. September 20, 2016

Program verification. Generalities about software Verification Model Checking. September 20, 2016 Program verification Generalities about software Verification Model Checking Laure Gonnord David Monniaux September 20, 2016 1 / 43 The teaching staff Laure Gonnord, associate professor, LIP laboratory,

More information

Relative Expressive Power of Navigational Querying on Graphs

Relative Expressive Power of Navigational Querying on Graphs Relative Expressive Power of Navigational Querying on Graphs George H. L. Fletcher Eindhoven University of Technology g.h.l.fletcher@tue.nl Jan Van den Bussche Hasselt University & Transnational Univ.

More information

Theories of Information Hiding in Lambda-Calculus

Theories of Information Hiding in Lambda-Calculus Theories of Information Hiding in Lambda-Calculus Logical Relations and Bisimulations for Encryption and Type Abstraction Eijiro Sumii University of Pennsylvania Main Results Proof methods for two forms

More information

The Untyped Lambda Calculus

The Untyped Lambda Calculus Resources: The slides of this lecture were derived from [Järvi], with permission of the original author, by copy & x = 1 let x = 1 in... paste or by selection, annotation, or rewording. [Järvi] is in turn

More information

Lambda Calculus as a Programming Language

Lambda Calculus as a Programming Language Cristian Giumale / Lecture Notes 1 Lambda Calculus as a Programming Language The Lambda calculus can be considered as the machine code of a particular computer. Call it the Lambda machine. As in conventional

More information

Programming with Dependent Types Interactive programs and Coalgebras

Programming with Dependent Types Interactive programs and Coalgebras Programming with Dependent Types Interactive programs and Coalgebras Anton Setzer Swansea University, Swansea, UK 14 August 2012 1/ 50 A Brief Introduction into ML Type Theory Interactive Programs in Dependent

More information

Syrvey on block ciphers

Syrvey on block ciphers Syrvey on block ciphers Anna Rimoldi Department of Mathematics - University of Trento BunnyTn 2012 A. Rimoldi (Univ. Trento) Survey on block ciphers 12 March 2012 1 / 21 Symmetric Key Cryptosystem M-Source

More information

Theory of Computer Science

Theory of Computer Science Theory of Computer Science D3. GOTO-Computability Malte Helmert University of Basel April 25, 2016 Overview: Computability Theory Computability Theory imperative models of computation: D1. Turing-Computability

More information

Timed Automata: Semantics, Algorithms and Tools

Timed Automata: Semantics, Algorithms and Tools Timed Automata: Semantics, Algorithms and Tools Johan Bengtsson and Wang Yi Uppsala University Email: {johanb,yi}@it.uu.se Abstract. This chapter is to provide a tutorial and pointers to results and related

More information

Algorithms: Lecture 10. Chalmers University of Technology

Algorithms: Lecture 10. Chalmers University of Technology Algorithms: Lecture 10 Chalmers University of Technology Today s Topics Basic Definitions Path, Cycle, Tree, Connectivity, etc. Graph Traversal Depth First Search Breadth First Search Testing Bipartatiness

More information

40 Behaviour Compatibility

40 Behaviour Compatibility 40 Behaviour Compatibility [2] R. De Nicola, Extentional Equivalences for Transition Systems, Acta Informatica, vol. 24, pp. 21-237, 1987. [3] J. Gray, Notes on Data Base Operating Systems, in Operating

More information

Theorem Proving Principles, Techniques, Applications Recursion

Theorem Proving Principles, Techniques, Applications Recursion NICTA Advanced Course Theorem Proving Principles, Techniques, Applications Recursion 1 CONTENT Intro & motivation, getting started with Isabelle Foundations & Principles Lambda Calculus Higher Order Logic,

More information

A well-behaved LTS for the Pi-calculus (Abstract)

A well-behaved LTS for the Pi-calculus (Abstract) SOS 2007 A well-behaved LTS for the Pi-calculus (Abstract) Pawe l Sobociński 1 ecs, University of Southampton, UK Abstract The pi-calculus and its many variations have received much attention in the literature.

More information

Lambda Calculus and Extensions as Foundation of Functional Programming

Lambda Calculus and Extensions as Foundation of Functional Programming Lambda Calculus and Extensions as Foundation of Functional Programming David Sabel and Manfred Schmidt-Schauß 29. September 2015 Lehrerbildungsforum Informatik Last update: 30. September 2015 Overview

More information

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings On the Relationships between Zero Forcing Numbers and Certain Graph Coverings Fatemeh Alinaghipour Taklimi, Shaun Fallat 1,, Karen Meagher 2 Department of Mathematics and Statistics, University of Regina,

More information

Software Model Checking: Theory and Practice

Software Model Checking: Theory and Practice Software Model Checking: Theory and Practice Lecture: Specification Checking - Specification Patterns Copyright 2004, Matt Dwyer, John Hatcliff, and Robby. The syllabus and all lectures for this course

More information

CSE505, Fall 2012, Midterm Examination October 30, 2012

CSE505, Fall 2012, Midterm Examination October 30, 2012 CSE505, Fall 2012, Midterm Examination October 30, 2012 Rules: The exam is closed-book, closed-notes, except for one side of one 8.5x11in piece of paper. Please stop promptly at Noon. You can rip apart

More information

Graph Representation of Sessions and Pipelines for Structured Service Programming

Graph Representation of Sessions and Pipelines for Structured Service Programming Graph Representation of Sessions and Pipelines for Structured Service Programming Liang Zhao 1,2 with Roberto Bruni 1 and Zhiming Liu 2 1 University of Pisa, Italy 2 UNU-IIST, Macao SR, China FCS 2010

More information

Lambda Calculus and Type Inference

Lambda Calculus and Type Inference Lambda Calculus and Type Inference Björn Lisper Dept. of Computer Science and Engineering Mälardalen University bjorn.lisper@mdh.se http://www.idt.mdh.se/ blr/ October 13, 2004 Lambda Calculus and Type

More information

Introduction to the Lambda Calculus

Introduction to the Lambda Calculus Introduction to the Lambda Calculus Overview: What is Computability? Church s Thesis The Lambda Calculus Scope and lexical address The Church-Rosser Property Recursion References: Daniel P. Friedman et

More information

SAT-CNF Is N P-complete

SAT-CNF Is N P-complete SAT-CNF Is N P-complete Rod Howell Kansas State University November 9, 2000 The purpose of this paper is to give a detailed presentation of an N P- completeness proof using the definition of N P given

More information

COMPUTABILITY THEORY AND RECURSIVELY ENUMERABLE SETS

COMPUTABILITY THEORY AND RECURSIVELY ENUMERABLE SETS COMPUTABILITY THEORY AND RECURSIVELY ENUMERABLE SETS JOSHUA LENERS Abstract. An algorithm is function from ω to ω defined by a finite set of instructions to transform a given input x to the desired output

More information

Typing Control. Chapter Conditionals

Typing Control. Chapter Conditionals Chapter 26 Typing Control 26.1 Conditionals Let s expand our language with a conditional construct. We can use if0 like before, but for generality it s going to be more convenient to have a proper conditional

More information

Advanced Test Coverage Criteria: Specify and Measure, Cover and Unmask

Advanced Test Coverage Criteria: Specify and Measure, Cover and Unmask Advanced Test Coverage Criteria: Specify and Measure, Cover and Unmask Sébastien Bardin & Nikolai Kosmatov joint work with Omar Chebaro, Robin David, Mickaël Delahaye, Michaël Marcozzi, Mike Papadakis,

More information

Objective and Subjective Specifications

Objective and Subjective Specifications 2017-7-10 0 Objective and Subjective Specifications Eric C.R. Hehner Department of Computer Science, University of Toronto hehner@cs.utoronto.ca Abstract: We examine specifications for dependence on the

More information

CSE 341: Programming Languages

CSE 341: Programming Languages CSE 341: Programming Languages Autumn 2005 Lecture 10 Mutual Recursion, Equivalence, and Syntactic Sugar CSE 341 Autumn 2005, Lecture 10 1 Mutual Recursion You ve already seen how multiple functions can

More information

Observational Program Calculi and the Correctness of Translations

Observational Program Calculi and the Correctness of Translations Observational Program Calculi and the Correctness of Translations Manfred Schmidt-Schauß a, David Sabel a, Joachim Niehren b, Jan Schwinghammer a Goethe-University Frankfurt am Main, Germany b INRIA Lille,

More information

CS 4110 Programming Languages & Logics. Lecture 17 Programming in the λ-calculus

CS 4110 Programming Languages & Logics. Lecture 17 Programming in the λ-calculus CS 4110 Programming Languages & Logics Lecture 17 Programming in the λ-calculus 10 October 2014 Announcements 2 Foster Office Hours 11-12 Enjoy fall break! Review: Church Booleans 3 We can encode TRUE,

More information

Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen

Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen Course Modelling of Concurrent Systems Summer Semester 2016 University of Duisburg-Essen Harsh Beohar LF 265, harsh.beohar@uni-due.de Harsh Beohar Course Modelling of Concurrent Systems 1 Course handler

More information

(See related materials in textbook.) CSE 435: Software Engineering (slides adapted from Ghezzi et al & Stirewalt

(See related materials in textbook.) CSE 435: Software Engineering (slides adapted from Ghezzi et al & Stirewalt Verification (See related materials in textbook.) Outline What are the goals of verification? What are the main approaches to verification? What kind of assurance do we get through testing? How can testing

More information

Lecture slides & distribution files:

Lecture slides & distribution files: Type Theory Lecture slides & distribution files: http://www.cs.rhul.ac.uk/home/zhaohui/ttlectures.html Zhaohui Luo Department of Computer Science Royal Holloway, University of London April 2011 2 Type

More information

CS 4110 Programming Languages & Logics. Lecture 28 Recursive Types

CS 4110 Programming Languages & Logics. Lecture 28 Recursive Types CS 4110 Programming Languages & Logics Lecture 28 Recursive Types 7 November 2014 Announcements 2 Foster office hours 11-12pm Guest lecture by Fran on Monday Recursive Types 3 Many languages support recursive

More information

CS21 Decidability and Tractability

CS21 Decidability and Tractability CS21 Decidability and Tractability Lecture 9 January 26, 2018 Outline Turing Machines and variants multitape TMs nondeterministic TMs Church-Turing Thesis decidable, RE, co-re languages Deciding and Recognizing

More information

Handling Integer Arithmetic in the Verification of Java Programs

Handling Integer Arithmetic in the Verification of Java Programs Handling Integer Arithmetic in the Verification of Java Programs Steffen Schlager 1st Swedish-German KeY Workshop Göteborg, Sweden, June 2002 KeY workshop, June 2002 p.1 Introduction UML/OCL specification

More information

Formal Systems and their Applications

Formal Systems and their Applications Formal Systems and their Applications Dave Clarke (Dave.Clarke@cs.kuleuven.be) Acknowledgment: these slides are based in part on slides from Benjamin Pierce and Frank Piessens 1 Course Overview Introduction

More information

the application rule M : x:a: B N : A M N : (x:a: B) N and the reduction rule (x: A: B) N! Bfx := Ng. Their algorithm is not fully satisfactory in the

the application rule M : x:a: B N : A M N : (x:a: B) N and the reduction rule (x: A: B) N! Bfx := Ng. Their algorithm is not fully satisfactory in the The Semi-Full Closure of Pure Type Systems? Gilles Barthe Institutionen for Datavetenskap, Chalmers Tekniska Hogskola, Goteborg, Sweden Departamento de Informatica, Universidade do Minho, Braga, Portugal

More information

Polymorphism and Type Inference

Polymorphism and Type Inference Polymorphism and Type Inference Volker Stolz stolz@ifi.uio.no Department of Informatics University of Oslo Initially by Gerardo Schneider. Based on John C. Mitchell s slides (Stanford U.) Compile-time

More information

2 Introduction to operational semantics

2 Introduction to operational semantics 2 Introduction to operational semantics This chapter presents the syntax of a programming language, IMP, a small language of while programs. IMP is called an "imperative" language because program execution

More information

Supplementary Notes on Abstract Syntax

Supplementary Notes on Abstract Syntax Supplementary Notes on Abstract Syntax 15-312: Foundations of Programming Languages Frank Pfenning Lecture 3 September 3, 2002 Grammars, as we have discussed them so far, define a formal language as a

More information

Proving the Genericity Lemma by Leftmost Reduction is Simple

Proving the Genericity Lemma by Leftmost Reduction is Simple Proving the Genericity Lemma by Leftmost Reduction is Simple Jan Kuper University of Twente, Department of Computer Science P.O.Box 217, 7500 AE Enschede, The Netherlands e-mail: jankuper~cs.utwente.ul

More information

Programs with infinite loops: from primitive recursive predicates to the arithmetic hierarchy

Programs with infinite loops: from primitive recursive predicates to the arithmetic hierarchy Programs with infinite loops: from primitive recursive predicates to the arithmetic hierarchy ((quite) preliminary) Armando B. Matos September 11, 2014 Abstract Infinite time Turing machines have been

More information

COMP 1130 Lambda Calculus. based on slides by Jeff Foster, U Maryland

COMP 1130 Lambda Calculus. based on slides by Jeff Foster, U Maryland COMP 1130 Lambda Calculus based on slides by Jeff Foster, U Maryland Motivation Commonly-used programming languages are large and complex ANSI C99 standard: 538 pages ANSI C++ standard: 714 pages Java

More information

The learning objectives of this chapter are the followings. At the end of this chapter, you shall

The learning objectives of this chapter are the followings. At the end of this chapter, you shall Chapter 5 Sequence diagrams In the previous chapters, we have seen different diagrams. Use case diagrams describe tasks that a system is supposed to perform. It gives high-level information about how a

More information

Polymorphic lambda calculus Princ. of Progr. Languages (and Extended ) The University of Birmingham. c Uday Reddy

Polymorphic lambda calculus Princ. of Progr. Languages (and Extended ) The University of Birmingham. c Uday Reddy 06-02552 Princ. of Progr. Languages (and Extended ) The University of Birmingham Spring Semester 2016-17 School of Computer Science c Uday Reddy2016-17 Handout 6: Polymorphic Type Systems 1. Polymorphic

More information

Motivation: Model-driven. driven Engineering. Semantics of Model Transformation. Reiko Heckel University of Leicester, UK

Motivation: Model-driven. driven Engineering. Semantics of Model Transformation. Reiko Heckel University of Leicester, UK Semantics of Model Transformation Reiko Heckel University of Leicester, UK, University of Birmingham, 1 March 2007 Motivation: Model-driven driven Engineering Focus and primary artifacts are models instead

More information

COMP 382: Reasoning about algorithms

COMP 382: Reasoning about algorithms Spring 2015 Unit 2: Models of computation What is an algorithm? So far... An inductively defined function Limitation Doesn t capture mutation of data Imperative models of computation Computation = sequence

More information

Compiler construction

Compiler construction Compiler construction Martin Steffen March 13, 2017 Contents 1 Abstract 1 1.1 Symbol tables. 1 1.1.1 Introduction 1 1.1.2 Symbol table design and interface.. 2 1.1.3 Implementing symbol tables 3 1.1.4

More information

CSE 505: Concepts of Programming Languages

CSE 505: Concepts of Programming Languages CSE 505: Concepts of Programming Languages Dan Grossman Fall 2003 Lecture 6 Lambda Calculus Dan Grossman CSE505 Fall 2003, Lecture 6 1 Where we are Done: Modeling mutation and local control-flow Proving

More information

Lambda Calculus and Type Inference

Lambda Calculus and Type Inference Lambda Calculus and Type Inference Björn Lisper Dept. of Computer Science and Engineering Mälardalen University bjorn.lisper@mdh.se http://www.idt.mdh.se/ blr/ August 17, 2007 Lambda Calculus and Type

More information

An introduction to Homotopy Type Theory

An introduction to Homotopy Type Theory An introduction to Homotopy Type Theory Nicola Gambino University of Palermo Leicester, March 15th, 2013 Outline of the talk Part I: Type theory Part II: Homotopy type theory Part III: Voevodsky s Univalent

More information

Checking the Realizability of BPMN 2.0 Choreographies

Checking the Realizability of BPMN 2.0 Choreographies Checking the Realizability of PMN 2.0 Choreographies Gwen Salaün Grenoble INP, INRI, France joint work with Pascal Poizat LRI, University of Evry, France 1 Realizability of Choreographies Interactions

More information

Recursively defined cpo algebras

Recursively defined cpo algebras Recursively defined cpo algebras Ohad Kammar and Paul Blain Levy July 13, 2018 Ohad Kammar and Paul Blain Levy Recursively defined cpo algebras July 13, 2018 1 / 16 Outline 1 Bilimit compact categories

More information

Inductive Definitions, continued

Inductive Definitions, continued 1 / 27 Inductive Definitions, continued Assia Mahboubi Jan 7th, 2016 2 / 27 Last lecture Introduction to Coq s inductive types: Introduction, elimination and computation rules; Twofold implementation :

More information

Programming Languages Lecture 14: Sum, Product, Recursive Types

Programming Languages Lecture 14: Sum, Product, Recursive Types CSE 230: Winter 200 Principles of Programming Languages Lecture 4: Sum, Product, Recursive Types The end is nigh HW 3 No HW 4 (= Final) Project (Meeting + Talk) Ranjit Jhala UC San Diego Recap Goal: Relate

More information

Lecture 5: The Untyped λ-calculus

Lecture 5: The Untyped λ-calculus Lecture 5: The Untyped λ-calculus Syntax and basic examples Polyvios Pratikakis Computer Science Department, University of Crete Type Systems and Static Analysis Pratikakis (CSD) Untyped λ-calculus I CS49040,

More information

Note that in this definition, n + m denotes the syntactic expression with three symbols n, +, and m, not to the number that is the sum of n and m.

Note that in this definition, n + m denotes the syntactic expression with three symbols n, +, and m, not to the number that is the sum of n and m. CS 6110 S18 Lecture 8 Structural Operational Semantics and IMP Today we introduce a very simple imperative language, IMP, along with two systems of rules for evaluation called small-step and big-step semantics.

More information

Elementary Recursive Function Theory

Elementary Recursive Function Theory Chapter 7 Elementary Recursive Function Theory 7.1 Acceptable Indexings In a previous Section, we have exhibited a specific indexing of the partial recursive functions by encoding the RAM programs. Using

More information

Cover Page. The handle holds various files of this Leiden University dissertation

Cover Page. The handle   holds various files of this Leiden University dissertation Cover Page The handle http://hdl.handle.net/1887/22891 holds various files of this Leiden University dissertation Author: Gouw, Stijn de Title: Combining monitoring with run-time assertion checking Issue

More information

Negations in Refinement Type Systems

Negations in Refinement Type Systems Negations in Refinement Type Systems T. Tsukada (U. Tokyo) 14th March 2016 Shonan, JAPAN This Talk About refinement intersection type systems that refute judgements of other type systems. Background Refinement

More information

On the Language Inclusion Problem for Timed Automata: Closing a Decidability Gap

On the Language Inclusion Problem for Timed Automata: Closing a Decidability Gap SVC On the Language Inclusion Problem for Timed Automata 1 On the Language Inclusion Problem for Timed Automata: Closing a Decidability Gap Joël Ouaknine Computer Science Department, Carnegie Mellon University

More information

CS 4110 Programming Languages & Logics. Lecture 27 Recursive Types

CS 4110 Programming Languages & Logics. Lecture 27 Recursive Types CS 4110 Programming Languages & Logics Lecture 27 Recursive Types 4 November 2016 Announcements 2 My office hours are at the normal time today but canceled on Monday Guest lecture by Seung Hee Han on Monday

More information

COMS 4771 Support Vector Machines. Nakul Verma

COMS 4771 Support Vector Machines. Nakul Verma COMS 4771 Support Vector Machines Nakul Verma Last time Decision boundaries for classification Linear decision boundary (linear classification) The Perceptron algorithm Mistake bound for the perceptron

More information

Denotational Semantics. Domain Theory

Denotational Semantics. Domain Theory Denotational Semantics and Domain Theory 1 / 51 Outline Denotational Semantics Basic Domain Theory Introduction and history Primitive and lifted domains Sum and product domains Function domains Meaning

More information

Part VI. Imperative Functional Programming

Part VI. Imperative Functional Programming Part VI Imperative Functional Programming Chapter 14 Mutable Storage MinML is said to be a pure language because the execution model consists entirely of evaluating an expression for its value. ML is

More information

Introduction to Software Testing Chapter 2, Sections: 2.1 & 2.2 Overview Graph Coverage Criteria

Introduction to Software Testing Chapter 2, Sections: 2.1 & 2.2 Overview Graph Coverage Criteria Introduction to Software Testing Chapter 2, Sections: 2.1 & 2.2 Overview Graph Coverage Criteria Paul Ammann & Jeff Offutt http://www.cs.gmu.edu/~offutt/softwa retest/ Ch. 2 : Graph Coverage Four Structures

More information

when a process of the form if be then p else q is executed and also when an output action is performed. 1. Unnecessary substitution: Let p = c!25 c?x:

when a process of the form if be then p else q is executed and also when an output action is performed. 1. Unnecessary substitution: Let p = c!25 c?x: URL: http://www.elsevier.nl/locate/entcs/volume27.html 7 pages Towards Veried Lazy Implementation of Concurrent Value-Passing Languages (Abstract) Anna Ingolfsdottir (annai@cs.auc.dk) BRICS, Dept. of Computer

More information

Lambda Calculus as a Programming Language

Lambda Calculus as a Programming Language Cristian Giumale / Lecture Notes 1 Lambda Calculus as a Programming Language The Lambda calculus can be considered as the machine code of a particular computer. Call it the Lambda machine. As in conventional

More information