Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems

Size: px
Start display at page:

Download "Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems"

Transcription

1 Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems Computer Journal Lecture - 22nd June 2009 Manfred Broy Technische Universität München Institut für Informatik D Munich, Germany

2 The role of modelling in software & systems engineering Software & systems engineering means capturing the requirements domain specific functional, logical, technical, methodological specification of the system s overall functionality design of a solution in terms of an architecture specifying the components implementing the components verification of the components and integrating them into the system and verifying the integration verification of the system further evolution These are complex error prone tasks! Manfred Broy 2

3 The role of modelling in software & systems engineering (S&SE) Modelling helps for: expressing and documenting the requirements specifying the system describing the architecture specifying the components their composition and interaction modelling the components verifying of the components and integrating them into the system and verifying the verifying the system further evolution Manfred Broy 3

4 The roots of modelling in S&SE Graphical description: Early approaches: SADT, Structured Analysis (SA) Later: SDL, ADLs, OOA/D, ROOM Today: UML, SysML Programming and programming languages Programming concepts: types (as basis for data models) Programming logics Object oriented programming concepts Formal description techniques as modelling concepts Predicate Logic Based Specification Abstract Data Types State Machines (Mealy,... ) Temporal Logic Process Algebras (CCS, CSP,... ) Models of distributed concurrent systems (Unity, TLA,... ) Manfred Broy 4

5 On models and modelling What is a model? An abstraction! What kind of models? Informal: language, informal diagrams,... Semiformal: formalized graphical or textual presentation languages Mathematical: in terms of mathematical theories Formal models: formalized syntax, semantics and logics How do we use models? for understanding - Gedankenmodell for specification, design and documentation for analysis, validation, simulation, verification, certification for generation of implementation, tests, for reuse Manfred Broy 5

6 What do we model Domain specific tautologies, ontologies, data models,... laws, rules, System specific data interface behaviour architecture state temporal... Technical Protocols CPUs... We concentrate on digital (discrete) models in the following Manfred Broy 6

7 Modelling and engineering Support of development processes support in various phases of development integrated support between phases of development Support of engineering principles levels of abstraction separation of concerns encapsulation modularity Tool support Manfred Broy 7

8 The five areas of modelling Mathematical Models Logical Theories Methodology Description Techniques Tools Manfred Broy 8

9 Informal requirements formalisation S Specification, Sverification, architecture... Requirements Engineering Validation Formalized system requirements in terms of service taxonomies architecture S1 S2 S3 S4 System delivery System verification R S Integration R = R1 R2 R3 R4 R1 R deliver R2 R4 R3 S1 Architecture design Architecture verification S S1 S2 S3 S4 S4 S2 S3 realization R1 integration R2 R4 R3 Component implementation verification R1 S1 R2 S2 R3 S3 R4 S4 Manfred Broy 9

10 Ingredients for Integration Coherent Theory Modelling (data/interface/state/interaction/architecture) Refinement Verification Consistent Terminology Tractable Description Techniques Formulas/Logics Diagrams/Graphics Tables Comprehensive Architecture Structuring Flexible Development Process Phases (Requirements/Design/Implementation/Test/Integration) Artefact Model (concept) Methods Process models Powerful Tools Artefact Model (tool support) Automation for documentation, analysis, verification, generation Manfred Broy 10

11 The Big Picture Tool Development Process Artefact Model Terminology Architecture Methods Description Techniques Theory Manfred Broy 11

12 What has to be modelled? Data states and their attributes messages, events, signals Requirements and specifcations Functional Nonfunctional - Quality Models System Architecture Structure Components/interfaces Hierarchy Hardware/Software/Deployment Software Architecture Modules Tasks Test Cases Development Processes Development Steps Refactoring Code generation Quality attributes Systems Manfred Broy 12

13 Abstraction Abstraction Towards a comprehensive theory of system modelling: meta model Abstraction Composition Refinement Time Feature model Interface model: components Input and output uses Implementation uses Composition Refinement Time Process transition model: Events, actions and causal relations Implementation State transition model: States and state machines uses Data model: Types/sorts and characteristic functions Is sub-feature Composition Refinement Time Hierarchy and architecture Composition Refinement Time Manfred Broy 13

14 What is a (discrete) system? A system has a scope a behavior a structure and distribution a black box view: an interface and an interface behaviour input and output via ports, channels, events, messages, signals a glass/white box view: architecture state and state transition quality profile Manfred Broy 14

15 Towards a uniform model: Basic system model component System class: distributed, reactive systems kc LM lc cl Control cr rc RM component name channel channel name System consists of named components (with local state) named channels driven by global, discrete clock Manfred Broy 15

16 Basic Model Timed Streams: Semantic Model for Black-Box-Behavior eq E qe Q Message set: M = {a, b, c,...} t t+1 t+2 t+3 infinite channel history <a,d,a,b> <> Messages transmitted at time t Manfred Broy 16

17 The Basic Behaviour Model: Streams and Functions C set of channels Type: C TYPE type assignment x : C (IN\{0} ) channel history for messages of type M r C or IH[C] set of channel histories for channels in C Manfred Broy 17

18 System interface model Channel: Identifier of Type stream I = { x 1, x 2,... } set of typed inpu t channels O = { y 1, y 2,... } set of typed outpu t channels Interface behavior f : I r r O x 1 : S 1 x n : S n Set of interfaces: IF[I O] M f M y 1 : T 1 y m : T m Manfred Broy 18

