Probabilistic NetKAT
|
|
- Randall Reed
- 6 years ago
- Views:
Transcription
1 Probabilistic NetKAT Nate Foster (Cornell) Dexter Kozen (Cornell) Konstantinos Mamouras (Penn) Mark Reitblatt (Facebook) Alexandra Silva (UCL) Steffen Smolka (Cornell)
2 Team ProbNetKAT Nate Foster Dexter Kozen Mark Reitblatt Konstantinos Mamouras [ESOP '16] Alexandra Silva Steffen Smolka
3 Team ProbNetKAT Nate Foster Dexter Kozen Mark Reitblatt Konstantinos Mamouras Alexandra Silva Steffen Smolka
4 Context: Software-Defined Networking
5 Context: Software-Defined Networking High Performance ` Nightmare to Maintain & Control at Scale
6 Networks have become programmable (just now!) high-level program low-level rule tables Firewall Pattern Pattern Pattern ; Route Compiler Actions Actions Actions dstport=22 Drop dstport=22 Drop srcip= dstport=22 Forward Drop srcip= /8 Forward 1 srcip= */8 Forward Forward 1 */8 Forward 2 1 * Forward 2 2 System SDN switches
7 Networks have become programmable (just now!) high-level program low-level rule tables Firewall Pattern Pattern Pattern ; Route Compiler Actions Actions Actions dstport=22 Drop dstport=22 Drop srcip= dstport=22 Forward Drop srcip= /8 Forward 1 srcip= */8 Forward Forward 1 */8 Forward 2 1 * Forward 2 2 System PL Problems: programming abstractions compilation verification synthesis, SDN switches
8 NetKAT: A Success Story programming language, modeling language, programming logic
9 NetKAT: A Success Story programming language, modeling language, programming logic powerful tools Compiler Virtualization Automatic Verification basis of many systems
10 NetKAT: A Success Story programming language, modeling language, programming logic rich theory Enables powerful tools [ p ] denotational semantics p q sound & complete axiomatization Compiler Virtualization Automatic Verification automata theory symbolic representation basis of many systems
11 ProbNetKAT: Not Yet A Success Story programming language, modeling language, programming logic rich theory Enables powerful tools [ p ] denotational semantics
12 ProbNetKAT: Not Yet A Success Story programming language, modeling language, programming logic rich theory Enables powerful tools [ p ] denotational semantics
13 ProbNetKAT: Not Yet A Success Story programming language, modeling language, programming logic rich theory Enables powerful tools [ p ] denotational semantics
14 Language
15 Model Packets are records of values. Programs are functions on packets. { switch = A, port = 3, ethsrc = 8:8:::::8:8, ethdst = 2:2:::::2:2, vlan = 8, ipsrc = , ipdst = ,... }
16 Review: NetKAT Language pol ::= false true field = val field := val pol 1 + pol 2 pol 1 ; pol 2!pol pol * S S'
17 Review: NetKAT Language pol ::= false Boolean Algebra true field = val field := val pol 1 + pol 2 pol 1 ; pol 2!pol pol * S S'
18 Review: NetKAT Language pol ::= false true field = val field := val pol 1 + pol 2 Boolean Algebra + Kleene Algebra "Regular Expressions" pol 1 ; pol 2!pol pol * S S'
19 Review: NetKAT Language pol ::= false true field = val field := val pol 1 + pol 2 pol 1 ; pol 2!pol pol * Boolean Algebra + Kleene Algebra "Regular Expressions" + Packet Primitives S S'
20 Review: NetKAT Language pol ::= false Boolean Algebra true if p then q else r p;q +!p;r field = val field := val ` while p do q p;q*;!p pol 1 + pol 2 + Kleene Algebra "Regular Expressions" pol 1 ; pol 2!pol pol * + Packet Primitives S S'
21 Review: NetKAT Semantics pol ::= false true field = val field := val pol 1 + pol 2 pol 1 ; pol 2!pol pol * S S'
22 Review: NetKAT Semantics pol ::= Local NetKAT: input-output behavior of switches false true field = val field := val pol 1 + pol 2 pol Packet Packet Set pol 1 ; pol 2!pol pol * S S'
23 Review: NetKAT Semantics pol ::= Local NetKAT: input-output behavior of switches false true field = val field := val pol 1 + pol 2 pol Packet Packet Set pol 1 ; pol 2!pol pol * Global NetKAT: network-wide behavior S S' pol History History Set
24 Example A B
25 Local NetKAT Program A B pol A pol B
26 Local NetKAT Program A B port:=3???
27 Local NetKAT Program A B port=1; tag:=1; port:=3 + port=2; tag:=2; port:=3???
28 Local NetKAT Program A B port=1; tag:=1; port:=3 + port=2; tag:=2; port:=3 tag=1; port:=5 + tag=2; port:=6
29 Global NetKAT Program A B pol
30 Global NetKAT Program A B port=1; A B; port:=5 + port=2; A B; port:=6
31 Virtual NetKAT Program A B
32 Virtual NetKAT Program virtual "big switch" A B
33 Virtual NetKAT Program virtual "big switch" A B port=1; port:=5 + port=2; port:=6 even simpler!
34 Probabilistic NetKAT
35 Probabilistic NetKAT pol ::= false true field = val field := val pol 1 + pol 2 pol 1 ; pol 2 pol 1 r pol 2!pol pol * S S'
36 Probabilistic NetKAT pol ::= false Randomized Routing pt:=1.5 pt:=2 true field = val field := val pol 1 + pol 2 Link Failure A B.99 false pol 1 ; pol 2 pol 1 r pol 2!pol pol * S S'
37 Probabilistic NetKAT pol ::= false Randomized Routing pt:=1.5 pt:=2 true field = val field := val pol 1 + pol 2 pol 1 ; pol 2 pol 1 r pol 2!pol pol * S S' Link Failure A B.99 false Expected Congestion? Probability of Delivery? Quantitative Reasoning!
38 Denotational Semantics [ESOP '16] Before: pol History History Set pol History Dist(History)
39 Denotational Semantics [ESOP '16] Before: pol History History Set pol History Dist(History) Problem: Can't express correlation! pt:=1 0.5 pt:=2 (pt:=1+pt:=2) 0.5 false
40 Denotational Semantics [ESOP '16] Before: pol History History Set pol History Dist(History Set) pol History History Set [0,1]
41 Denotational Semantics [ESOP '16] Before: pol History History Set pol History Dist(History Set) pol History History Set [0,1] Problem: Some distributions give pr=0 to all points. p ; (S S ; p)*
42 Denotational Semantics [ESOP '16] Before: pol History History Set pol History Dist(History Set) pol History B [0,1] where B are Borel sets of the Cantor Space
43 Denotational Semantics [ESOP '16] Before: pol History History Set pol History Dist(History Set) pol History B [0,1] where B are Borel sets of the Cantor Space B is set of set of set of histories! uncountable set of uncountable sets!
44 Denotational Semantics [ESOP '16] Before: pol History History Set pol History Dist(History Set) Math works out, but nightmare ` to deal with! pol History B [0,1] where B are Borel sets of the Cantor Space B is set of set of set of histories! uncountable set of uncountable sets!
45 Problem: Know how to model properties mathematically Program p, Property X: 2 H -> R, Input Distribution μ E[X] = X(a) [ p ](μ, da) (Lebesgue Integral over 2 H ) but not how to compute the answer!
46 Positive Results
47 Measures μ : B->[0,1] are "finitely observable". (I.e., if μ1 μ2 there exists a finite witness!) Automata should be able to capture μ!
48 We have identified an order p q that should allow (arbitrarily close) approximation! p (0) p (1) p (2) p*
49 Wrap-Up Classical (continuous) probability theory doesn't come with algorithms out of the box Need to develop domain-specific theory & algorithms Will likely generalize to other domains
50 Questions?
A Coalgebraic Decision Procedure for NetKAT
A Coalgebraic Decision Procedure for NetKAT Dexter Kozen Cornell University MFPS XXX June 12, 2014 Dexter Kozen June 12, 2014 A Coalgebraic Decision Procedure for NetKAT 1 / 44 NetKAT Collaborators Carolyn
More informationProbabilistic NetKAT
Probabilistic NetKAT Nate Foster 1(B), Dexter Kozen 1, Konstantinos Mamouras 2, Mark Reitblatt 1, and Alexandra Silva 3 1 Cornell University, New York, USA jnfoster@cs.cornell.edu 2 University of Pennsylvania,
More informationCompleteness and Incompleteness in nominal Kleene algebra
1/35 Completeness and Incompleteness in nominal Kleene algebra Dexter Kozen, Konstantinos Mamouras, Alexandra Silva Cornell University, University College London & HasLab INESC TEC September 28th, 2015
More informationAn Algebraic Approach to Automatic Reasoning for NetKAT Based on its Operational Semantics
An Algebraic Approach to Automatic Reasoning for NetKAT Based on its Operational Semantics Yuxin Deng, Min Zhang, and Guoqing Lei Shanghai Key Laboratory of Trustworthy Computing, MOE International Joint
More informationNetKAT: Semantic Foundations for Networks. Nate Foster. Cornell University. Cornell University Computing and Information Science October 5, 2013
Technical Report NetKAT: Semantic Foundations for Networks Carolyn Jane Anderson Swarthmore College Nate Foster Cornell University Arjun Guha Cornell University Jean-Baptiste Jeannin Dexter Kozen Cole
More informationResearch Statement Christopher Hardin
Research Statement Christopher Hardin Brief summary of research interests. I am interested in mathematical logic and theoretical computer science. Specifically, I am interested in program logics, particularly
More informationAxiomatic Semantics. Operational semantics. Good for. Not good for automatic reasoning about programs
Review Operational semantics relatively l simple many flavors (small vs. big) not compositional (rule for while) Good for describing language implementation reasoning about properties of the language eg.
More informationDynamic Semantics. Dynamic Semantics. Operational Semantics Axiomatic Semantics Denotational Semantic. Operational Semantics
Dynamic Semantics Operational Semantics Denotational Semantic Dynamic Semantics Operational Semantics Operational Semantics Describe meaning by executing program on machine Machine can be actual or simulated
More informationIntroduction to Kleene Algebras
Introduction to Kleene Algebras Riccardo Pucella Basic Notions Seminar December 1, 2005 Introduction to Kleene Algebras p.1 Idempotent Semirings An idempotent semiring is a structure S = (S, +,, 1, 0)
More informationKleene Algebra and Arden s Theorem. Anshul Kumar Inzemamul Haque
Kleene Algebra and Arden s Theorem Anshul Kumar Inzemamul Haque Motivation Regular Expression is a Kleene Algebra. We can use the properties and theorems of Kleene Algebra to simplify regular expressions
More informationIntroduction to Kleene Algebra Lecture 14 CS786 Spring 2004 March 15, 2004
Introduction to Kleene Algebra Lecture 14 CS786 Spring 2004 March 15, 2004 KAT and Hoare Logic In this lecture and the next we show that KAT subsumes propositional Hoare logic (PHL). Thus the specialized
More informationGossip in NetKAT. MSc Thesis (Afstudeerscriptie) written by. Jana Wagemaker (born March 14th, 1993 in Amsterdam, Netherlands)
Gossip in NetKAT MSc Thesis (Afstudeerscriptie) written by Jana Wagemaker (born March 14th, 1993 in Amsterdam, Netherlands) under the supervision of Prof Dr D. J. N. van Eijck, and submitted to the Board
More informationAbstractions for. Software-defined Networks
Abstractions for Software-defined Networks Cole Nathan Schlesinger A Dissertation Presented to the Faculty of Princeton University in Candidacy for the Degree of Doctor of Philosophy Recommended for Acceptance
More informationRegular Expressions Kleene s Theorem Equation-based alternate construction. Regular Expressions. Deepak D Souza
Regular Expressions Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. 16 August 2012 Outline 1 Regular Expressions 2 Kleene s Theorem 3 Equation-based
More informationBob Brown, CCBC Essex Math 163 College Algebra, Chapter 1 Section 7 COMPLETED 1 Linear, Compound, and Absolute Value Inequalities
Bob Brown, CCBC Essex Math 163 College Algebra, Chapter 1 Section 7 COMPLETED 1 What is the following symbol? < The inequality symbols < > are used to compare two real numbers. The meaning of anyone of
More informationAn Overview of Residuated Kleene Algebras and Lattices Peter Jipsen Chapman University, California. 2. Background: Semirings and Kleene algebras
An Overview of Residuated Kleene Algebras and Lattices Peter Jipsen Chapman University, California 1. Residuated Lattices with iteration 2. Background: Semirings and Kleene algebras 3. A Gentzen system
More informationFormalization of Normal Random Variables
Formalization of Normal Random Variables M. Qasim, O. Hasan, M. Elleuch, S. Tahar Hardware Verification Group ECE Department, Concordia University, Montreal, Canada CICM 16 July 28, 2016 2 Outline n Introduction
More informationPropositions. c D. Poole and A. Mackworth 2010 Artificial Intelligence, Lecture 5.1, Page 1
Propositions An interpretation is an assignment of values to all variables. A model is an interpretation that satisfies the constraints. Often we don t want to just find a model, but want to know what
More informationKleene Algebra Modulo Theories
1 Kleene Algebra Modulo Theories RYAN BECKETT, Princeton University ERIC CAMPBELL, Pomona College MICHAEL GREENBERG, Pomona College Kleene algebras with tests (KATs) offer sound, complete, and decidable
More informationIntroduction to Kleene Algebra Lecture 15 CS786 Spring 2004 March 15 & 29, 2004
Introduction to Kleene Algebra Lecture 15 CS786 Spring 2004 March 15 & 29, 2004 Completeness of KAT In this lecture we show that the equational theories of the Kleene algebras with tests and the star-continuous
More informationKleene Algebra with Equations
Kleene Algebra with Equations Dexter Kozen and Konstantinos Mamouras Computer Science Department, Cornell University, Ithaca, NY 14853-7501, USA {kozen,mamouras}@cs.cornell.edu Abstract. We identify sufficient
More informationThe Legacy of Hilbert, Gödel, Gentzen and Turing
The Legacy of Hilbert, Gödel, Gentzen and Turing Amílcar Sernadas Departamento de Matemática - Instituto Superior Técnico Security and Quantum Information Group - Instituto de Telecomunicações TULisbon
More informationConstructive Formalization of Regular Languages
Constructive Formalization of Regular Languages Jan-Oliver Kaiser Advisors: Christian Doczkal, Gert Smolka Supervisor: Gert Smolka UdS November 7, 2012 Jan-Oliver Kaiser (UdS) Constr. Formalization of
More informationEvery time has a value associated with it, not just some times. A variable can take on any value within a range
Digital Logic Circuits Binary Logic and Gates Logic Simulation Boolean Algebra NAND/NOR and XOR gates Decoder fundamentals Half Adder, Full Adder, Ripple Carry Adder Analog vs Digital Analog Continuous»
More informationKleene Algebra with Equations
Kleene Algebra with Equations Dexter Kozen and Konstantinos Mamouras Computer Science Department, Cornell University, Ithaca, NY 14853-7501, USA {kozen,mamouras}@cs.cornell.edu Abstract. We identify sufficient
More informationReasoning About Imperative Programs. COS 441 Slides 10b
Reasoning About Imperative Programs COS 441 Slides 10b Last time Hoare Logic: { P } C { Q } Agenda If P is true in the initial state s. And C in state s evaluates to s. Then Q must be true in s. Program
More informationSome Results on (Synchronous) Kleene Algebra with Tests
Some Results on (Synchronous) Kleene Algebra with Tests Sabine Broda António Machiavelo Nelma Moreira Rogério Reis Ricardo Almeida Sílvia Cavadas Faculty of Sciences, University of Porto, Portugal 1 Computer
More informationEDA045F: Program Analysis LECTURE 10: TYPES 1. Christoph Reichenbach
EDA045F: Program Analysis LECTURE 10: TYPES 1 Christoph Reichenbach In the last lecture... Performance Counters Challenges in Dynamic Performance Analysis Taint Analysis Binary Instrumentation 2 / 44 Types
More informationSafety and Reliability of Embedded Systems. (Sicherheit und Zuverlässigkeit eingebetteter Systeme) Fault Tree Analysis Obscurities and Open Issues
(Sicherheit und Zuverlässigkeit eingebetteter Systeme) Fault Tree Analysis Obscurities and Open Issues Content What are Events? Examples for Problematic Event Semantics Inhibit, Enabler / Conditioning
More informationOperational semantics for disintegration
Operational semantics for disintegration Chung-chieh Shan (Indiana University) Norman Ramsey (Tufts University) Mathematical Foundations of Programming Semantics 2016-05-25 1 What is semantics for? 1.
More informationCS 226: Digital Logic Design
CS 226: Digital Logic Design 0 1 1 I S 0 1 0 S Department of Computer Science and Engineering, Indian Institute of Technology Bombay. 1 of 29 Objectives In this lecture we will introduce: 1. Logic functions
More informationBoolean algebra. Examples of these individual laws of Boolean, rules and theorems for Boolean algebra are given in the following table.
The Laws of Boolean Boolean algebra As well as the logic symbols 0 and 1 being used to represent a digital input or output, we can also use them as constants for a permanently Open or Closed circuit or
More informationSemantic Foundations for Probabilistic Programming
Semantic Foundations for Probabilistic Programming Chris Heunen Ohad Kammar, Sam Staton, Frank Wood, Hongseok Yang 1 / 21 Semantic foundations programs mathematical objects s1 s2 2 / 21 Semantic foundations
More informationEquational Theory of Kleene Algebra
Introduction to Kleene Algebra Lecture 7 CS786 Spring 2004 February 16, 2004 Equational Theory of Kleene Algebra We now turn to the equational theory of Kleene algebra. This and the next lecture will be
More informationRecursive descent for grammars with contexts
39th International Conference on Current Trends in Theory and Practice of Computer Science Špindleruv Mlýn, Czech Republic Recursive descent parsing for grammars with contexts Ph.D. student, Department
More informationAxiomatic Semantics. Lecture 9 CS 565 2/12/08
Axiomatic Semantics Lecture 9 CS 565 2/12/08 Axiomatic Semantics Operational semantics describes the meaning of programs in terms of the execution steps taken by an abstract machine Denotational semantics
More informationIntroduction to Computer Programming
Introduction to Computer Programming Lecture 01 Software engineering is a field of engineering, for designing and writing programs for computers or other electronic devices. A software engineer, or programmer,
More informationA Brief Introduction to Model Checking
A Brief Introduction to Model Checking Jan. 18, LIX Page 1 Model Checking A technique for verifying finite state concurrent systems; a benefit on this restriction: largely automatic; a problem to fight:
More informationCausality Interfaces and Compositional Causality Analysis
Causality Interfaces and Compositional Causality Analysis Edward A. Lee Haiyang Zheng Ye Zhou {eal,hyzheng,zhouye}@eecs.berkeley.edu Center for Hybrid and Embedded Software Systems (CHESS) Department of
More informationSimply Typed Lambda Calculus
Simply Typed Lambda Calculus Language (ver1) Lambda calculus with boolean values t ::= x variable x : T.t abstraction tt application true false boolean values if ttt conditional expression Values v ::=
More informationSolutions. CS 2800 Fall 2017 Final exam Friday, December 8. NetID: 1. Modular arithmetic [9 pts]
S 28 Fall 27 Final exam Friday, December 8. Modular arithmetic [9 pts] Solutions (a) [5 pts] Let d j d j... d 2 d d be the base representation of n. Use equivalence classes to prove that if n is a multiple
More informationPropositional Logic: Semantics and an Example
Propositional Logic: Semantics and an Example CPSC 322 Logic 2 Textbook 5.2 Propositional Logic: Semantics and an Example CPSC 322 Logic 2, Slide 1 Lecture Overview 1 Recap: Syntax 2 Propositional Definite
More informationRegular Expressions Kleene s Theorem Equation-based alternate construction. Regular Expressions. Deepak D Souza
Regular Expressions Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. 11 August 2011 Outline 1 Regular Expressions 2 Kleene s Theorem 3 Equation-based
More informationDecision Methods for Concurrent Kleene Algebra with Tests : Based on Derivative
Decision Methods for Concurrent Kleene Algebra with Tests : Based on Derivative Yoshiki Nakamura Tokyo Instutute of Technology, Oookayama, Meguroku, Japan, nakamura.y.ay@m.titech.ac.jp Abstract. Concurrent
More informationILP = Logic, CS, ML Stop counting, start reasoning
ILP = Logic, CS, ML Stop counting, start reasoning Gilles Richard AOC team The story so far Several actors K. Brouwer K. Godel J. Herbrand A. Colmerauer R. Kowalski S. Muggleton L. Brouwer (1881-1966)
More informationLecture 4 Event Systems
Lecture 4 Event Systems This lecture is based on work done with Mark Bickford. Marktoberdorf Summer School, 2003 Formal Methods One of the major research challenges faced by computer science is providing
More informationComputer Science Introductory Course MSc - Introduction to Java
Computer Science Introductory Course MSc - Introduction to Java Lecture 1: Diving into java Pablo Oliveira ENST Outline 1 Introduction 2 Primitive types 3 Operators 4 5 Control Flow
More informationIntroduction to Artificial Intelligence Propositional Logic & SAT Solving. UIUC CS 440 / ECE 448 Professor: Eyal Amir Spring Semester 2010
Introduction to Artificial Intelligence Propositional Logic & SAT Solving UIUC CS 440 / ECE 448 Professor: Eyal Amir Spring Semester 2010 Today Representation in Propositional Logic Semantics & Deduction
More information22c:145 Artificial Intelligence
22c:145 Artificial Intelligence Fall 2005 Propositional Logic Cesare Tinelli The University of Iowa Copyright 2001-05 Cesare Tinelli and Hantao Zhang. a a These notes are copyrighted material and may not
More informationDiscrete Mathematics and Logic II. Regular Sets
Discrete Mathematics and Logic II. Regular Sets SFWR ENG 2FA3 Ryszard Janicki Winter 24 Acknowledgments: Material based on Automata and Computability by Dexter C. Kozen (Chapter 4). Ryszard Janicki Discrete
More informationON INDUCTION VS. *-CONTINUITY. Dexter Kozen. IBM Thomas L Watson Research Center Yorktown Heights, New York 10598
ON INDUCTION VS. *-CONTINUITY Dexter Kozen IBM Thomas L Watson Research Center Yorktown Heights, New York 10598 Abstract. In this paper we study the relative expressibility of the infinitary *-continuity
More informationPart II Logic and Set Theory
Part II Logic and Set Theory Theorems Based on lectures by I. B. Leader Notes taken by Dexter Chua Lent 2015 These notes are not endorsed by the lecturers, and I have modified them (often significantly)
More informationLecture 2: Axiomatic semantics
Chair of Software Engineering Trusted Components Prof. Dr. Bertrand Meyer Lecture 2: Axiomatic semantics Reading assignment for next week Ariane paper and response (see course page) Axiomatic semantics
More informationPositive provability logic
Positive provability logic Lev Beklemishev Steklov Mathematical Institute Russian Academy of Sciences, Moscow November 12, 2013 Strictly positive modal formulas The language of modal logic extends that
More informationA Coalgebraic Decision Procedure for NetKAT
A Coalgebraic Decision Procedure for NetKAT Nate Foster Cornell University Dexter Kozen Cornell University Matthew Milano Cornell University Alexandra Silva Radboud University Nijmegen Laure Thompson Cornell
More informationA Stochastic Lambda-Calculus for Probabilistic Programming
A Stochastic Lambda-Calculus for Probabilistic Programming (Preliminary Report) Radu Mardare, Prakash Panangaden, and Dana Scott Logical Structures in Computation Reunion Workshop December 2017 Randomizing
More informationHalting and Equivalence of Schemes over Recursive Theories
Halting and Equivalence of Schemes over Recursive Theories Dexter Kozen Computer Science Department, Cornell University, Ithaca, New York 14853-7501, USA Abstract Let Σ be a fixed first-order signature.
More informationKAT + B! Niels Bjørn Bugge Grathwohl. Abstract. 1. Introduction. University of Copenhagen
KAT + B! Niels Bjørn Bugge Grathwohl University of Copenhagen bugge@diku.dk Dexter Kozen Konstantinos Mamouras Cornell University {kozen,mamouras}@cs.cornell.edu Abstract It is known that certain program
More informationLogic Synthesis and Verification
Logic Synthesis and Verification Boolean Algebra Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 2014 1 2 Boolean Algebra Reading F. M. Brown. Boolean Reasoning:
More informationHalting and Equivalence of Program Schemes in Models of Arbitrary Theories
Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Dexter Kozen Cornell University, Ithaca, New York 14853-7501, USA, kozen@cs.cornell.edu, http://www.cs.cornell.edu/~kozen In Honor
More informationCS 4110 Programming Languages & Logics. Lecture 16 Programming in the λ-calculus
CS 4110 Programming Languages & Logics Lecture 16 Programming in the λ-calculus 30 September 2016 Review: Church Booleans 2 We can encode TRUE, FALSE, and IF, as: TRUE λx. λy. x FALSE λx. λy. y IF λb.
More informationIntroduction to Kleene Algebra Lecture 13 CS786 Spring 2004 March 15, 2004
Introduction to Kleene Algebra Lecture 13 CS786 Spring 2004 March 15, 2004 Models of KAT In this lecture we show that the equational theories of KAT, KAT (the star-continuous Kleene algebras with tests),
More informationPropositional and Predicate Logic
Formal Verification of Software Propositional and Predicate Logic Bernhard Beckert UNIVERSITÄT KOBLENZ-LANDAU B. Beckert: Formal Verification of Software p.1 Propositional Logic: Syntax Special symbols
More informationChapter 18 Section 8.5 Fault Trees Analysis (FTA) Don t get caught out on a limb of your fault tree.
Chapter 18 Section 8.5 Fault Trees Analysis (FTA) Don t get caught out on a limb of your fault tree. C. Ebeling, Intro to Reliability & Maintainability Engineering, 2 nd ed. Waveland Press, Inc. Copyright
More informationFinite Automata and Languages
CS62, IIT BOMBAY Finite Automata and Languages Ashutosh Trivedi Department of Computer Science and Engineering, IIT Bombay CS62: New Trends in IT: Modeling and Verification of Cyber-Physical Systems (2
More informationVerifying Probabilistic Programs using the HOL Theorem Prover Joe Hurd p.1/32
Verifying Probabilistic Programs using the HOL Theorem Prover Joe Hurd joe.hurd@cl.cam.ac.uk University of Cambridge Verifying Probabilistic Programs using the HOL Theorem Prover Joe Hurd p.1/32 Contents
More informationOn-the-Fly Model Checking for Extended Action-Based Probabilistic Operators
On-the-Fly Model Checking for Extended Action-Based Probabilistic Operators Radu Mateescu and José Ignacio Requeno Inria Grenoble and LIG / Convecs http://convecs.inria.fr SPIN 2016 - Eindhoven, March
More informationMath6100 Day 8 Notes 6.1, 6.2 & 6.3, Area
Math6100 Day 8 Notes 6.1, 6.2 & 6.3, Area 6.1 Area of Polygonal Regions Let's first derive formulas for the area of these shapes. 1. Rectangle 2. Parallelogram 3. Triangle 4. Trapezoid 1 Ex 1: Find the
More informationThe Hoare Logic of Deterministic and Nondeterministic Monadic Recursion Schemes
The Hoare Logic of Deterministic and Nondeterministic Monadic Recursion Schemes Konstantinos Mamouras Cornell University mamouras@cs.cornell.edu December 24, 2014 Abstract The equational theory of deterministic
More informationIntroduction to Kleene Algebra Lecture 9 CS786 Spring 2004 February 23, 2004
Introduction to Kleene Algebra Lecture 9 CS786 Spring 2004 February 23, 2004 Completeness Here we continue the program begun in the previous lecture to show the completeness of Kleene algebra for the equational
More informationCHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC
1 CHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC Here, you ll learn: what it means for a logic system to be finished some strategies for constructing proofs Congratulations! Our system of
More informationKleene Algebra with Tests
Introduction to Kleene Algebra Lecture 12 CS786 Spring 2004 March 8, 2004 Kleene Algebra with Tests In semantics and logics of programs, Kleene algebra forms an essential component of Propositional Dynamic
More informationThe theory of regular cost functions.
The theory of regular cost functions. Denis Kuperberg PhD under supervision of Thomas Colcombet Hebrew University of Jerusalem ERC Workshop on Quantitative Formal Methods Jerusalem, 10-05-2013 1 / 30 Introduction
More informationNONSTANDARD MODELS AND KRIPKE S PROOF OF THE GÖDEL THEOREM
Notre Dame Journal of Formal Logic Volume 41, Number 1, 2000 NONSTANDARD MODELS AND KRIPKE S PROOF OF THE GÖDEL THEOREM HILARY PUTNAM Abstract This lecture, given at Beijing University in 1984, presents
More informationDomain theory and denotational semantics of functional programming
Domain theory and denotational semantics of functional programming Martín Escardó School of Computer Science, Birmingham University MGS 2007, Nottingham, version of April 20, 2007 17:26 What is denotational
More informationStochastic Games with Time The value Min strategies Max strategies Determinacy Finite-state games Cont.-time Markov chains
Games with Time Finite-state Masaryk University Brno GASICS 00 /39 Outline Finite-state stochastic processes. Games over event-driven stochastic processes. Strategies,, determinacy. Existing results for
More informationPropositional Languages
Propositional Logic Propositional Languages A propositional signature is a set/sequence of primitive symbols, called proposition constants. Given a propositional signature, a propositional sentence is
More informationThe State Explosion Problem
The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis
More informationPerformance Analysis of ARQ Protocols using a Theorem Prover
Performance Analysis of ARQ Protocols using a Theorem Prover Osman Hasan Sofiene Tahar Hardware Verification Group Concordia University Montreal, Canada ISPASS 2008 Objectives n Probabilistic Theorem Proving
More informationArtificial Intelligence
Artificial Intelligence Propositional Logic [1] Boolean algebras by examples U X U U = {a} U = {a, b} U = {a, b, c} {a} {b} {a, b} {a, c} {b, c}... {a} {b} {c} {a, b} {a} The arrows represents proper inclusion
More informationTowards a Mechanised Denotational Semantics for Modelica
Towards a Mechanised Denotational Semantics for Modelica Simon Foster Bernhard Thiele Jim Woodcock Peter Fritzson Department of Computer Science, University of York PELAB, Linköping University 3rd February
More informationIntroduction to Probabilistic Programming Language (with Church as an example) Presenter: Enrique Rosales, Xing Zeng
Introduction to Probabilistic Programming Language (with Church as an example) Presenter: Enrique Rosales, Xing Zeng 1 Knowledge How can we infer knowledge from observations? 2 Ron s box Bob has a box
More informationTR : Possible World Semantics for First Order LP
City University of New York (CUNY) CUNY Academic Works Computer Science Technical Reports Graduate Center 2011 TR-2011010: Possible World Semantics for First Order LP Melvin Fitting Follow this and additional
More informationRELATION OF WHITEHEAD AND RUSSELL'S THEORY OF DEDUCTION TO THE BOOLEAN LOGIC OF PROPOSITIONS*
932.] BOOLEAN LOGIC OF PROPOSITIONS 589 RELATION OF WHITEHEAD AND RUSSELL'S THEORY OF DEDUCTION TO THE BOOLEAN LOGIC OF PROPOSITIONS* BY B. A. BERNSTEIN. Introduction. Whitehead and Russell's theory of
More informationLogic: The Big Picture
Logic: The Big Picture A typical logic is described in terms of syntax: what are the legitimate formulas semantics: under what circumstances is a formula true proof theory/ axiomatization: rules for proving
More informationThe Calculus of Computation: Decision Procedures with Applications to Verification. Part I: FOUNDATIONS. by Aaron Bradley Zohar Manna
The Calculus of Computation: Decision Procedures with Applications to Verification Part I: FOUNDATIONS by Aaron Bradley Zohar Manna 1. Propositional Logic(PL) Springer 2007 1-1 1-2 Propositional Logic(PL)
More informationPropositional logic (revision) & semantic entailment. p. 1/34
Propositional logic (revision) & semantic entailment p. 1/34 Reading The background reading for propositional logic is Chapter 1 of Huth/Ryan. (This will cover approximately the first three lectures.)
More informationSoftware Verification
Software Verification Grégoire Sutre LaBRI, University of Bordeaux, CNRS, France Summer School on Verification Technology, Systems & Applications September 2008 Grégoire Sutre Software Verification VTSA
More informationLectures on Computational Type Theory
Lectures on Computational Type Theory From Proofs-as-Programs to Proofs-as-Processes Robert L. Constable Cornell University Lecture Schedule Lecture 1: Origins and Introduction to Computational Type Theory
More informationModel Checking & Program Analysis
Model Checking & Program Analysis Markus Müller-Olm Dortmund University Overview Introduction Model Checking Flow Analysis Some Links between MC and FA Conclusion Apology for not giving proper credit to
More informationBound and Free Variables. Theorems and Proofs. More valid formulas involving quantifiers:
Bound and Free Variables More valid formulas involving quantifiers: xp(x) x P(x) Replacing P by P, we get: x P(x) x P(x) Therefore x P(x) xp(x) Similarly, we have xp(x) x P(x) x P(x) xp(x) i(i 2 > i) is
More informationCS558 Programming Languages
CS558 Programming Languages Winter 2017 Lecture 2b Andrew Tolmach Portland State University 1994-2017 Semantics Informal vs. Formal Informal semantics Descriptions in English (or other natural language)
More informationConstructions on Finite Automata
Constructions on Finite Automata Informatics 2A: Lecture 4 Mary Cryan School of Informatics University of Edinburgh mcryan@inf.ed.ac.uk 24 September 2018 1 / 33 Determinization The subset construction
More informationCTL Model Update Implementation Using ANTLR Tools
CTL Model Update Implementation Using ANTLR Tools LAURA FLORENTINA CACOVEAN Department of Computer Science Lucian Blaga University of Sibiu, Faculty of Sciences Str. Dr. Ion Ratiu 5-7, 550012, Sibiu ROMANIA
More informationRealization of Coinductive Types
MFPS 2011 Realization of Coinductive Types Dexter Kozen 1,2 Department of Computer Science Cornell University Ithaca, New York 14853 7501, USA Abstract We give an explicit combinatorial construction of
More informationProofs Propositions and Calculuses
Lecture 2 CS 1813 Discrete Mathematics Proofs Propositions and Calculuses 1 City of Königsberg (Kaliningrad) 2 Bridges of Königsberg Problem Find a route that crosses each bridge exactly once Must the
More informationStéphane Lafortune. August 2006
UNIVERSITY OF MICHIGAN DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE LECTURE NOTES FOR EECS 661 CHAPTER 1: INTRODUCTION TO DISCRETE EVENT SYSTEMS Stéphane Lafortune August 2006 References for
More informationPartial model checking via abstract interpretation
Partial model checking via abstract interpretation N. De Francesco, G. Lettieri, L. Martini, G. Vaglini Università di Pisa, Dipartimento di Ingegneria dell Informazione, sez. Informatica, Via Diotisalvi
More informationLogic. Propositional Logic: Syntax. Wffs
Logic Propositional Logic: Syntax Logic is a tool for formalizing reasoning. There are lots of different logics: probabilistic logic: for reasoning about probability temporal logic: for reasoning about
More informationPropositional Logic. Spring Propositional Logic Spring / 32
Propositional Logic Spring 2016 Propositional Logic Spring 2016 1 / 32 Introduction Learning Outcomes for this Presentation Learning Outcomes... At the conclusion of this session, we will Define the elements
More information