CS 4110 Programming Languages & Logics. Lecture 2 Introduction to Semantics

Size: px
Start display at page:

Download "CS 4110 Programming Languages & Logics. Lecture 2 Introduction to Semantics"

Transcription

1 CS 4110 Programming Languages & Logics Lecture 2 Introduction to Semantics 29 August 2012

2 Announcements 2 Wednesday Lecture Moved to Thurston 203 Foster Office Hours Today 11a-12pm in Gates 432 Mota Office Hours Wed 11am-12pm in TBD Thurs 2:30pm-4pm in TBD Homework #1 Out: Wednesday, September 3rd Due: Wednesday, September 10th Distributed via CMS

3 Semantics 3 Question: What is the meaning of a program?

4 Semantics 3 Question: What is the meaning of a program? Answer: We could execute the program using an interpreter or a compiler, or we could consult a manual......but none of these is a satisfactory solution.

5 Formal Semantics 4 Three Approaches Operational σ, e σ, e Model program by execution on abstract machine Useful for implementing compilers and interpreters Denotational: Model program as mathematical objects Useful for theoretical foundations Axiomatic Model program by the logical formulas it obeys Useful for proving program correctness [[e]] {ϕ} e {ψ}

6 Arithmetic Expressions

7 Syntax 6 A language of integer arithmetic expressions with assignment.

8 Syntax 6 A language of integer arithmetic expressions with assignment. Metavariables: x, y, z Var n, m Int e Exp

9 Syntax 6 A language of integer arithmetic expressions with assignment. Metavariables: BNF Grammar: x, y, z Var n, m Int e Exp e ::= x n e 1 + e 2 e 1 * e 2 x := e 1 ; e 2

10 Ambiguity 7 What expression does the string * 3 describe?

11 Ambiguity 7 What expression does the string * 3 describe? There are two possible parse trees: + * 1 *

12 Ambiguity 7 What expression does the string * 3 describe? There are two possible parse trees: + * 1 * In this course, we will distinguish abstract syntax from concrete syntax, and focus primarily on abstract syntax (using conventions or parentheses at the concrete level to disambiguate as needed).

13 Representing Expressions 8 BNF Grammar: e ::= x n e 1 + e 2 e 1 * e 2 x := e 1 ; e 2

14 Representing Expressions BNF Grammar: OCaml: e ::= x n e 1 + e 2 e 1 * e 2 x := e 1 ; e 2 type exp = Var of string Int of int Add of exp * exp Mul of exp * exp Assgn of string * exp * exp Example: Mul(Int 2, Add(Var foo, Int 1)) 8

15 Representing Expressions BNF Grammar: Java: e ::= x n e 1 + e 2 e 1 * e 2 x := e 1 ; e 2 abstract class Expr { } class Var extends Expr { String name;... } class Int extends Expr { int val;... } class Add extends Expr { Expr exp1, exp2;... } class Mul extends Expr { Expr exp1, exp2;... } class Assgn extends Expr { String var, Expr exp1, exp2;... } Example: new Mul(new Int(2), new Add(new Var( foo ), new Int(1))) 8

16 Quiz (4 * 2) evaluates to...?

17 Quiz (4 * 2) evaluates to 15

18 Quiz (4 * 2) evaluates to 15 i := ; 2 * 3 * i evaluates to...?

19 Quiz (4 * 2) evaluates to 15 i := ; 2 * 3 * i evaluates to 42

20 Quiz (4 * 2) evaluates to 15 i := ; 2 * 3 * i evaluates to 42 x + 1 evaluates to...?

21 Quiz (4 * 2) evaluates to 15 i := ; 2 * 3 * i evaluates to 42 x + 1 evaluates to error?

22 Quiz (4 * 2) evaluates to 15 i := ; 2 * 3 * i evaluates to 42 x + 1 evaluates to error? The rest of this lecture will make these intuitions precise...

23 Mathematical Preliminaries

24 Binary Relations 11 The product of two sets A and B, written A B, contains all ordered pairs (a, b) with a A and b B.

25 Binary Relations 11 The product of two sets A and B, written A B, contains all ordered pairs (a, b) with a A and b B. A binary relation on A and B is just a subset R A B.

26 Binary Relations 11 The product of two sets A and B, written A B, contains all ordered pairs (a, b) with a A and b B. A binary relation on A and B is just a subset R A B. Given a binary relation R A B, the set A is called the domain of R and B is called the range (or codomain) of R.

27 Binary Relations 11 The product of two sets A and B, written A B, contains all ordered pairs (a, b) with a A and b B. A binary relation on A and B is just a subset R A B. Given a binary relation R A B, the set A is called the domain of R and B is called the range (or codomain) of R. Some Important Relations empty total A B identity on A {(a, a) a A}. composition R; S {(a, c) b. (a, b) R (b, c) S}

28 Functions 12 A (total) function f is a binary relation f A B with the property that every a A is related to exactly one b B

29 Functions 12 A (total) function f is a binary relation f A B with the property that every a A is related to exactly one b B When f is a function, we usually write f : A B instead of f A B

30 Functions 12 A (total) function f is a binary relation f A B with the property that every a A is related to exactly one b B When f is a function, we usually write f : A B instead of f A B The domain and range of f are defined the same way as for relations

31 Functions 12 A (total) function f is a binary relation f A B with the property that every a A is related to exactly one b B When f is a function, we usually write f : A B instead of f A B The domain and range of f are defined the same way as for relations The image of f is the set of elements b B that are mapped to by at least one a A. More formally: image(f) {f(a) a A}

32 Some Important Functions 13 Given two functions f : A B and g : B C, the composition of f and g is defined by: (g f)(x) = g(f(x)) Note order!