19 System interfaces (I O) syntactic interface with set of input channels I and of output channels O F : I r ( O r ) semantic interface for (I O) with timing prop erty addressing causality (let x, z I r, y O r, t IN): x t = z t {y t+1: y F(x)} = {y t+1: y F(z)} x t prefix of history x with t finite sequences A system is a total behavior I O Component interface Manfred Broy 19

20 Example: Component interface specification A transmission component TMC TMC in x: T out y: T x ~ y Spec name Input channel x:t Output channel x ~ y ( m T: {m} x = {m} y ) TMC x ~ y y:t Specifying assertion Manfred Broy 20

21 State model for systems/components Σ set of states, initial state σ Σ State transition function: State machine (infinite Moore automaton): (Δ, σ) Interface abstraction Abs : SM IF Δ: (Σ (I M * )) (Σ (O M * )) Abs(, ) = F wher e The state machine concept has to fit to the interface model F ( z ˆx) = { s ˆy: y F (x) ( ', s) (, z) } Set of all states machines: SM Manfred Broy 21

22 Composition and Decomposition of Systems F 1 IF[I 1 O 1 ] F 2 IF[I 2 O 2 ] I 1 \C 2 C F 1 1 F 2 O 2 \C 2 C 1 = O 1 I 2 C 2 = O 2 I 1 I = I 1 \C 2 I 2 \C 1 O = O 1 \C 1 O 2 \C 2 O 1 \C 1 C 2 I 2 \C 1 F 1 F 2 IF[I O], (F 1 F 2 ).x = {z O: x = z I z O 1 F 1 (z I 1 ) z O 2 F 2 (z I 2 )} Manfred Broy 22

23 Interface specification composition rule x1 F1 F2 F1 z12 F2 y2 y1 z21 x2 F1 in x1, z21: T out y1, z12: T P1 F2 in x2, z12: T out y2, z21: T P2 F1 F2 in x1, x2: T out y1, y2: T z12, z21: P1 P2 Manfred Broy 23

24 Composition of Specifications into Architectures Input channels Composed component spec in x 1 : M 1, x 2 : M 2,... out y 1 : N 1, y 2 : N 2,... Composed Component P 1 Output channels Internal channels x 1 : M 1 y 1 : N 1 c 1, c 2,... : P 1... P n c 1 : T 1 c 2 : T 2 P 3 P 2 P 4 y 2 : N 2 x 2 : M 2 y 2 : N 2 x 3 : M 3 System composition = logical und Channel Hiding = existential quantification Manfred Broy 24

25 An example of an essential property... Interface abstraction distributes for state machines over composition Abs((Δ1, σ1) (Δ2, σ2) ) = Abs((Δ1, σ1)) Abs((Δ2, σ2)) Manfred Broy 25

26 Vertical Refinement r r F: I ( Compositionality O ) of refinement is refined by a behavior k: F k -> IF F ˆ r r F ˆ : I ( O ) if we write x r I : ˆ F.x F.x F -> IF ˆ F ˆ F Manfred Broy 26

27 Levels of abstraction I F 1 O 1... A I I 2 O 2 abstract level R Property refinement O implies interaction refinement... F concrete level ˆ Compositionality of interaction refinement Given refinement pairs Refinement of State Machines Α Ι : I r 2 ( I r r Given two state machine (Δ k, Λ k ) for k := 1, 2 where Λ k is a set Λ k of pairs 1 )(σ R I : I r O 2 ( O r 0, y 0 ) and Δ k is a state transition function composition 1 ) R O : O r Δ k : (Σ k (I k M * )) (Σ k (O k M* )) we call Δ 2 a refinement of Δ 1 if there exists a mapping F ˆ r I r O abs: Σ 2 Σ 1 such that Theorems Interaction refinement distributes over Abstractions of interaction refinements of implementations are interaction refinements of abstractions r r I O Time abstraction is interaction abstraction Interaction abstraction is a Galois connection {(abs.σ, A O.y 0 ) : (σ 0, y 0 ) Λ 2 } Λ 1 F ˆ and for each reachable state σ Σ 2 of the state machine (Δ 2, Λ 2 ) we have B Δ2 (σ, y 0 ) A I Þ B Δ1(abs.σ, A O.y 0 ) Þ R O r I r O Manfred Broy 27

28 The comprehensive model Usage function hierarchy service taxonomy Logical architecture Technical architecture Software architecture conceptional architecture Tasks T1 T2 T3 T4... Deployment T1... T2... T3 T4... Hardware architecture Manfred Broy 28

29 The overall goal Provide a formal model for the comprehensive architecture and all of its views In this talk: concentration on the conceptional architecture The foundation The basic system model: components System specification and verification System composition Service taxonomy Logical architecture Relationship between service taxonomy and logical architecture Manfred Broy 29

30 A screen shot from AutoFocus Manfred Broy 30

31 What we got Formal notion of a system with input and output represented by a relation between input and output histories are specified by history assertions can be used as a component to form a large system can be de-composed into an architecture of components Formal notion of a service/feature/system function with input and output represented by a relation between input and output histories are specified by history assertions can be used as a sub-service to form a large system can be de-combined into an taxonomy of services Every component can be de-combined into its taxonomy of its sub-services the sub-services can be related by service dependency relations Manfred Broy 31

32 Concluding Remarks Today software & systems engineering is too much orientated towards the technical architecture and solutions/implemention in the beginning We need a comprehensive architectural model-based view onto systems including requirements for dealing with complex multi-functional systems The models allow for Separation of concerns Separation technical aspects from application aspects Technical architectures are modelled along the same theory Code and test cases can be generated from the models Manfred Broy 32

A Logical Basis for Component-Based Systems Engineering *

A Logical Basis for Component-Based Systems Engineering * A Logical Basis for Component-Based Systems Engineering * Manfred BROY Institut für Informatik, Technische Universität München, D-80290 München, Germany Abstract. In a systematic development of distributed

More information

Time and Causality in Interactive Distributed Systems

Time and Causality in Interactive Distributed Systems Time and Causality in Interactive Distributed Systems Manfred Broy Technische Universität München Institut für Informatik D-80290 München, Germany The Lectures I- IV Causality and Time in Discrete Systems

More information

2. Component Models: Interface Models by Streams

2. Component Models: Interface Models by Streams Dynamic Distributed Systems * Towards a Mathematical Model Extended Abstract Manfred Broy Institut für Informatik, Technische Universität München D-80290 München, Germany Abstract. This paper aims at a

More information

(INTER-)ACTION REFINEMENT: THE EASY WAY 1

(INTER-)ACTION REFINEMENT: THE EASY WAY 1 (INTER-)ACTION REFINEMENT: THE EASY WAY 1 Manfred Broy Institut für Informatik Technische Universität München Postfach 20 24 20, 8 München 2, Germany Abstract We outline and illustrate a formal concept

More information

Automated Checking of Integrity Constraints for a Model- and Pattern-Based Requirements Engineering Method (Technical Report)

Automated Checking of Integrity Constraints for a Model- and Pattern-Based Requirements Engineering Method (Technical Report) Automated Checking of Integrity Constraints for a Model- and Pattern-Based Requirements Engineering Method (Technical Report) Isabelle Côté 1, Denis Hatebur 1,2, Maritta Heisel 1 1 University Duisburg-Essen,

More information

Trace Refinement of π-calculus Processes

Trace Refinement of π-calculus Processes Trace Refinement of pi-calculus Processes Trace Refinement of π-calculus Processes Manuel Gieseking manuel.gieseking@informatik.uni-oldenburg.de) Correct System Design, Carl von Ossietzky University of

More information

Reasoning about Time and Reliability

Reasoning about Time and Reliability Reasoning about Time and Reliability Probabilistic CTL model checking Daniel Bruns Institut für theoretische Informatik Universität Karlsruhe 13. Juli 2007 Seminar Theorie und Anwendung von Model Checking

More information

Formal Verification. Lecture 1: Introduction to Model Checking and Temporal Logic¹

Formal Verification. Lecture 1: Introduction to Model Checking and Temporal Logic¹ Formal Verification Lecture 1: Introduction to Model Checking and Temporal Logic¹ Jacques Fleuriot jdf@inf.ed.ac.uk ¹Acknowledgement: Adapted from original material by Paul Jackson, including some additions

More information

A Model-based Approach for the Specification of a Virtual Power Plant Operating in Open Context

A Model-based Approach for the Specification of a Virtual Power Plant Operating in Open Context A Model-based Approach for the of a Virtual Power Plant Operating in Open Context Vasileios Koutsoumpas Fakultät für Informatik, Technische Universität München, Munich, Germany May 17, 2015 1 / 15 Table

More information

Linking Duration Calculus and TLA

Linking Duration Calculus and TLA Linking Duration Calculus and TLA Yifeng Chen and Zhiming Liu Department of Computer Science, University of Leicester, Leicester LE1 7RH, UK Email: {Y.Chen, Z.Liu}@mcs.le.ac.uk Abstract. Different temporal

More information

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: Automata, State machines, Circuits Stavros Tripakis University of California, Berkeley Stavros

More information

The Montana Toolset: Formal Analysis of AADL Specifications

The Montana Toolset: Formal Analysis of AADL Specifications Fremont Associates Process Project QA The Montana Toolset: Formal Analysis of AADL Specifications SAE AS-2 2 Working Group Seal Beach, California 27 January 2005 Outline Origins, Origins, Goals, Plans

More information

Causality Interfaces and Compositional Causality Analysis

Causality 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 information

Relational Interfaces and Refinement Calculus for Compositional System Reasoning

Relational Interfaces and Refinement Calculus for Compositional System Reasoning Relational Interfaces and Refinement Calculus for Compositional System Reasoning Viorel Preoteasa Joint work with Stavros Tripakis and Iulia Dragomir 1 Overview Motivation General refinement Relational

More information

A Little Logic. Propositional Logic. Satisfiability Problems. Solving Sudokus. First Order Logic. Logic Programming

A Little Logic. Propositional Logic. Satisfiability Problems. Solving Sudokus. First Order Logic. Logic Programming A Little Logic International Center for Computational Logic Technische Universität Dresden Germany Propositional Logic Satisfiability Problems Solving Sudokus First Order Logic Logic Programming A Little

More information

Agent-Based HOL Reasoning 1

Agent-Based HOL Reasoning 1 Agent-Based HOL Reasoning 1 Alexander Steen Max Wisniewski Christoph Benzmüller Freie Universität Berlin 5th International Congress on Mathematical Software (ICMS 2016) 1 This work has been supported by

More information

Chapter 2 Background. 2.1 A Basic Description Logic

Chapter 2 Background. 2.1 A Basic Description Logic Chapter 2 Background Abstract Description Logics is a family of knowledge representation formalisms used to represent knowledge of a domain, usually called world. For that, it first defines the relevant

More information

Automated Reasoning Lecture 5: First-Order Logic

Automated Reasoning Lecture 5: First-Order Logic Automated Reasoning Lecture 5: First-Order Logic Jacques Fleuriot jdf@inf.ac.uk Recap Over the last three lectures, we have looked at: Propositional logic, semantics and proof systems Doing propositional

More information

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use An object-oriented design process Process stages Structured design processes involve developing a number of different system models. They require a lot of effort for development and maintenance of these

More information

The State Explosion Problem

The 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 information

Bounded Retransmission in Event-B CSP: a Case Study

Bounded Retransmission in Event-B CSP: a Case Study Available online at www.sciencedirect.com Electronic Notes in Theoretical Computer Science 280 (2011) 69 80 www.elsevier.com/locate/entcs Bounded Retransmission in Event-B CSP: a Case Study Steve Schneider

More information

Theoretical Foundations of the UML

Theoretical Foundations of the UML Theoretical Foundations of the UML Lecture 17+18: A Logic for MSCs Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ws-1718/fuml/ 5.

More information

Communication and Concurrency: CCS

Communication and Concurrency: CCS Communication and Concurrency: CCS R. Milner, A Calculus of Communicating Systems, 1980 cours SSDE Master 1 Why calculi? Prove properties on programs and languages Principle: tiny syntax, small semantics,

More information

TESTING is one of the most important parts of the

TESTING is one of the most important parts of the IEEE TRANSACTIONS 1 Generating Complete Controllable Test Suites for Distributed Testing Robert M. Hierons, Senior Member, IEEE Abstract A test suite is m-complete for finite state machine (FSM) M if it

More information

Software Verification with Abstraction-Based Methods

Software Verification with Abstraction-Based Methods Software Verification with Abstraction-Based Methods Ákos Hajdu PhD student Department of Measurement and Information Systems, Budapest University of Technology and Economics MTA-BME Lendület Cyber-Physical

More information

Alan Bundy. Automated Reasoning LTL Model Checking

Alan Bundy. Automated Reasoning LTL Model Checking Automated Reasoning LTL Model Checking Alan Bundy Lecture 9, page 1 Introduction So far we have looked at theorem proving Powerful, especially where good sets of rewrite rules or decision procedures have

More information

CS1021. Why logic? Logic about inference or argument. Start from assumptions or axioms. Make deductions according to rules of reasoning.

CS1021. Why logic? Logic about inference or argument. Start from assumptions or axioms. Make deductions according to rules of reasoning. 3: Logic Why logic? Logic about inference or argument Start from assumptions or axioms Make deductions according to rules of reasoning Logic 3-1 Why logic? (continued) If I don t buy a lottery ticket on

More information

Methods for the specification and verification of business processes MPB (6 cfu, 295AA)

Methods for the specification and verification of business processes MPB (6 cfu, 295AA) Methods for the specification and verification of business processes MPB (6 cfu, 295AA) Roberto Bruni http://www.di.unipi.it/~bruni 20 - Workflow modules 1 Object We study Workflow modules to model interaction

More information

Research Report 326 ISBN ISSN

Research Report 326 ISBN ISSN University of Oslo Department of Informatics How to transform UML neg into a useful construct Ragnhild Kobro Runde, Øystein Haugen, Ketil Stølen Research Report 326 ISBN 82-7368-280-3 ISSN 0806-3036 November

More information

Lecture 4 Event Systems

Lecture 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 information

EE249 - Fall 2012 Lecture 18: Overview of Concrete Contract Theories. Alberto Sangiovanni-Vincentelli Pierluigi Nuzzo

EE249 - Fall 2012 Lecture 18: Overview of Concrete Contract Theories. Alberto Sangiovanni-Vincentelli Pierluigi Nuzzo EE249 - Fall 2012 Lecture 18: Overview of Concrete Contract Theories 1 Alberto Sangiovanni-Vincentelli Pierluigi Nuzzo Outline: Contracts and compositional methods for system design Where and why using

More information

Foundations of System Development

Foundations of System Development Foundations of System Development Martin Wirsing in cooperation with Axel Rauschmayer WS 05/06 Ausblick: Systematische Entwicklung Mobiler Systeme 2 Goals Modelling and Developing Systems Using UML and

More information

Designing and Evaluating Generic Ontologies

Designing and Evaluating Generic Ontologies Designing and Evaluating Generic Ontologies Michael Grüninger Department of Industrial Engineering University of Toronto gruninger@ie.utoronto.ca August 28, 2007 1 Introduction One of the many uses of

More information

Lecture 05: High-Level Design with SysML. An Introduction to SysML. Where are we? What is a model? The Unified Modeling Language (UML)

Lecture 05: High-Level Design with SysML. An Introduction to SysML. Where are we? What is a model? The Unified Modeling Language (UML) Where are we? Systeme hoher Sicherheit und Qualität Universität Bremen, WS 2017/2018 Lecture 05: High-Level Design with SysML Christoph Lüth, Dieter Hutter, Jan Peleska 01: Concepts of Quality 02: Legal

More information

Communication and Concurrency: CCS. R. Milner, A Calculus of Communicating Systems, 1980

Communication and Concurrency: CCS. R. Milner, A Calculus of Communicating Systems, 1980 Communication and Concurrency: CCS R. Milner, A Calculus of Communicating Systems, 1980 Why calculi? Prove properties on programs and languages Principle: tiny syntax, small semantics, to be handled on

More information

Algebraic State Machines

Algebraic State Machines Algebraic State Machines Manfred Broy 1, Martin Wirsing 2 1 Institut für Informatik, Technische Universität München 80290 München, Germany email:broy@informatik.tu-muenchen.de 2 Institut für Informatik,

More information

Cuts. Cuts. Consistent cuts and consistent global states. Global states and cuts. A cut C is a subset of the global history of H

Cuts. Cuts. Consistent cuts and consistent global states. Global states and cuts. A cut C is a subset of the global history of H Cuts Cuts A cut C is a subset of the global history of H C = h c 1 1 hc 2 2...hc n n A cut C is a subset of the global history of H The frontier of C is the set of events e c 1 1,ec 2 2,...ec n n C = h

More information

Abstractions and Decision Procedures for Effective Software Model Checking

Abstractions and Decision Procedures for Effective Software Model Checking Abstractions and Decision Procedures for Effective Software Model Checking Prof. Natasha Sharygina The University of Lugano, Carnegie Mellon University Microsoft Summer School, Moscow, July 2011 Lecture

More information

Timed Test Generation Based on Timed Temporal Logic

Timed Test Generation Based on Timed Temporal Logic Timed Test Generation Based on Timed Temporal Logic STEFAN D. BRUDA and CHUN DAI Department of Computer Science Bishop s University Sherbrooke, Quebec J1M 1Z7 CANADA stefan@bruda.ca, cdai@cs.ubishops.ca

More information

Distributed Algorithms (CAS 769) Dr. Borzoo Bonakdarpour

Distributed Algorithms (CAS 769) Dr. Borzoo Bonakdarpour Distributed Algorithms (CAS 769) Week 1: Introduction, Logical clocks, Snapshots Dr. Borzoo Bonakdarpour Department of Computing and Software McMaster University Dr. Borzoo Bonakdarpour Distributed Algorithms

More information

CSE370: Introduction to Digital Design

CSE370: Introduction to Digital Design CSE370: Introduction to Digital Design Course staff Gaetano Borriello, Brian DeRenzi, Firat Kiyak Course web www.cs.washington.edu/370/ Make sure to subscribe to class mailing list (cse370@cs) Course text

More information

Lecture (08) Synchronous Sequential Logic

Lecture (08) Synchronous Sequential Logic Lecture (08) Synchronous Sequential Logic By: Dr. Ahmed ElShafee ١ Dr. Ahmed ElShafee, ACU : Spring 2018, CSE303 Logic design II Analysis of Clocked Sequential Circuits The behavior of a clocked sequential

More information

Music as a Formal Language

Music as a Formal Language Music as a Formal Language Finite-State Automata and Pd Bryan Jurish moocow@ling.uni-potsdam.de Universität Potsdam, Institut für Linguistik, Potsdam, Germany pd convention 2004 / Jurish / Music as a formal

More information

Axiomatized Relationships Between Ontologies. Carmen Chui

Axiomatized Relationships Between Ontologies. Carmen Chui Axiomatized Relationships Between Ontologies by Carmen Chui A thesis submitted in conformity with the requirements for the degree of Master of Applied Science Graduate Department of Mechanical & Industrial

More information

SENSE: Abstraction-Based Synthesis of Networked Control Systems

SENSE: Abstraction-Based Synthesis of Networked Control Systems SENSE: Abstraction-Based Synthesis of Networked Control Systems Mahmoud Khaled, Matthias Rungger, and Majid Zamani Hybrid Control Systems Group Electrical and Computer Engineering Technical University

More information

Algebraic Trace Theory

Algebraic Trace Theory Algebraic Trace Theory EE249 Presented by Roberto Passerone Material from: Jerry R. Burch, Trace Theory for Automatic Verification of Real-Time Concurrent Systems, PhD thesis, CMU, August 1992 October

More information

Partial model checking via abstract interpretation

Partial 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 information

Model for reactive systems/software

Model for reactive systems/software Temporal Logics CS 5219 Abhik Roychoudhury National University of Singapore The big picture Software/ Sys. to be built (Dream) Properties to Satisfy (caution) Today s lecture System Model (Rough Idea)

More information

Overview. 1 Lecture 1: Introduction. 2 Lecture 2: Message Sequence Charts. Joost-Pieter Katoen Theoretical Foundations of the UML 1/32

Overview. 1 Lecture 1: Introduction. 2 Lecture 2: Message Sequence Charts. Joost-Pieter Katoen Theoretical Foundations of the UML 1/32 Overview 1 Lecture 1: Introduction 2 Lecture 2: Message Sequence Charts Joost-Pieter Katoen Theoretical Foundations of the UML 1/32 Theoretical Foundations of the UML Lecture 1: Introduction Joost-Pieter

More information

A Framework for. Security Analysis. with Team Automata

A Framework for. Security Analysis. with Team Automata A Framework for Security Analysis with Team Automata Marinella Petrocchi Istituto di Informatica e Telematica National Research Council IIT-CNR Pisa, Italy Tuesday 8 June 2004 DIMACS with Maurice ter Beek

More information

MSR 3.0: The Logical Meeting Point of Multiset Rewriting and Process Algebra. Iliano Cervesato. ITT Industries, NRL Washington, DC

MSR 3.0: The Logical Meeting Point of Multiset Rewriting and Process Algebra. Iliano Cervesato. ITT Industries, NRL Washington, DC MSR 3.0: The Logical Meeting Point of Multiset Rewriting and Process Algebra Iliano Cervesato iliano@itd.nrl.navy.mil ITT Industries, inc @ NRL Washington, DC http://theory.stanford.edu/~iliano ISSS 2003,

More information

Helsinki University of Technology Laboratory for Theoretical Computer Science Research Reports 66

Helsinki University of Technology Laboratory for Theoretical Computer Science Research Reports 66 Helsinki University of Technology Laboratory for Theoretical Computer Science Research Reports 66 Teknillisen korkeakoulun tietojenkäsittelyteorian laboratorion tutkimusraportti 66 Espoo 2000 HUT-TCS-A66

More information

Embedded Systems Development

Embedded Systems Development Embedded Systems Development Lecture 2 Finite Automata & SyncCharts Daniel Kästner AbsInt Angewandte Informatik GmbH kaestner@absint.com Some things I forgot to mention 2 Remember the HISPOS registration

More information

Linear Time Logic Control of Discrete-Time Linear Systems

Linear Time Logic Control of Discrete-Time Linear Systems University of Pennsylvania ScholarlyCommons Departmental Papers (ESE) Department of Electrical & Systems Engineering December 2006 Linear Time Logic Control of Discrete-Time Linear Systems Paulo Tabuada

More information

Towards a formal language for systemic requirements

Towards a formal language for systemic requirements Towards a formal language for systemic requirements LIX, Yann Hourdel École Polytechnique, 91128 Palaiseau Cedex, France, yann.hourdel@polytechnique.edu Abstract. This work is an attempt to contribute

More information

A Context Dependent Equivalence Relation Between Kripke Structures (Extended abstract)

A Context Dependent Equivalence Relation Between Kripke Structures (Extended abstract) A Context Dependent Equivalence Relation Between Kripke Structures (Extended abstract) Bernhard Josko Computer Science Department, University of Oldenburg 2900 Oldenburg, Federal Republic of Germany Abstract

More information

A Logic Primer. Stavros Tripakis University of California, Berkeley. Stavros Tripakis (UC Berkeley) EE 144/244, Fall 2014 A Logic Primer 1 / 35

A Logic Primer. Stavros Tripakis University of California, Berkeley. Stavros Tripakis (UC Berkeley) EE 144/244, Fall 2014 A Logic Primer 1 / 35 EE 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Fall 2014 A Logic Primer Stavros Tripakis University of California, Berkeley Stavros Tripakis (UC Berkeley) EE 144/244,

More information

Stéphane Lafortune. August 2006

Sté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 information

University of Surrey. Bounded Retransmission in Event-B CSP: A Case Study. Steve Schneider, Helen Treharne and Heike Wehrheim

University of Surrey. Bounded Retransmission in Event-B CSP: A Case Study. Steve Schneider, Helen Treharne and Heike Wehrheim University of Surrey Bounded Retransmission in Event-B CSP: A Case Study Department of Computing Steve Schneider, Helen Treharne and Heike Wehrheim March 21 st 2011 Computing Sciences Report CS-11-04 Bounded

More information

Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs

Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs Computer Science cpsc322, Lecture 20 (Textbook Chpt 5.1.2-5.2.2 ) June, 6, 2017 CPSC 322, Lecture 20 Slide 1 Lecture Overview

More information

Logic in Computer Science. Frank Wolter

Logic in Computer Science. Frank Wolter Logic in Computer Science Frank Wolter Meta Information Slides, exercises, and other relevant information are available at: http://www.liv.ac.uk/~frank/teaching/comp118/comp118.html The module has 18 lectures.

More information

Benefits of Interval Temporal Logic for Specification of Concurrent Systems

Benefits of Interval Temporal Logic for Specification of Concurrent Systems Benefits of Interval Temporal Logic for Specification of Concurrent Systems Ben Moszkowski Software Technology Research Laboratory De Montfort University Leicester Great Britain email: benm@dmu.ac.uk http://www.tech.dmu.ac.uk/~benm

More information

Part I. Principles and Techniques

Part I. Principles and Techniques Introduction to Formal Methods Part I. Principles and Techniques Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr Introduction Text System and Software Verification : Model-Checking Techniques and Tools In this

More information

CSE 1400 Applied Discrete Mathematics Definitions

CSE 1400 Applied Discrete Mathematics Definitions CSE 1400 Applied Discrete Mathematics Definitions Department of Computer Sciences College of Engineering Florida Tech Fall 2011 Arithmetic 1 Alphabets, Strings, Languages, & Words 2 Number Systems 3 Machine

More information

Models of Concurrency

Models of Concurrency Models of Concurrency GERARDO SCHNEIDER UPPSALA UNIVERSITY DEPARTMENT OF INFORMATION TECHNOLOGY UPPSALA, SWEDEN Thanks to Frank Valencia Models of Concurrency p.1/57 Concurrency is Everywhere Concurrent

More information

Probabilistic Model Checking and Strategy Synthesis for Robot Navigation

Probabilistic Model Checking and Strategy Synthesis for Robot Navigation Probabilistic Model Checking and Strategy Synthesis for Robot Navigation Dave Parker University of Birmingham (joint work with Bruno Lacerda, Nick Hawes) AIMS CDT, Oxford, May 2015 Overview Probabilistic

More information

Lecture 3: Semantics of Propositional Logic

Lecture 3: Semantics of Propositional Logic Lecture 3: Semantics of Propositional Logic 1 Semantics of Propositional Logic Every language has two aspects: syntax and semantics. While syntax deals with the form or structure of the language, it is

More information

Testing Distributed Systems

Testing Distributed Systems Testing Distributed Systems R. M. Hierons Brunel University, UK rob.hierons@brunel.ac.uk http://people.brunel.ac.uk/~csstrmh Work With Jessica Chen Mercedes Merayo Manuel Nunez Hasan Ural Model Based Testing

More information

A Logic Primer. Stavros Tripakis University of California, Berkeley

A Logic Primer. Stavros Tripakis University of California, Berkeley EE 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Fall 2015 A Logic Primer Stavros Tripakis University of California, Berkeley Stavros Tripakis (UC Berkeley) EE 144/244,

More information

cis32-ai lecture # 18 mon-3-apr-2006

cis32-ai lecture # 18 mon-3-apr-2006 cis32-ai lecture # 18 mon-3-apr-2006 today s topics: propositional logic cis32-spring2006-sklar-lec18 1 Introduction Weak (search-based) problem-solving does not scale to real problems. To succeed, problem

More information

Formal Verification of Systems-on-Chip

Formal Verification of Systems-on-Chip Formal Verification of Systems-on-Chip Wolfgang Kunz Department of Electrical & Computer Engineering University of Kaiserslautern, Germany Slide 1 Industrial Experiences Formal verification of Systems-on-Chip

More information

One Year Later. Iliano Cervesato. ITT Industries, NRL Washington, DC. MSR 3.0:

One Year Later. Iliano Cervesato. ITT Industries, NRL Washington, DC.  MSR 3.0: MSR 3.0: The Logical Meeting Point of Multiset Rewriting and Process Algebra MSR 3: Iliano Cervesato iliano@itd.nrl.navy.mil One Year Later ITT Industries, inc @ NRL Washington, DC http://www.cs.stanford.edu/~iliano

More information

Design of Embedded Systems: Models, Validation and Synthesis (EE 249) Lecture 9

Design of Embedded Systems: Models, Validation and Synthesis (EE 249) Lecture 9 Design of Embedded Systems: Models, Validation and Synthesis (EE 249) Lecture 9 Prof. Dr. Reinhard von Hanxleden Christian-Albrechts Universität Kiel Department of Computer Science Real-Time Systems and

More information

Description Logics. an introduction into its basic ideas

Description Logics. an introduction into its basic ideas Description Logics an introduction into its basic ideas A. Heußner WS 2003/2004 Preview: Basic Idea: from Network Based Structures to DL AL : Syntax / Semantics Enhancements of AL Terminologies (TBox)

More information

arxiv: v1 [cs.lo] 29 May 2014

arxiv: v1 [cs.lo] 29 May 2014 Under consideration for publication in Theory and Practice of Logic Programming 1 arxiv:1405.7739v1 [cs.lo] 29 May 2014 (Quantified) Horn Constraint Solving for Program Verification and Synthesis Andrey

More information

Models for Concurrency

Models for Concurrency Models for Concurrency (A revised version of DAIMI PB-429) Glynn Winskel Mogens Nielsen Computer Science Department, Aarhus University, Denmark November 1993 Abstract This is, we believe, the final version

More information

Timo Latvala. March 7, 2004

Timo Latvala. March 7, 2004 Reactive Systems: Safety, Liveness, and Fairness Timo Latvala March 7, 2004 Reactive Systems: Safety, Liveness, and Fairness 14-1 Safety Safety properties are a very useful subclass of specifications.

More information

Automata-based Verification - III

Automata-based Verification - III CS3172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20/22: email: howard.barringer@manchester.ac.uk March 2005 Third Topic Infinite Word Automata Motivation Büchi Automata

More information

EAHyper: Satisfiability, Implication, and Equivalence Checking of Hyperproperties

EAHyper: Satisfiability, Implication, and Equivalence Checking of Hyperproperties EAHyper: Satisfiability, Implication, and Equivalence Checking of Hyperproperties Bernd Finkbeiner, Christopher Hahn, and Marvin Stenger Saarland Informatics Campus, Saarland University, Saarbrücken, Germany

More information

Automata, Logic and Games: Theory and Application

Automata, Logic and Games: Theory and Application Automata, Logic and Games: Theory and Application 1. Büchi Automata and S1S Luke Ong University of Oxford TACL Summer School University of Salerno, 14-19 June 2015 Luke Ong Büchi Automata & S1S 14-19 June

More information

Decomposing Specifications of Concurrent Systems

Decomposing Specifications of Concurrent Systems 327 Decomposing Specifications of Concurrent Systems Martín Abadi and Leslie Lamport Systems Research Center, Digital Equipment Corporation 130 Lytton Avenue, Palo Alto, CA 94301, U.S.A. We introduce a

More information

Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc.

Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc. Finite State Machines Introduction Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc. Such devices form

More information

Automata-based Verification - III

Automata-based Verification - III COMP30172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20: email: howard.barringer@manchester.ac.uk March 2009 Third Topic Infinite Word Automata Motivation Büchi Automata

More information

The Underlying Semantics of Transition Systems

The Underlying Semantics of Transition Systems The Underlying Semantics of Transition Systems J. M. Crawford D. M. Goldschlag Technical Report 17 December 1987 Computational Logic Inc. 1717 W. 6th St. Suite 290 Austin, Texas 78703 (512) 322-9951 1

More information

Industrial-Strength Model-Based Testing - State of the Art and Current Challenges

Industrial-Strength Model-Based Testing - State of the Art and Current Challenges Industrial-Strength Model-Based Testing - State of the Art and Current Challenges Jan Peleska University of Bremen, Department of Mathematics and Computer Science, Bremen, Germany Verified Systems International

More information

Software Verification

Software 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 information

7. Queueing Systems. 8. Petri nets vs. State Automata

7. Queueing Systems. 8. Petri nets vs. State Automata Petri Nets 1. Finite State Automata 2. Petri net notation and definition (no dynamics) 3. Introducing State: Petri net marking 4. Petri net dynamics 5. Capacity Constrained Petri nets 6. Petri net models

More information

A subtle problem. An obvious problem. An obvious problem. An obvious problem. No!

A subtle problem. An obvious problem. An obvious problem. An obvious problem. No! A subtle problem An obvious problem when LC = t do S doesn t make sense for Lamport clocks! there is no guarantee that LC will ever be S is anyway executed after LC = t Fixes: if e is internal/send and

More information

Bridging the Gap between Reactive Synthesis and Supervisory Control

Bridging the Gap between Reactive Synthesis and Supervisory Control Bridging the Gap between Reactive Synthesis and Supervisory Control Stavros Tripakis University of California, Berkeley Joint work with Ruediger Ehlers (Berkeley, Cornell), Stéphane Lafortune (Michigan)

More information

Slicing Petri Nets. Astrid Rakow. Department für Informatik, Univeristät Oldenburg

Slicing Petri Nets. Astrid Rakow. Department für Informatik, Univeristät Oldenburg Slicing Petri Nets Astrid Rakow Department für Informatik, Univeristät Oldenburg astrid.rakow@informatik.uni-oldenburg.de Abstract. In this paper we introduce the notion of net-slice to describe a subnet

More information

Part 1: Fundamentals

Part 1: Fundamentals Provläsningsexemplar / Preview INTERNATIONAL STANDARD ISO 19101-1 First edition 2014-11-15 Geographic information Reference model Part 1: Fundamentals Information géographique Modèle de référence Partie

More information

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for? Computer Engineering and Networks Overview Discrete Event Systems Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two circuits

More information

The TLA + proof system

The TLA + proof system The TLA + proof system Stephan Merz Kaustuv Chaudhuri, Damien Doligez, Leslie Lamport INRIA Nancy & INRIA-MSR Joint Centre, France Amir Pnueli Memorial Symposium New York University, May 8, 2010 Stephan

More information

Formal Methods in Software Engineering

Formal Methods in Software Engineering Formal Methods in Software Engineering Modeling Prof. Dr. Joel Greenyer October 21, 2014 Organizational Issues Tutorial dates: I will offer two tutorial dates Tuesdays 15:00-16:00 in A310 (before the lecture,

More information

Component-Interaction Automata as a Verification-Oriented Component-Based System Specification

Component-Interaction Automata as a Verification-Oriented Component-Based System Specification Component-Interaction Automata as a Verification-Oriented Component-Based System Specification Luboš Brim, Ivana Černá, Pavlína Vařeková, Barbora Zimmerova Faculty of Informatics Masaryk University, Brno

More information

High Performance Computing

High Performance Computing Master Degree Program in Computer Science and Networking, 2014-15 High Performance Computing 2 nd appello February 11, 2015 Write your name, surname, student identification number (numero di matricola),

More information

Feedback Refinement Relations for the Synthesis of Symbolic Controllers

Feedback Refinement Relations for the Synthesis of Symbolic Controllers Feedback Refinement Relations for the Synthesis of Symbolic Controllers Gunther Reissig 1, Alexander Weber 1 and Matthias Rungger 2 1: Chair of Control Engineering Universität der Bundeswehr, München 2:

More information

Timed Automata VINO 2011

Timed Automata VINO 2011 Timed Automata VINO 2011 VeriDis Group - LORIA July 18, 2011 Content 1 Introduction 2 Timed Automata 3 Networks of timed automata Motivation Formalism for modeling and verification of real-time systems.

More information

Digital Logic Design ENEE x. Lecture 14

Digital Logic Design ENEE x. Lecture 14 Digital Logic Design ENEE 244-010x Lecture 14 Announcements Homework 6 due today Agenda Last time: Binary Adders and Subtracters (5.1, 5.1.1) Carry Lookahead Adders (5.1.2, 5.1.3) This time: Decimal Adders

More information

Finite-State Model Checking

Finite-State Model Checking EECS 219C: Computer-Aided Verification Intro. to Model Checking: Models and Properties Sanjit A. Seshia EECS, UC Berkeley Finite-State Model Checking G(p X q) Temporal logic q p FSM Model Checker Yes,

More information