# Toward Model-Based Verification of Adaptive Allocation Managers

Save this PDF as:

Size: px
Start display at page:

## Transcription

4 taken two at a time, and so forth. The fact that < r is a total order means that we can employ binary search on each line to find a feasibility boundary. The maximal feasible sets are marked with a box in the figure. A problem with the approach is that there can be ambiguous sets. For example, with four tasks, we don t know whether Q 1 = ( ) is greater than or less than Q 2 = ( ); consider the situation where t 1,t 2,t 3,t 4 use 1,3,3,4 units of resource, respectively. Then Q 2 > r Q 1. Alternatively, suppose they use 1,3,3,6 units of resource. Then Q 1 > r Q 2. From our study of ambiguous sets, we are of the opinion there will be at most polynomially many ambiguous alternatives for a given Q, but we do not have a proof, and it remains an open question. 4 Verification via Model Checking Model checking is a verification technology that models systems under verification as Kripke structures (that is, finite state machines with labelled states). In the context of these Kripke structures, model checkers can automatically verify properties of interest that are expressed in the form of temporal logic formulas [4]. Since Clarke and Emerson pioneered the field of model checking in the early 1980s [3], there have been significant improvements on the scalability and efficiency of model checking technologies. It is now possible to model check systems with over states [2]. In the model checking approach towards the problem of adaptive allocation manager verification, we consider the allocation manager as a reactive system and attempt to leverage on the optimized exhaustive checking capability of model checkers. The key idea is to encode the allocation algorithm in a Kripke structure and express the following assertion in a temporal logic formula: After a required task set has been provided, eventually the algorithm will produce a feasible allocation for the set. We can employ a model checker to prove this assertion in the context of the Kripke structure representing the allocation algorithm. Specifically, this approach involve the following steps. 1. Express the feasibility function F : A Boolean, where A is the set of possible allocations, in first-order predicate logic. 2. Express the adaptive allocation manager in a suitable language such as PROMELA [8] or SMV [11]. The state of interest is a required task set and a feasible allocation, though there will in general also be other state required by the program. Note that when a new required task set is introduced, the corresponding allocation in the state will in general be wrong. It is the goal of the program that expresses the allocation manager to eventually reach a state s.t. the allocation is feasible for the required task set. 3. Generate a Kripke structure from the encoded representation of the allocation manager and Q. This step can be performed automatically by tools. 4. Run a model checker and show that the temporal logic formula F(A), where A is the current allocation, holds on the Kripke structure. The formula means that from every state, F(A) eventually holds; that is, the allocation will eventually become feasible. When the model checker produces a negative result, it will give a counter example, which can help identify the source of the problem. When the result is positive, we can be confident that the adaptive allocation manager will not lead the system into infeasible allocations. 4

5 5 Verification via Predicate Calculus In predicate calculus we trade the complexity of the size of Q for complexity of another sort: proving symbolically that a candidate M is an adaptive allocation manager. Our approach here is verification by means of weakest precondition [5]. The approach may be sketched as follows. 1. The formula q serves as a pre-condition to M. 2. Give a post-condition of feasible allocations: first-order predicate p is satisfied exactly when allocation A is a feasible allocation of input Q Q to resources R. 3. Express the adaptive allocation manager in a suitable language. Dijkstra s simple imperative language is commonly used. 4. Calculate the weakest precondition for (M,p). 5. Prove that q = p. Given a Boolean function to indicate feasibility of an allocation, step 2 is easily satisfied. There are computerized tools available to help with steps 4 and 5. For example, VCGen [12] can perform the weakest precondition calculation provided loop invariants are given. Other tools can help calculate the loop invariants (see, for example, [7]). A theorem prover such as PVS [1] can help prove the final implication. In each of these cases, however, manual intervention is typically required. 6 Conclusions We have proposed three approaches to verification of an adaptive allocation manager. The direct approach is simple, but may not be practical due to complexity issues. The model checking approach may handle more complex systems, but could also suffer from complexity issues. The predicate calculus approach is insensitive to the size of Q, but requires more human involvement in the process. Each approach has both advantages and drawbacks. We believe that all three approaches should be developed as techniques to verify adaptive allocation managers. References [1] Prototype verification system (PVS). [2] J. R. Burch, E. M. Clarke, D. E. Long, K. L. McMillan, and D. L. Dill. Symbolic model checking for sequential circuit verification. IEEE Transactions on Computer-Aided Design of Integrated Circuits, 13(4): , [3] E. M. Clarke, Jr. and E. A. Emerson. Design and synthesis of synchronization skeletons for branching time temporal logic. Lecture Notes in Computer Science (LNCS), Proceedings of the Workshop on Logics of Programs, 131:52 71, [4] E. M. Clarke, Jr., O. Grumberg, and D. A. Peled. Model Checking. The MIT Press, Cambridge, Massachusetts,