33 Some Important Functions 13 Given two functions f : A B and g : B C, the composition of f and g is defined by: (g f)(x) = g(f(x)) Note order! A partial function f : A B is a total function f : A B on a set A A. The notation dom(f) refers to A.

34 Some Important Functions 13 Given two functions f : A B and g : B C, the composition of f and g is defined by: (g f)(x) = g(f(x)) Note order! A partial function f : A B is a total function f : A B on a set A A. The notation dom(f) refers to A. A function f : A B is said to be injective (or one-to-one) if and only if a 1 a 2 implies f(a 1 ) f(a 2 ).

35 Some Important Functions 13 Given two functions f : A B and g : B C, the composition of f and g is defined by: (g f)(x) = g(f(x)) Note order! A partial function f : A B is a total function f : A B on a set A A. The notation dom(f) refers to A. A function f : A B is said to be injective (or one-to-one) if and only if a 1 a 2 implies f(a 1 ) f(a 2 ). A function f : A B is said to be surjective (or onto) if and only if the image of f is B.

36 Operational Semantics

37 Overview 15 An operational semantics describes how a program executes on some (typically idealized) abstract machine.

38 Overview 15 An operational semantics describes how a program executes on some (typically idealized) abstract machine. A small-step semantics describes how such an execution proceeds in terms of successive reductions: σ, e σ, e

39 Overview 15 An operational semantics describes how a program executes on some (typically idealized) abstract machine. A small-step semantics describes how such an execution proceeds in terms of successive reductions: σ, e σ, e For our language, a configuration σ, e has two components: a store σ that records the values of variables and the expression e being evaluated

40 Overview 15 An operational semantics describes how a program executes on some (typically idealized) abstract machine. A small-step semantics describes how such an execution proceeds in terms of successive reductions: σ, e σ, e For our language, a configuration σ, e has two components: a store σ that records the values of variables and the expression e being evaluated More formally, Store Var Int Config Store Exp Note that a store is a partial function from variables to integers.

41 Operational Semantics 16 The small-step operational semantics itself is a relation on configurations i.e., a subset of Config Config.

42 Operational Semantics 16 The small-step operational semantics itself is a relation on configurations i.e., a subset of Config Config. Notation: σ, e σ, e

43 Operational Semantics 16 The small-step operational semantics itself is a relation on configurations i.e., a subset of Config Config. Notation: σ, e σ, e Question: How should we define this relation?

44 Operational Semantics 16 The small-step operational semantics itself is a relation on configurations i.e., a subset of Config Config. Notation: σ, e σ, e Question: How should we define this relation? Note that there are an infinite number of configurations and possible steps!

45 Operational Semantics 16 The small-step operational semantics itself is a relation on configurations i.e., a subset of Config Config. Notation: σ, e σ, e Question: How should we define this relation? Note that there are an infinite number of configurations and possible steps! Answer: define it inductively, using inference rules: p = m + n σ, n + m σ, p Add

46 Operational Semantics The small-step operational semantics itself is a relation on configurations i.e., a subset of Config Config. Notation: σ, e σ, e Question: How should we define this relation? Note that there are an infinite number of configurations and possible steps! Answer: define it inductively, using inference rules: p = m + n σ, n + m σ, p Add Intuitively, if facts above the line hold, then facts below the line hold. More formally, is the smallest relation closed under the inference rules. 16

47 Variables 17 n = σ(x) σ, x σ, n Var

48 Addition 18 σ, e 1 σ, e 1 σ, e 1 + e 2 σ, e 1 + e 2 LAdd

49 Addition 18 σ, e 1 σ, e 1 σ, e 1 + e 2 σ, e 1 + e 2 LAdd σ, e 2 σ, e 2 σ, n + e 2 σ, n + e 2 RAdd

50 Addition 18 σ, e 1 σ, e 1 σ, e 1 + e 2 σ, e 1 + e 2 LAdd σ, e 2 σ, e 2 σ, n + e 2 σ, n + e 2 RAdd p = m + n σ, n + m σ, p Add

51 Multiplication 19 σ, e 1 σ, e 1 σ, e 1 * e 2 σ, e 1 * e 2 LMul

52 Multiplication 19 σ, e 1 σ, e 1 σ, e 1 * e 2 σ, e 1 * e 2 LMul σ, e 2 σ, e 2 σ, n * e 2 σ, n * e 2 RMul

53 Multiplication 19 σ, e 1 σ, e 1 σ, e 1 * e 2 σ, e 1 * e 2 LMul σ, e 2 σ, e 2 σ, n * e 2 σ, n * e 2 RMul p = m n σ, m * n σ, p Mul

54 Assignment 20 σ, e 1 σ, e 1 σ, x := e 1 ; e 2 σ, x := e 1 ; e 2 Assgn1

55 Assignment 20 σ, e 1 σ, e 1 σ, x := e 1 ; e 2 σ, x := e 1 ; e 2 Assgn1 σ = σ[x n] σ, x := n ; e 2 σ, e 2 Assgn Notation: σ[x n] maps x to n and otherwise behaves like σ

56 Operational Semantics n = σ(x) σ, x σ, n Var σ, e 1 σ, e 1 σ, e 1 + e 2 σ, e 1 + e 2 LAdd σ, e 2 σ, e 2 σ, n + e 2 σ, n + e 2 RAdd p = m + n σ, n + m σ, p Add σ, e 1 σ, e 1 σ, e 1 * e 2 σ, e 1 * e 2 LMul σ, e 2 σ, e 2 σ, n * e 2 σ, n * e 2 RMul p = m n σ, m * n σ, p Mul σ, e 1 σ, e 1 σ, x := e 1 ; e 2 σ, x := e 1 ; e 2 Assgn1 σ = σ[x n] σ, x := n ; e 2 σ, e 2 Assgn 21

CS 4110 Programming Languages and Logics Lecture #2: Introduction to Semantics. 1 Arithmetic Expressions

CS 4110 Programming Languages and Logics Lecture #2: Introduction to Semantics. 1 Arithmetic Expressions CS 4110 Programming Languages and Logics Lecture #2: Introduction to Semantics What is the meaning of a program? When we write a program, we represent it using sequences of characters. But these strings

More information

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 3 Tuesday, February 2, 2016 1 Inductive proofs, continued Last lecture we considered inductively defined sets, and

More information

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 3 Tuesday, January 30, 2018 1 Inductive sets Induction is an important concept in the theory of programming language.

More information

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 2 Thursday, January 30, 2014 1 Expressing Program Properties Now that we have defined our small-step operational

More information

In this lecture, we will use the semantics of our simple language of arithmetic expressions,

In this lecture, we will use the semantics of our simple language of arithmetic expressions, CS 4110 Programming Languages and Logics Lecture #3: Inductive definitions and proofs In this lecture, we will use the semantics of our simple language of arithmetic expressions, e ::= x n e 1 + e 2 e

More information

CS792 Notes Henkin Models, Soundness and Completeness

CS792 Notes Henkin Models, Soundness and Completeness CS792 Notes Henkin Models, Soundness and Completeness Arranged by Alexandra Stefan March 24, 2005 These notes are a summary of chapters 4.5.1-4.5.5 from [1]. 1 Review indexed family of sets: A s, where

More information

Programming Languages

Programming Languages CSE 230: Winter 2010 Principles of Programming Languages Lecture 3: Induction, Equivalence Ranjit Jhala UC San Diego Operational Semantics of IMP Evaluation judgement for commands Ternary relation on expression,

More information

Brief Notes on the Category Theoretic Semantics of Simply Typed Lambda Calculus

Brief Notes on the Category Theoretic Semantics of Simply Typed Lambda Calculus University of Cambridge 2017 MPhil ACS / CST Part III Category Theory and Logic (L108) Brief Notes on the Category Theoretic Semantics of Simply Typed Lambda Calculus Andrew Pitts Notation: comma-separated

More information

Proof Techniques for Operational Semantics. Questions? Why Bother? Mathematical Induction Well-Founded Induction Structural Induction

Proof Techniques for Operational Semantics. Questions? Why Bother? Mathematical Induction Well-Founded Induction Structural Induction Proof Techniques for Operational Semantics Announcements Homework 1 feedback/grades posted Homework 2 due tonight at 11:55pm Meeting 10, CSCI 5535, Spring 2010 2 Plan Questions? Why Bother? Mathematical

More information

A relation on 132-avoiding permutation patterns

A relation on 132-avoiding permutation patterns Discrete Mathematics and Theoretical Computer Science DMTCS vol. VOL, 205, 285 302 A relation on 32-avoiding permutation patterns Natalie Aisbett School of Mathematics and Statistics, University of Sydney,

More information

TABLEAU-BASED DECISION PROCEDURES FOR HYBRID LOGIC

TABLEAU-BASED DECISION PROCEDURES FOR HYBRID LOGIC TABLEAU-BASED DECISION PROCEDURES FOR HYBRID LOGIC THOMAS BOLANDER AND TORBEN BRAÜNER Abstract. Hybrid logics are a principled generalization of both modal logics and description logics. It is well-known

More information

First-Order Logic in Standard Notation Basics

First-Order Logic in Standard Notation Basics 1 VOCABULARY First-Order Logic in Standard Notation Basics http://mathvault.ca April 21, 2017 1 Vocabulary Just as a natural language is formed with letters as its building blocks, the First- Order Logic

More information

HW 1 Reminder. Principles of Programming Languages. Lets try another proof. Induction. Induction on Derivations. CSE 230: Winter 2007

HW 1 Reminder. Principles of Programming Languages. Lets try another proof. Induction. Induction on Derivations. CSE 230: Winter 2007 CSE 230: Winter 2007 Principles of Programming Languages Lecture 4: Induction, Small-Step Semantics HW 1 Reminder Due next Tue Instructions about turning in code to follow Send me mail if you have issues

More information

Abstract stack machines for LL and LR parsing

Abstract stack machines for LL and LR parsing Abstract stack machines for LL and LR parsing Hayo Thielecke August 13, 2015 Contents Introduction Background and preliminaries Parsing machines LL machine LL(1) machine LR machine Parsing and (non-)deterministic

More information

Copyright 1973, by the author(s). All rights reserved.

Copyright 1973, by the author(s). All rights reserved. Copyright 1973, by the author(s). All rights reserved. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are

More information

Proof Techniques for Operational Semantics

Proof Techniques for Operational Semantics Proof Techniques for Operational Semantics Wei Hu Memorial Lecture I will give a completely optional bonus survey lecture: A Recent History of PL in Context It will discuss what has been hot in various

More information

COMPUTER SCIENCE 20, SPRING 2014 Homework Problems Recursive Definitions, Structural Induction, States and Invariants

COMPUTER SCIENCE 20, SPRING 2014 Homework Problems Recursive Definitions, Structural Induction, States and Invariants COMPUTER SCIENCE 20, SPRING 2014 Homework Problems Recursive Definitions, Structural Induction, States and Invariants Due Wednesday March 12, 2014. CS 20 students should bring a hard copy to class. CSCI

More information

Structural Induction

Structural Induction Structural Induction Jason Filippou CMSC250 @ UMCP 07-05-2016 Jason Filippou (CMSC250 @ UMCP) Structural Induction 07-05-2016 1 / 26 Outline 1 Recursively defined structures 2 Proofs Binary Trees Jason

More information

Notes on the symmetric group