6 [5] E. W. Dijkstra. A Discipline of Programming. Pearson Education POD, [6] K. Ecker, D. Juedes, L. Welch, F. Drews, Chelberg, D. Fleeman, and D. Parrot. An optimization framework for dynamic, distributed real-time system. In In Proceedings of the 11th International Workshop on Parallel and Distributed Real-Time Systems (WPDRTS 2003), [7] M. D. Ernst, J. Cockrell, W. G. Griswold, and D. Notkin. Dynamically discovering likely program invariants to support program evolution. IEEE Transactions on Software Engineering, 27(2):1 25, [8] G. J. Holzmann. The Spin Model Checker Primer and Reference Manual. Addison-Wesley, Boston, MA, [9] C. Lee, J. Lehoczky, R. Rajkumar, and D. Siewiorek. On quality of service optimization with discrete qos options. In IEEE Real Time Technology and Applications Symposium, pages 276, [10] M. W. Masters. Challenge problem: system certification for real-time systems that employ dynamic resource management. In Eleventh International Workshop on Parallel and Distributed Real-Time Systems, [11] K. L. McMillan. Symbolic model checking - an approach to the state explosion problem. PhD thesis, Carnegie Mellon University, [12] G. C. Necula and P. Lee. The design and implementation of a certifying compiler. In 1998 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 98),

### Model Checking: An Introduction

Announcements Model Checking: An Introduction Meeting 2 Office hours M 1:30pm-2:30pm W 5:30pm-6:30pm (after class) and by appointment ECOT 621 Moodle problems? Fundamentals of Programming Languages CSCI

### Formal Verification of Software

Formal Verification of Software Sabine Broda Department of Computer Science/FCUP 12 de Novembro de 2014 Sabine Broda (DCC-FCUP) Formal Verification of Software 12 de Novembro de 2014 1 / 26 Formal Verification

### A Logic Approach for LTL System Modification

A Logic Approach for LTL System Modification Yulin Ding and Yan Zhang School of Computing & Information Technology University of Western Sydney Kingswood, N.S.W. 1797, Australia email: {yding,yan}@cit.uws.edu.au

### The Model Checker SPIN