Notes on the symmetric group Notes on the symmetric group 1 Computations in the symmetric group Recall that, given a set X, the set S X of all bijections from X to itself (or, more briefly, permutations of X) is group under function

More information

Semantics with Applications 2b. Structural Operational Semantics

Semantics with Applications 2b. Structural Operational Semantics Semantics with Applications 2b. Structural Operational Semantics Hanne Riis Nielson, Flemming Nielson (thanks to Henrik Pilegaard) [SwA] Hanne Riis Nielson, Flemming Nielson Semantics with Applications:

More information

Lecture Notes on Type Checking

Lecture Notes on Type Checking Lecture Notes on Type Checking 15-312: Foundations of Programming Languages Frank Pfenning Lecture 17 October 23, 2003 At the beginning of this class we were quite careful to guarantee that every well-typed

More information

Semantics and Verification of Software

Semantics and Verification of Software Semantics and Verification of Software Thomas Noll Software Modeling and Verification Group RWTH Aachen University http://moves.rwth-aachen.de/teaching/ws-1718/sv-sw/ Recap: CCPOs and Continuous Functions

More information

Relations and Functions

Relations and Functions Reations and Functions 1 Teaching-Learning Points Let A and B are two non empty sets then a reation from set A to set B is defined as R = {(a.b) : a ð A and b ð B}. If (a.b) ð R, we say that a is reated

More information

Outline for this Week

Outline for this Week Binomial Heaps Outline for this Week Binomial Heaps (Today) A simple, flexible, and versatile priority queue. Lazy Binomial Heaps (Today) A powerful building block for designing advanced data structures.

More information

Wada s Representations of the. Pure Braid Group of High Degree

Wada s Representations of the. Pure Braid Group of High Degree Theoretical Mathematics & Applications, vol2, no1, 2012, 117-125 ISSN: 1792-9687 (print), 1792-9709 (online) International Scientific Press, 2012 Wada s Representations of the Pure Braid Group of High

More information

Practice Second Midterm Exam II

Practice Second Midterm Exam II CS13 Handout 34 Fall 218 November 2, 218 Practice Second Midterm Exam II This exam is closed-book and closed-computer. You may have a double-sided, 8.5 11 sheet of notes with you when you take this exam.

More information

The Turing Definability of the Relation of Computably Enumerable In. S. Barry Cooper

The Turing Definability of the Relation of Computably Enumerable In. S. Barry Cooper The Turing Definability of the Relation of Computably Enumerable In S. Barry Cooper Computability Theory Seminar University of Leeds Winter, 1999 2000 1. The big picture Turing definability/invariance

More information

Mathematics Notes for Class 12 chapter 1. Relations and Functions

Mathematics Notes for Class 12 chapter 1. Relations and Functions 1 P a g e Mathematics Notes for Class 12 chapter 1. Relations and Functions Relation If A and B are two non-empty sets, then a relation R from A to B is a subset of A x B. If R A x B and (a, b) R, then

More information

α-structural Recursion and Induction

α-structural Recursion and Induction α-structural Recursion and Induction AndrewPitts UniversityofCambridge ComputerLaboratory TPHOLs 2005, - p. 1 Overview TPHOLs 2005, - p. 2 N.B. binding and non-binding constructs are treated just the same

More information

The illustrated zoo of order-preserving functions

The illustrated zoo of order-preserving functions The illustrated zoo of order-preserving functions David Wilding, February 2013 http://dpw.me/mathematics/ Posets (partially ordered sets) underlie much of mathematics, but we often don t give them a second

More information

Unary PCF is Decidable

Unary PCF is Decidable Unary PCF is Decidable Ralph Loader Merton College, Oxford November 1995, revised October 1996 and September 1997. Abstract We show that unary PCF, a very small fragment of Plotkin s PCF [?], has a decidable

More information

Notes on Natural Logic

Notes on Natural Logic Notes on Natural Logic Notes for PHIL370 Eric Pacuit November 16, 2012 1 Preliminaries: Trees A tree is a structure T = (T, E), where T is a nonempty set whose elements are called nodes and E is a relation

More information

CSE 21 Winter 2016 Homework 6 Due: Wednesday, May 11, 2016 at 11:59pm. Instructions

CSE 21 Winter 2016 Homework 6 Due: Wednesday, May 11, 2016 at 11:59pm. Instructions CSE 1 Winter 016 Homework 6 Due: Wednesday, May 11, 016 at 11:59pm Instructions Homework should be done in groups of one to three people. You are free to change group members at any time throughout the

More information

A CATEGORICAL FOUNDATION FOR STRUCTURED REVERSIBLE FLOWCHART LANGUAGES: SOUNDNESS AND ADEQUACY

A CATEGORICAL FOUNDATION FOR STRUCTURED REVERSIBLE FLOWCHART LANGUAGES: SOUNDNESS AND ADEQUACY Logical Methods in Computer Science Vol. 14(3:16)2018, pp. 1 38 https://lmcs.episciences.org/ Submitted Oct. 12, 2017 Published Sep. 05, 2018 A CATEGORICAL FOUNDATION FOR STRUCTURED REVERSIBLE FLOWCHART

More information

THE NUMBER OF UNARY CLONES CONTAINING THE PERMUTATIONS ON AN INFINITE SET

THE NUMBER OF UNARY CLONES CONTAINING THE PERMUTATIONS ON AN INFINITE SET THE NUMBER OF UNARY CLONES CONTAINING THE PERMUTATIONS ON AN INFINITE SET MICHAEL PINSKER Abstract. We calculate the number of unary clones (submonoids of the full transformation monoid) containing the

More information

Formal Techniques for Software Engineering: More on Denotational Semantics

Formal Techniques for Software Engineering: More on Denotational Semantics Formal Techniques for Software Engineering: More on Denotational Semantics Rocco De Nicola IMT Institute for Advanced Studies, Lucca rocco.denicola@imtlucca.it May 2013 Lesson 5 R. De Nicola (IMT-Lucca)

More information

MAT385 Final (Spring 2009): Boolean Algebras, FSM, and old stuff

MAT385 Final (Spring 2009): Boolean Algebras, FSM, and old stuff MAT385 Final (Spring 2009): Boolean Algebras, FSM, and old stuff Name: Directions: Problems are equally weighted. Show your work! Answers without justification will likely result in few points. Your written

More information

Outline for this Week

Outline for this Week Binomial Heaps Outline for this Week Binomial Heaps (Today) A simple, fexible, and versatile priority queue. Lazy Binomial Heaps (Today) A powerful building block for designing advanced data structures.

More information

A Semantic Framework for Program Debugging

A Semantic Framework for Program Debugging A Semantic Framework for Program Debugging State Key Laboratory of Software Development Environment Beihang University July 3, 2013 Outline 1 Introduction 2 The Key Points 3 A Structural Operational Semantics

More information

2 Deduction in Sentential Logic

2 Deduction in Sentential Logic 2 Deduction in Sentential Logic Though we have not yet introduced any formal notion of deductions (i.e., of derivations or proofs), we can easily give a formal method for showing that formulas are tautologies:

More information

Proof Techniques for Operational Semantics

Proof Techniques for Operational Semantics #1 Proof Techniques for Operational Semantics #2 Small-Step Contextual Semantics In small-step contextual semantics, derivations are not tree-structured A contextual semantics derivation is a sequence

More information

Comparing Goal-Oriented and Procedural Service Orchestration

Comparing Goal-Oriented and Procedural Service Orchestration Comparing Goal-Oriented and Procedural Service Orchestration M. Birna van Riemsdijk 1 Martin Wirsing 2 1 Technische Universiteit Delft, The Netherlands m.b.vanriemsdijk@tudelft.nl 2 Ludwig-Maximilians-Universität

More information

Algebra homework 8 Homomorphisms, isomorphisms