The Model Checker SPIN Author: Gerard J. Holzmann Presented By: Maulik Patel Outline Introduction Structure Foundation Algorithms Memory management Example/Demo SPIN-Introduction Introduction SPIN (Simple(

### Software Certification for Temporal Properties with Affordable Tool Qualification

Software Certification for Temporal Properties with Affordable Tool Qualification Songtao Xia and Ben Di Vito Mail Stop 130 NASA Langley Research Center Hampton, VA 23281 {s.xia, b.l.divito}@larc.nasa.gov

### Model Checking II Temporal Logic Model Checking

1/32 Model Checking II Temporal Logic Model Checking Edmund M Clarke, Jr School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 2/32 Temporal Logic Model Checking Specification Language:

### The Course. http://www.cse.unsw.edu.au/~cs3153/

The Course http://www.cse.unsw.edu.au/~cs3153/ Lecturers Dr Peter Höfner NICTA L5 building Prof Rob van Glabbeek NICTA L5 building Dr Ralf Huuck NICTA ATP building 2 Plan/Schedule (1) Where and When Tuesday,

### Toward Certification of Adaptive Distributed Systems

Toward Certification of Adaptive Distributed Systems John M. Slaby, Lonnie R. Welch, Paul R. Work OMG's Workshop on Distributed Object Computing for Real-time and Embedded Systems July 10-13, 2006 - Arlington,

### http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86

Atlantic Electronic http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86 AUTOMATED RECOGNITION OF STUTTER INVARIANCE OF LTL FORMULAS Jeffrey Dallien 1 and Wendy

### Software Modeling and Verification

Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

### Introduction to Formal Methods. Các Phương Pháp Hình Thức Cho Phát Triển Phần Mềm

Introduction to Formal Methods Các Phương Pháp Hình Thức Cho Phát Triển Phần Mềm Outline Introduction Formal Specification Formal Verification Model Checking Theorem Proving Introduction Good papers to

### More Abstract Information. More Concrete Information

Abstract Interpretation Sorin Lerner June 4, 2001 1 Introduction The work surveyed in class so far was not concerned with proving correctness of dataflow analyses. We saw algorithms for computing properties

### Formal Verification Methods 3: Model Checking

Formal Verification Methods 3: Model Checking John Harrison Intel Corporation Marktoberdorf 2003 Fri 1st August 2003 (11:25 12:10) This presentation was not given in Marktoberdorf since it mostly duplicates

### Specification and Analysis of Contracts Lecture 1 Introduction

Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.

### A computational model for MapReduce job flow

A computational model for MapReduce job flow Tommaso Di Noia, Marina Mongiello, Eugenio Di Sciascio Dipartimento di Ingegneria Elettrica e Dell informazione Politecnico di Bari Via E. Orabona, 4 70125

### Testing LTL Formula Translation into Büchi Automata

Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland

### Fundamentals of Mathematics Lecture 6: Propositional Logic

Fundamentals of Mathematics Lecture 6: Propositional Logic Guan-Shieng Huang National Chi Nan University, Taiwan Spring, 2008 1 / 39 Connectives Propositional Connectives I 1 Negation: (not A) A A T F

### Static Program Transformations for Efficient Software Model Checking

Static Program Transformations for Efficient Software Model Checking Shobha Vasudevan Jacob Abraham The University of Texas at Austin Dependable Systems Large and complex systems Software faults are major

### Verification of multiagent systems via ordered binary decision diagrams: an algorithm and its implementation

Verification of multiagent systems via ordered binary decision diagrams: an algorithm and its implementation Franco Raimondi Alessio Lomuscio Department of Computer Science King s College London London

### Formal Languages and Automata Theory - Regular Expressions and Finite Automata -

Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March

### Formal Verification by Model Checking

Formal Verification by Model Checking Natasha Sharygina Carnegie Mellon University Guest Lectures at the Analysis of Software Artifacts Class, Spring 2005 1 Outline Lecture 1: Overview of Model Checking

### T-79.186 Reactive Systems: Introduction and Finite State Automata

T-79.186 Reactive Systems: Introduction and Finite State Automata Timo Latvala 14.1.2004 Reactive Systems: Introduction and Finite State Automata 1-1 Reactive Systems Reactive systems are a class of software

### Notes on Complexity Theory Last updated: August, 2011. Lecture 1

Notes on Complexity Theory Last updated: August, 2011 Jonathan Katz Lecture 1 1 Turing Machines I assume that most students have encountered Turing machines before. (Students who have not may want to look

### The ProB Animator and Model Checker for B

The ProB Animator and Model Checker for B A Tool Description Michael Leuschel and Michael Butler Department of Electronics and Computer Science University of Southampton Highfield, Southampton, SO17 1BJ,

### CS 3719 (Theory of Computation and Algorithms) Lecture 4

CS 3719 (Theory of Computation and Algorithms) Lecture 4 Antonina Kolokolova January 18, 2012 1 Undecidable languages 1.1 Church-Turing thesis Let s recap how it all started. In 1990, Hilbert stated a

### Basic Category Theory for Models of Syntax (Preliminary Version)

Basic Category Theory for Models of Syntax (Preliminary Version) R. L. Crole ( ) Department of Mathematics and Computer Science, University of Leicester, Leicester, LE1 7RH, U.K. Abstract. These notes

### Rigorous Software Development CSCI-GA 3033-009

Rigorous Software Development CSCI-GA 3033-009 Instructor: Thomas Wies Spring 2013 Lecture 11 Semantics of Programming Languages Denotational Semantics Meaning of a program is defined as the mathematical

### Software testing. Objectives

Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating

### 5 Program Correctness

5 Program Correctness 5.1. Introduction For any application, the designer of a distributed system has the responsibility of certifying the correctness of the system, before users start using it. This guarantee

### InvGen: An Efficient Invariant Generator

InvGen: An Efficient Invariant Generator Ashutosh Gupta and Andrey Rybalchenko Max Planck Institute for Software Systems (MPI-SWS) Abstract. In this paper we present InvGen, an automatic linear arithmetic

### Mathematical Reasoning in Software Engineering Education. Peter B. Henderson Butler University

Mathematical Reasoning in Software Engineering Education Peter B. Henderson Butler University Introduction Engineering is a bridge between science and mathematics, and the technological needs of mankind.

### (Refer Slide Time: 05:02)

Discrete Mathematical Structures Dr. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 1 Propositional Logic This course is about discrete

### Lecture Notes on Linear Search

Lecture Notes on Linear Search 15-122: Principles of Imperative Computation Frank Pfenning Lecture 5 January 29, 2013 1 Introduction One of the fundamental and recurring problems in computer science is

### Automated Theorem Proving - summary of lecture 1

Automated Theorem Proving - summary of lecture 1 1 Introduction Automated Theorem Proving (ATP) deals with the development of computer programs that show that some statement is a logical consequence of

### Model Checking based Software Verification

Model Checking based Software Verification 18.5-2006 Keijo Heljanko Keijo.Heljanko@tkk.fi Department of Computer Science and Engineering Helsinki University of Technology http://www.tcs.tkk.fi/~kepa/ 1/24

### Using Patterns and Composite Propositions to Automate the Generation of Complex LTL

University of Texas at El Paso DigitalCommons@UTEP Departmental Technical Reports (CS) Department of Computer Science 8-1-2007 Using Patterns and Composite Propositions to Automate the Generation of Complex

### NP-Completeness and Cook s Theorem

NP-Completeness and Cook s Theorem Lecture notes for COM3412 Logic and Computation 15th January 2002 1 NP decision problems The decision problem D L for a formal language L Σ is the computational task:

### Describe the process of parallelization as it relates to problem solving.

Level 2 (recommended for grades 6 9) Computer Science and Community Middle school/junior high school students begin using computational thinking as a problem-solving tool. They begin to appreciate the

### System modeling. Budapest University of Technology and Economics Department of Measurement and Information Systems

System modeling Business process modeling how to do it right Partially based on Process Anti-Patterns: How to Avoid the Common Traps of Business Process Modeling, J Koehler, J Vanhatalo, IBM Zürich, 2007.

### MASSACHUSETTS INSTITUTE OF TECHNOLOGY 6.436J/15.085J Fall 2008 Lecture 1 9/3/2008 PROBABILISTIC MODELS AND PROBABILITY MEASURES

MASSACHUSETTS INSTITUTE OF TECHNOLOGY 6.436J/15.085J Fall 2008 Lecture 1 9/3/2008 PROBABILISTIC MODELS AND PROBABILITY MEASURES Contents 1. Probabilistic experiments 2. Sample space 3. Discrete probability

### 4 Domain Relational Calculus

4 Domain Relational Calculus We now present two relational calculi that we will compare to RA. First, what is the difference between an algebra and a calculus? The usual story is that the algebra RA is

### 3. Recurrence Recursive Definitions. To construct a recursively defined function:

3. RECURRENCE 10 3. Recurrence 3.1. Recursive Definitions. To construct a recursively defined function: 1. Initial Condition(s) (or basis): Prescribe initial value(s) of the function.. Recursion: Use a

### Automatic Verification by Abstract Interpretation

Automatic Verification by Abstract Interpretation (Invited tutorial) Patrick Cousot École normale supérieure, Département d informatique, 45 rue d Ulm, 75230 Paris cedex 05, France Patrick.Cousot@ens.fr

### A Framework for the Semantics of Behavioral Contracts

A Framework for the Semantics of Behavioral Contracts Ashley McNeile Metamaxim Ltd, 48 Brunswick Gardens, London W8 4AN, UK ashley.mcneile@metamaxim.com Abstract. Contracts have proved a powerful concept

### Development of dynamically evolving and self-adaptive software. 1. Background

Development of dynamically evolving and self-adaptive software 1. Background LASER 2013 Isola d Elba, September 2013 Carlo Ghezzi Politecnico di Milano Deep-SE Group @ DEIB 1 Requirements Functional requirements

### Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

### Formal Specification and Verification

Formal Specification and Verification Stefan Ratschan Katedra číslicového návrhu Fakulta informačních technologíı České vysoké učení technické v Praze 2. 5. 2011 Stefan Ratschan (FIT ČVUT) PI-PSC 4 2.

### ONLINE EXERCISE SYSTEM A Web-Based Tool for Administration and Automatic Correction of Exercises

ONLINE EXERCISE SYSTEM A Web-Based Tool for Administration and Automatic Correction of Exercises Daniel Baudisch, Manuel Gesell and Klaus Schneider Embedded Systems Group, University of Kaiserslautern,

### Lecture 2: March 20, 2015

Automatic Software Verification Spring Semester, 2015 Lecture 2: March 20, 2015 Lecturer: Prof. Mooly Sagiv Scribe: Kalev Alpernas and Elizabeth Firman 2.1 Introduction In this lecture we will go over

### Theory of Computation Prof. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras

Theory of Computation Prof. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture No. # 31 Recursive Sets, Recursively Innumerable Sets, Encoding

### Combinational and Sequential Circuits.

Combinational and Sequential Circuits. Basically, sequential circuits have memory and combinational circuits do not. Here is a basic depiction of a sequential circuit. All sequential circuits contain combinational

### Model Checking of Software

Model Checking of Software Patrice Godefroid Bell Laboratories, Lucent Technologies SpecNCheck Page 1 August 2001 A Brief History of Model Checking Prehistory: transformational programs and theorem proving

### REASONING IN MATHEMATICAL SOFTWARE ENGINEERING EDUCATION

BY PETER B. HENDERSON MATHEMATICAL REASONING IN SOFTWARE ENGINEERING EDUCATION Discrete mathematics, especially logic, plays an implicit role in software engineering similar to the role of continuous mathematics

### From Workflow Design Patterns to Logical Specifications

AUTOMATYKA/ AUTOMATICS 2013 Vol. 17 No. 1 http://dx.doi.org/10.7494/automat.2013.17.1.59 Rados³aw Klimek* From Workflow Design Patterns to Logical Specifications 1. Introduction Formal methods in software

### Formal Verification In Industry (I)

Formal Verification In Industry (I) 1 Formal Verification In Industry (I) John Harrison Intel Corporation Formal verification Importance of hardware verification Approaches to hardware verification Combinational

### Software Testing. Quality & Testing. Software Testing

Software Testing Software Testing Error: mistake made by the programmer/developer Fault: a incorrect piece of code/document (i.e., bug) Failure: result of a fault Goal of software testing: Cause failures

### Finding Liveness Errors with ACO

Finding Liveness Errors with ACO Francisco Chicano and Enrique Alba Abstract Model Checking is a well-known and fully automatic technique for checking software properties, usually given as temporal logic

### Software Engineering Reference Framework

Software Engineering Reference Framework Michel Chaudron, Jan Friso Groote, Kees van Hee, Kees Hemerik, Lou Somers, Tom Verhoeff. Department of Mathematics and Computer Science Eindhoven University of

### Software Verification and Testing. Lecture Notes: Temporal Logics

Software Verification and Testing Lecture Notes: Temporal Logics Motivation traditional programs (whether terminating or non-terminating) can be modelled as relations are analysed wrt their input/output

### Programming Theory. Mohamed Faouzi Atig. Uppsala University. M. F. Atig (Uppsala University) Programming Theory September 03, / 25

Programming Theory Mohamed Faouzi Atig Uppsala University M. F. Atig (Uppsala University) Programming Theory September 03, 2012 1 / 25 People to help you! Lecturer: Mohamed Faouzi Atig, office 1452, mohamed

### Formal Verification Coverage: Computing the Coverage Gap between Temporal Specifications

Formal Verification Coverage: Computing the Coverage Gap between Temporal Specifications Sayantan Das Prasenjit Basu Ansuman Banerjee Pallab Dasgupta P.P. Chakrabarti Department of Computer Science & Engineering

### Regular Languages and Finite Automata

Regular Languages and Finite Automata 1 Introduction Hing Leung Department of Computer Science New Mexico State University Sep 16, 2010 In 1943, McCulloch and Pitts [4] published a pioneering work on a

### Lecture 2: The Complexity of Some Problems

IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 2: The Complexity of Some Problems David Mix Barrington and Alexis Maciel July 18, 2000

### MATHEMATICS: CONCEPTS, AND FOUNDATIONS Vol. III - Logic and Computer Science - Phokion G. Kolaitis

LOGIC AND COMPUTER SCIENCE Phokion G. Kolaitis Computer Science Department, University of California, Santa Cruz, CA 95064, USA Keywords: algorithm, Armstrong s axioms, complete problem, complexity class,

### PROPERTECHNIQUEOFSOFTWARE INSPECTIONUSING GUARDED COMMANDLANGUAGE

International Journal of Computer ScienceandCommunication Vol. 2, No. 1, January-June2011, pp. 153-157 PROPERTECHNIQUEOFSOFTWARE INSPECTIONUSING GUARDED COMMANDLANGUAGE Neeraj Kumar Singhania University,

### ML for the Working Programmer

ML for the Working Programmer 2nd edition Lawrence C. Paulson University of Cambridge CAMBRIDGE UNIVERSITY PRESS CONTENTS Preface to the Second Edition Preface xiii xv 1 Standard ML 1 Functional Programming

### TEACHING MODEL CHECKING TO UNDERGRADUATES

STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume LV, Number 3, 2010 TEACHING MODEL CHECKING TO UNDERGRADUATES A.VESCAN AND M. FRENŢIU Abstract. The way program verification is taught in our faculty is firstly

### Coverability for Parallel Programs

2015 http://excel.fit.vutbr.cz Coverability for Parallel Programs Lenka Turoňová* Abstract We improve existing method for the automatic verification of systems with parallel running processes. The technique

### Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 20

CS 70 Discrete Mathematics and Probability Theory Fall 009 Satish Rao, David Tse Note 0 Infinity and Countability Consider a function (or mapping) f that maps elements of a set A (called the domain of

### Controlflow-based Coverage Criteria

Controlflow-based Coverage Criteria W. Eric Wong Department of Computer Science The University of Texas at Dallas ewong@utdallas.edu http://www.utdallas.edu/~ewong Dataflow-based Coverage Criteria ( 2012

### A logical approach to dynamic role-based access control

A logical approach to dynamic role-based access control Philippe Balbiani Yannick Chevalier Marwa El Houri Abstract Since its formalization RBAC has become the yardstick for the evaluation of access control

### Satisfiability of Boolean Expressions

Satisfiability of Boolean Expressions In the previous section, we have analysed in great detail one particular problem reachability in directed graphs. The reason for the attention devoted to this one

### More Mathematical Induction. October 27, 2016

More Mathematical Induction October 7, 016 In these slides... Review of ordinary induction. Remark about exponential and polynomial growth. Example a second proof that P(A) = A. Strong induction. Least

### Lecture 16 : Relations and Functions DRAFT

CS/Math 240: Introduction to Discrete Mathematics 3/29/2011 Lecture 16 : Relations and Functions Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT In Lecture 3, we described a correspondence

### Extended Static Checking for Java

Lukas TU München - Seminar Verification 14. Juli 2011 Outline 1 Motivation 2 ESC/Java example 3 ESC/JAVA architecture VC generator Simplify 4 JML + ESC/Java annotation language JML What ESC/Java checks

Verication by Finitary Abstraction Weizmann Institute of Sciences and Universite Joseph Fourier, Grenoble Fourth International Spin Workshop (SPIN'98) Paris 2.11.98 Joint work with: Y. Kesten Ben Gurion

### Performance analysis of a Linux based FTP server

Performance analysis of a Linux based FTP server A Thesis Submitted in Partial Fulfillment of the Requirements for the Degree of Master of Technology by Anand Srivastava to the Department of Computer Science

### Testing XPath Queries using Model Checking

Testing XPath Queries using Model Checking Claudio de la Riva, Javier Tuya, José García-Fanjul Computer Science Department, University of Oviedo Phone +34 98 518 26 64, Fax +34 98 518 21 56 [claudio tuya

### To formulate more complex mathematical statements, we use the quantifiers there exists, written, and for all, written. If P(x) is a predicate, then

Discrete Math in CS CS 280 Fall 2005 (Kleinberg) Quantifiers 1 Quantifiers To formulate more complex mathematical statements, we use the quantifiers there exists, written, and for all, written. If P(x)

### Automata Theory. Şubat 2006 Tuğrul Yılmaz Ankara Üniversitesi

Automata Theory Automata theory is the study of abstract computing devices. A. M. Turing studied an abstract machine that had all the capabilities of today s computers. Turing s goal was to describe the

### S = {1, 2,..., n}. P (1, 1) P (1, 2)... P (1, n) P (2, 1) P (2, 2)... P (2, n) P = . P (n, 1) P (n, 2)... P (n, n)

last revised: 26 January 2009 1 Markov Chains A Markov chain process is a simple type of stochastic process with many social science applications. We ll start with an abstract description before moving

### Policy Analysis for Administrative Role Based Access Control without Separate Administration

Policy nalysis for dministrative Role Based ccess Control without Separate dministration Ping Yang Department of Computer Science, State University of New York at Binghamton, US Mikhail I. Gofman Department

### (Refer Slide Time 6:09)

Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology, Madras Lecture 3 Combinational Logic Basics We defined digital signal as a signal which

### 6.080 / 6.089 Great Ideas in Theoretical Computer Science Spring 2008

MIT OpenCourseWare http://ocw.mit.edu 6.080 / 6.089 Great Ideas in Theoretical Computer Science Spring 008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.

### Model-Driven Resource Management for Distributed Real-Time and Embedded Systems

Model-Driven Resource Management for Distributed Real-Time and Embedded Systems Chang Liu, David Fleeman, Eric Aber, Lonnie Welch, and David Juedes Center for Intelligent, Distributed and Dependable Systems

### Computing basics. Ruurd Kuiper

Computing basics Ruurd Kuiper October 29, 2009 Overview (cf Schaum Chapter 1) Basic computing science is about using computers to do things for us. These things amount to processing data. The way a computer

### Master s Program in Information Systems

The University of Jordan King Abdullah II School for Information Technology Department of Information Systems Master s Program in Information Systems 2006/2007 Study Plan Master Degree in Information Systems

### An introduction to RGSep. Viktor Vafeiadis

An introduction to RGSep Viktor Vafeiadis Example: lock-coupling list 2 3 5 7 11 13 There is one lock per node; threads acquire locks in a hand over hand fashion. If a node is locked, we can insert a node

### Sets and Cardinality Notes for C. F. Miller

Sets and Cardinality Notes for 620-111 C. F. Miller Semester 1, 2000 Abstract These lecture notes were compiled in the Department of Mathematics and Statistics in the University of Melbourne for the use

### SOFTWARE MODEL CHECKING FOR AVIONICS SYSTEMS

SOFTWARE MODEL CHECKING FOR AVIONICS SYSTEMS Darren Cofer, Michael Whalen, Steven Miller Rockwell Collins, Cedar Rapids, IA Abstract The adoption of model-based development tools is changing the cost-benefit

### Model Checking for Generation of Test Suites in Software Unit Testing

Model Checking for Generation of Test Suites in Software Unit Testing Vasilios Almaliotis Panagiotis Katsaros Konstantinos Mokos Department of Informatics Aristotle University of Thessaloniki 54124 Thessaloniki,

### Lecture 8: Synchronous Digital Systems

Lecture 8: Synchronous Digital Systems The distinguishing feature of a synchronous digital system is that the circuit only changes in response to a system clock. For example, consider the edge triggered

### Array Property Fragment

Array Property Fragment Max-Ferdinand Gerhard Suffel Saarland University 25th January 2013 Decision Procedures Seminar @ MPI-SWS 1 / 29 Application in Deductive Verification 2 / 29 Application in Deductive

### Math/CSE 1019: Discrete Mathematics for Computer Science Fall Suprakash Datta

Math/CSE 1019: Discrete Mathematics for Computer Science Fall 2011 Suprakash Datta datta@cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cse.yorku.ca/course/1019 1

### 3 Extending the Refinement Calculus

Building BSP Programs Using the Refinement Calculus D.B. Skillicorn? Department of Computing and Information Science Queen s University, Kingston, Canada skill@qucis.queensu.ca Abstract. We extend the

### Introduction Number Systems and Conversion

UNIT 1 Introduction Number Systems and Conversion Objectives 1. Introduction The first part of this unit introduces the material to be studied later. In addition to getting an overview of the material

### Trees and Finite Satisfiability: Proof of a Conjecture of Burgess

Notre Dame Journal of Formal Logic Volume 25, Number 3, July 1984 193 Trees and Finite Satisfiability: Proof of a Conjecture of Burgess GEORGE BOOLOS* The method of trees, expounded in such books as Jeffrey's