Algebra homework 8 Homomorphisms, isomorphisms MATH-UA.343.005 T.A. Louis Guigo Algebra homework 8 Homomorphisms, isomorphisms For every n 1 we denote by S n the n-th symmetric group. Exercise 1. Consider the following permutations: ( ) ( 1 2 3 4 5

More information

CATEGORICAL SKEW LATTICES

CATEGORICAL SKEW LATTICES CATEGORICAL SKEW LATTICES MICHAEL KINYON AND JONATHAN LEECH Abstract. Categorical skew lattices are a variety of skew lattices on which the natural partial order is especially well behaved. While most

More information

Gödel algebras free over finite distributive lattices

Gödel algebras free over finite distributive lattices TANCL, Oxford, August 4-9, 2007 1 Gödel algebras free over finite distributive lattices Stefano Aguzzoli Brunella Gerla Vincenzo Marra D.S.I. D.I.COM. D.I.C.O. University of Milano University of Insubria

More information

COMBINATORICS OF REDUCTIONS BETWEEN EQUIVALENCE RELATIONS

COMBINATORICS OF REDUCTIONS BETWEEN EQUIVALENCE RELATIONS COMBINATORICS OF REDUCTIONS BETWEEN EQUIVALENCE RELATIONS DAN HATHAWAY AND SCOTT SCHNEIDER Abstract. We discuss combinatorial conditions for the existence of various types of reductions between equivalence

More information

An effective perfect-set theorem

An effective perfect-set theorem An effective perfect-set theorem David Belanger, joint with Keng Meng (Selwyn) Ng CTFM 2016 at Waseda University, Tokyo Institute for Mathematical Sciences National University of Singapore The perfect

More information

Concurrency Semantics in Continuation-Passing Style The Companion Technical Report

Concurrency Semantics in Continuation-Passing Style The Companion Technical Report Concurrency Semantics in Continuation-Passing Style The Companion Technical Report Eneia Nicolae Todoran Technical University of Cluj-Napoca Department of Computer Science Baritiu Str. 28, 400027, Cluj-Napoca,

More information

A Formally Verified Interpreter for a Shell-like Programming Language

A Formally Verified Interpreter for a Shell-like Programming Language A Formally Verified Interpreter for a Shell-like Programming Language Claude Marché Nicolas Jeannerod Ralf Treinen VSTTE, July 22, 2017 Nicolas Jeannerod VSTTE 17 July 22, 2017 1 / 36 General goal The

More information

UNIT VI TREES. Marks - 14

UNIT VI TREES. Marks - 14 UNIT VI TREES Marks - 14 SYLLABUS 6.1 Non-linear data structures 6.2 Binary trees : Complete Binary Tree, Basic Terms: level number, degree, in-degree and out-degree, leaf node, directed edge, path, depth,

More information

EDA045F: Program Analysis LECTURE 3: DATAFLOW ANALYSIS 2. Christoph Reichenbach

EDA045F: Program Analysis LECTURE 3: DATAFLOW ANALYSIS 2. Christoph Reichenbach EDA045F: Program Analysis LECTURE 3: DATAFLOW ANALYSIS 2 Christoph Reichenbach In the last lecture... Eliminating Nested Expressions (Three-Address Code) Control-Flow Graphs Static Single Assignment Form

More information

Discrete Random Variables and Probability Distributions. Stat 4570/5570 Based on Devore s book (Ed 8)

Discrete Random Variables and Probability Distributions. Stat 4570/5570 Based on Devore s book (Ed 8) 3 Discrete Random Variables and Probability Distributions Stat 4570/5570 Based on Devore s book (Ed 8) Random Variables We can associate each single outcome of an experiment with a real number: We refer

More information

Decidability and Recursive Languages

Decidability and Recursive Languages Decidability and Recursive Languages Let L (Σ { }) be a language, i.e., a set of strings of symbols with a finite length. For example, {0, 01, 10, 210, 1010,...}. Let M be a TM such that for any string

More information

The Traveling Salesman Problem. Time Complexity under Nondeterminism. A Nondeterministic Algorithm for tsp (d)

The Traveling Salesman Problem. Time Complexity under Nondeterminism. A Nondeterministic Algorithm for tsp (d) The Traveling Salesman Problem We are given n cities 1, 2,..., n and integer distances d ij between any two cities i and j. Assume d ij = d ji for convenience. The traveling salesman problem (tsp) asks

More information

Half baked talk: Invariant logic

Half baked talk: Invariant logic Half baked talk: Invariant logic Quentin Carbonneaux November 6, 2015 1 / 21 Motivation Global invariants often show up: 1. resource safety (mem 0) 2. low-level code analysis (machine not crashed) 3. domain

More information

The proof of Twin Primes Conjecture. Author: Ramón Ruiz Barcelona, Spain August 2014

The proof of Twin Primes Conjecture. Author: Ramón Ruiz Barcelona, Spain   August 2014 The proof of Twin Primes Conjecture Author: Ramón Ruiz Barcelona, Spain Email: ramonruiz1742@gmail.com August 2014 Abstract. Twin Primes Conjecture statement: There are infinitely many primes p such that

More information

1 Graham Hutton, Programming in Haskell, 2nd ed., Cambridge. 2 Bryan O Sullivan, Don Stewart, and John Goerzen, Real World

1 Graham Hutton, Programming in Haskell, 2nd ed., Cambridge. 2 Bryan O Sullivan, Don Stewart, and John Goerzen, Real World Administrativia Legend: EDAF40/EDAN40: Functional Programming Introduction F1 F2 F3 F4 A1 Ö1 A2 EDAF40: 5hp, G2, programming focus EDAN40: 7,5hp, A, theory as well Fi: lectures for all Xi: lectures for

More information

CIS 500 Software Foundations Fall October. CIS 500, 6 October 1

CIS 500 Software Foundations Fall October. CIS 500, 6 October 1 CIS 500 Software Foundations Fall 2004 6 October CIS 500, 6 October 1 Midterm 1 is next Wednesday Today s lecture will not be covered by the midterm. Next Monday, review class. Old exams and review questions

More information

Basic Data Analysis. Stephen Turnbull Business Administration and Public Policy Lecture 4: May 2, Abstract

Basic Data Analysis. Stephen Turnbull Business Administration and Public Policy Lecture 4: May 2, Abstract Basic Data Analysis Stephen Turnbull Business Administration and Public Policy Lecture 4: May 2, 2013 Abstract Introduct the normal distribution. Introduce basic notions of uncertainty, probability, events,

More information

A Translation of Intersection and Union Types

A Translation of Intersection and Union Types A Translation of Intersection and Union Types for the λ µ-calculus Kentaro Kikuchi RIEC, Tohoku University kentaro@nue.riec.tohoku.ac.jp Takafumi Sakurai Department of Mathematics and Informatics, Chiba

More information

arxiv: v1 [cs.pl] 9 Sep 2014

arxiv: v1 [cs.pl] 9 Sep 2014 Innocent Strategies are Sheaves over Plays Deterministic, Non-deterministic and Probabilistic Innocence Takeshi Tsukada University of Oxford JSPS Postdoctoral Fellow for Research Abroad tsukada@cs.ox.ac.uk

More information

6. Continous Distributions

6. Continous Distributions 6. Continous Distributions Chris Piech and Mehran Sahami May 17 So far, all random variables we have seen have been discrete. In all the cases we have seen in CS19 this meant that our RVs could only take

More information

Homework 1 posted, due Friday, September 30, 2 PM. Independence of random variables: We say that a collection of random variables

Homework 1 posted, due Friday, September 30, 2 PM. Independence of random variables: We say that a collection of random variables Generating Functions Tuesday, September 20, 2011 2:00 PM Homework 1 posted, due Friday, September 30, 2 PM. Independence of random variables: We say that a collection of random variables Is independent

More information

Laurence Boxer and Ismet KARACA

Laurence Boxer and Ismet KARACA THE CLASSIFICATION OF DIGITAL COVERING SPACES Laurence Boxer and Ismet KARACA Abstract. In this paper we classify digital covering spaces using the conjugacy class corresponding to a digital covering space.

More information

Laurence Boxer and Ismet KARACA

Laurence Boxer and Ismet KARACA SOME PROPERTIES OF DIGITAL COVERING SPACES Laurence Boxer and Ismet KARACA Abstract. In this paper we study digital versions of some properties of covering spaces from algebraic topology. We correct and

More information

Scalar quantization to a signed integer

Scalar quantization to a signed integer Scalar quantization to a signed integer Kalle Rutanen March 4, 009 1 Introduction This paper discusses the scalar quantization of a real number range [ 1, 1] to a p-bit signed integer range [ p 1, p 1

More information

Tel Aviv University. and. Universitat des Saarlandes

Tel Aviv University. and. Universitat des Saarlandes Compiling Simple Assignments Mooly Sagiv el Aviv University sagiv@math.tau.ac.il and Reinhard Wilhelm Universitat des Saarlandes wilhelm@cs.uni-sb.de April 21, 1997 { Wilhelm/Maurer: Compiler Design {

More information

Continuous images of closed sets in generalized Baire spaces ESI Workshop: Forcing and Large Cardinals

Continuous images of closed sets in generalized Baire spaces ESI Workshop: Forcing and Large Cardinals Continuous images of closed sets in generalized Baire spaces ESI Workshop: Forcing and Large Cardinals Philipp Moritz Lücke (joint work with Philipp Schlicht) Mathematisches Institut, Rheinische Friedrich-Wilhelms-Universität

More information

Two Notions of Sub-behaviour for Session-based Client/Server Systems

Two Notions of Sub-behaviour for Session-based Client/Server Systems Two Notions of Sub-behaviour for Session-based Client/Server Systems Franco Barbanera 1 and Ugo de Liguoro 2 1 Dipartimento di Matematica e Informatica, Università di Catania 2 Dipartimento di Informatica,

More information

Computational Independence

Computational Independence Computational Independence Björn Fay mail@bfay.de December 20, 2014 Abstract We will introduce different notions of independence, especially computational independence (or more precise independence by

More information

Statistics for Business and Economics

Statistics for Business and Economics Statistics for Business and Economics Chapter 5 Continuous Random Variables and Probability Distributions Ch. 5-1 Probability Distributions Probability Distributions Ch. 4 Discrete Continuous Ch. 5 Probability

More information

Operational Semantics

Operational Semantics University of Science and Technology of China (USTC) 10/24/2011 Transition Semantics Program configurations: γ Γ def = Commands Σ Transitions between configurations: Γ ˆΓ where ˆΓ def = Γ {abort} Σ The

More information

3 Arbitrage pricing theory in discrete time.

3 Arbitrage pricing theory in discrete time. 3 Arbitrage pricing theory in discrete time. Orientation. In the examples studied in Chapter 1, we worked with a single period model and Gaussian returns; in this Chapter, we shall drop these assumptions

More information

Lecture Notes on Bidirectional Type Checking

Lecture Notes on Bidirectional Type Checking Lecture Notes on Bidirectional Type Checking 15-312: Foundations of Programming Languages Frank Pfenning Lecture 17 October 21, 2004 At the beginning of this class we were quite careful to guarantee that

More information

Strong normalisation and the typed lambda calculus

Strong normalisation and the typed lambda calculus CHAPTER 9 Strong normalisation and the typed lambda calculus In the previous chapter we looked at some reduction rules for intuitionistic natural deduction proofs and we have seen that by applying these

More information

Monotonicity and Polarity in Natural Logic

Monotonicity and Polarity in Natural Logic 1/69 Monotonicity and Polarity in Natural Logic Larry Moss, Indiana University Workshop on Semantics for Textual Inference, July 10, 2011 2/69 Natural Logic from Annie Zaenen & Lauri Kartunnen s Course

More information

Strongly compact Magidor forcing.

Strongly compact Magidor forcing. Strongly compact Magidor forcing. Moti Gitik June 25, 2014 Abstract We present a strongly compact version of the Supercompact Magidor forcing ([3]). A variation of it is used to show that the following

More information

A Consistent Semantics of Self-Adjusting Computation

A Consistent Semantics of Self-Adjusting Computation A Consistent Semantics of Self-Adjusting Computation Umut A. Acar 1 Matthias Blume 1 Jacob Donham 2 December 2006 CMU-CS-06-168 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213

More information

arxiv: v1 [math.lo] 24 Feb 2014

arxiv: v1 [math.lo] 24 Feb 2014 Residuated Basic Logic II. Interpolation, Decidability and Embedding Minghui Ma 1 and Zhe Lin 2 arxiv:1404.7401v1 [math.lo] 24 Feb 2014 1 Institute for Logic and Intelligence, Southwest University, Beibei

More information

Syllogistic Logics with Verbs

Syllogistic Logics with Verbs Syllogistic Logics with Verbs Lawrence S Moss Department of Mathematics Indiana University Bloomington, IN 47405 USA lsm@csindianaedu Abstract This paper provides sound and complete logical systems for

More information

Reasoning about B+ Trees with Operational Semantics and Separation Logic

Reasoning about B+ Trees with Operational Semantics and Separation Logic MFPS 2008 Reasoning about B+ Trees with Operational Semantics and Separation Logic Alan Sexton and Hayo Thielecke 1 School of Computer Science, University of Birmingham, UK Abstract The B+ tree is an ordered

More information

Permutation Factorizations and Prime Parking Functions

Permutation Factorizations and Prime Parking Functions Permutation Factorizations and Prime Parking Functions Amarpreet Rattan Department of Combinatorics and Optimization University of Waterloo Waterloo, ON, Canada N2L 3G1 arattan@math.uwaterloo.ca June 10,

More information

Administrativia. Textbooks. Software. EDAF40/EDAN40: Functional Programming Introduction

Administrativia. Textbooks. Software. EDAF40/EDAN40: Functional Programming Introduction Administrativia EDAF40/EDAN40: Functional Programming Introduction Jacek Malec Dept. of Computer Science, Lund University, Sweden March 20th, 2017 Jacek Malec, http://rss.cs.lth.se 1(21) Standard notification:

More information

Global Joint Distribution Factorizes into Local Marginal Distributions on Tree-Structured Graphs

Global Joint Distribution Factorizes into Local Marginal Distributions on Tree-Structured Graphs Teaching Note October 26, 2007 Global Joint Distribution Factorizes into Local Marginal Distributions on Tree-Structured Graphs Xinhua Zhang Xinhua.Zhang@anu.edu.au Research School of Information Sciences

More information

A Knowledge-Theoretic Approach to Distributed Problem Solving

A Knowledge-Theoretic Approach to Distributed Problem Solving A Knowledge-Theoretic Approach to Distributed Problem Solving Michael Wooldridge Department of Electronic Engineering, Queen Mary & Westfield College University of London, London E 4NS, United Kingdom

More information

Operational Semantics

Operational Semantics University of Science and Technology of China (USTC) 07/19/2011 Transition Semantics Program configurations: γ Γ def = Commands Σ Transitions between configurations: Γ ˆΓ where ˆΓ def = Γ {abort} Σ The

More information

Hedging Strategy Simulation and Backtesting with DSLs, GPUs and the Cloud

Hedging Strategy Simulation and Backtesting with DSLs, GPUs and the Cloud Hedging Strategy Simulation and Backtesting with DSLs, GPUs and the Cloud GPU Technology Conference 2013 Aon Benfield Securities, Inc. Annuity Solutions Group (ASG) This document is the confidential property

More information

Discrete Mathematics for CS Spring 2008 David Wagner Final Exam

Discrete Mathematics for CS Spring 2008 David Wagner Final Exam CS 70 Discrete Mathematics for CS Spring 2008 David Wagner Final Exam PRINT your name:, (last) SIGN your name: (first) PRINT your Unix account login: Your section time (e.g., Tue 3pm): Name of the person

More information

An Adaptive Characterization of Signed Systems for Paraconsistent Reasoning

An Adaptive Characterization of Signed Systems for Paraconsistent Reasoning An Adaptive Characterization of Signed Systems for Paraconsistent Reasoning Diderik Batens, Joke Meheus, Dagmar Provijn Centre for Logic and Philosophy of Science University of Ghent, Belgium {Diderik.Batens,Joke.Meheus,Dagmar.Provijn}@UGent.be

More information

Grainless Semantics without Critical Regions

Grainless Semantics without Critical Regions Grainless Semantics without Critical Regions John C. Reynolds Department of Computer Science Carnegie Mellon University April 11, 2007 (corrected April 27, 2007) (Work in progress, jointly with Ruy Ley-Wild)

More information

1 Solutions to Tute09

1 Solutions to Tute09 s to Tute0 Questions 4. - 4. are straight forward. Q. 4.4 Show that in a binary tree of N nodes, there are N + NULL pointers. Every node has outgoing pointers. Therefore there are N pointers. Each node,

More information

Introduction to Type Theory August 2007 Types Summer School Bertinoro, It. Herman Geuvers Nijmegen NL. Lecture 3: Polymorphic λ-calculus

Introduction to Type Theory August 2007 Types Summer School Bertinoro, It. Herman Geuvers Nijmegen NL. Lecture 3: Polymorphic λ-calculus Introduction to Type Theory August 2007 Types Summer School Bertinoro, It Herman Geuvers Nijmegen NL Lecture 3: Polymorphic λ-calculus 1 Why Polymorphic λ-calculus? Simple type theory λ is not very expressive

More information

arxiv: v1 [math.co] 31 Mar 2009

arxiv: v1 [math.co] 31 Mar 2009 A BIJECTION BETWEEN WELL-LABELLED POSITIVE PATHS AND MATCHINGS OLIVIER BERNARDI, BERTRAND DUPLANTIER, AND PHILIPPE NADEAU arxiv:0903.539v [math.co] 3 Mar 009 Abstract. A well-labelled positive path of

More information

SOLVENCY AND CAPITAL ALLOCATION

SOLVENCY AND CAPITAL ALLOCATION SOLVENCY AND CAPITAL ALLOCATION HARRY PANJER University of Waterloo JIA JING Tianjin University of Economics and Finance Abstract This paper discusses a new criterion for allocation of required capital.

More information

4 Martingales in Discrete-Time

4 Martingales in Discrete-Time 4 Martingales in Discrete-Time Suppose that (Ω, F, P is a probability space. Definition 4.1. A sequence F = {F n, n = 0, 1,...} is called a filtration if each F n is a sub-σ-algebra of F, and F n F n+1

More information

Homework #4. CMSC351 - Spring 2013 PRINT Name : Due: Thu Apr 16 th at the start of class

Homework #4. CMSC351 - Spring 2013 PRINT Name : Due: Thu Apr 16 th at the start of class Homework #4 CMSC351 - Spring 2013 PRINT Name : Due: Thu Apr 16 th at the start of class o Grades depend on neatness and clarity. o Write your answers with enough detail about your approach and concepts

More information

Compositional Models in Valuation-Based Systems

Compositional Models in Valuation-Based Systems Appeared in: Belief Functions: Theory and Applications, T. Denoeux and M.-H. Masson (eds.), Advances in Intelligent and Soft Computing 164, 2012, pp. 221--228, Springer-Verlag, Berlin. Compositional Models

More information

Semantics of an Intermediate Language for Program Transformation

Semantics of an Intermediate Language for Program Transformation Semantics of an Intermediate Language for Program Transformation Sigurd Schneider Master Thesis Proposal Talk Advisors: Prof. Dr. Sebastian Hack, Prof. Dr. Gert Smolka Saarland University Graduate School

More information

Examples: Random Variables. Discrete and Continuous Random Variables. Probability Distributions

Examples: Random Variables. Discrete and Continuous Random Variables. Probability Distributions Random Variables Examples: Random variable a variable (typically represented by x) that takes a numerical value by chance. Number of boys in a randomly selected family with three children. Possible values:

More information

NASDAQ OMX OMS II. Margin methodology guide for Equity and Index derivatives. 8/29/2014 NASDAQ OMX Clearing (NOMX)

NASDAQ OMX OMS II. Margin methodology guide for Equity and Index derivatives. 8/29/2014 NASDAQ OMX Clearing (NOMX) NASDAQ OMX OMS II Margin methodology guide for Equity and Index derivatives 8/29/2014 NASDAQ OMX Clearing (NOMX) DOCUMENT INFORMATION Date Version Comments 2013-07-31 1.0 Initial 2014-08-29 1.1 Margin

More information