Steam Boiler Control An Example in ASM Formalisation
|
|
- Dayna Owen
- 5 years ago
- Views:
Transcription
1 Formal Specification and Verification of Software Steam Boiler Control An Example in ASM Formalisation Bernhard Beckert UNIVERSITÄT KOBLENZ-LANDAU B. Beckert: Formal Specification and Verification of Software p.1
2 Steam Boiler Control: Scenario a z d / k δ d w d max System Components steam boiler 4 water level measuring device w/ k w min w four pumps four pump controlers steam quantity measuring device p1 /... / p4 k p1 /... / k l/ δ p4 p v valve for emptying the boiler B. Beckert: Formal Specification and Verification of Software p.2
3 Steam Boiler Control: Scenario a z 4 d / k δ d w d max Physical constants w min w max l minimal water level maximal water level water amount per pump w/ k w min w d max δ p maximal quantity of steam exiting the boiler error in the value of l p1 /... / p4 l/ δ p v δ d error in steam measurement k p1 /... / k p4 B. Beckert: Formal Specification and Verification of Software p.3
4 Steam Boiler Control: Scenario a z 4 d / k δ d w w/ k w d max min w Measured values w water level d amount of steam exiting the boiler k p (i) pump i works/broken k w water level measuring device works/broken p1 /... / p4 l/ δ p v k d steam amount measuring device works/broken k p1 /... / k p4 B. Beckert: Formal Specification and Verification of Software p.4
5 Steam Boiler Control: Scenario a z d / k δ d w d max Control values p(i) pump i on/off k 4 p1 /... / p4 p1 /... / k l/ δ p4 p v w/ k w min w v a z valve open/closed boiler on/off state init/norm/broken/stop B. Beckert: Formal Specification and Verification of Software p.5
6 Steam Boiler with ASMs Restrictions Real-time aspects not modelled Communication between devices not modelled B. Beckert: Formal Specification and Verification of Software p.6
7 Steam Boiler with ASMs Restrictions Real-time aspects not modelled Communication between devices not modelled Measured values Modelled as functions that are changed externally Control values Modelled as functions that are read externally B. Beckert: Formal Specification and Verification of Software p.6
8 Steam Boiler with ASMs: Two Versions First version The possibility that devices are broken is not modelled States: init,normal,stop Second version The possibility that devices are broken is included in the model Additional state: broken B. Beckert: Formal Specification and Verification of Software p.7
9 Û Ñ Ü Û ÓÔØ Û Ñ Ò First Version: Strategy for Filling Additional constant w opt Optimal water level Strategy ØÓÔ ÔÙÑÔ Ó«½ ÔÙÑÔ ÓÒ Û ÓÔØ Ð ¾ ÔÙÑÔ ÓÒ Û ÓÔØ ¾Ð ÔÙÑÔ ÓÒ Û ÓÔØ Ð ÔÙÑÔ ÓÒ ØÓÔ B. Beckert: Formal Specification and Verification of Software p.8
10 First Version: Vocabulary Universes state = {init, norm, stop} openclosed = {open, closed} water = N pumps = {1, 2, 3, 4} onoff = {on, off } B. Beckert: Formal Specification and Verification of Software p.9
11 First Version: Vocabulary Universes state = {init, norm, stop} openclosed = {open, closed} water = N pumps = {1, 2, 3, 4} onoff = {on, off } Note These are unary boolean functions; they define a type/class B. Beckert: Formal Specification and Verification of Software p.9
12 First Version: Vocabulary Dynamic functions External functions Static functions p : pumps onoff controling the pumps v : openclosed controling the steam valve a : onoff controling the boiler z : state boiler state w : water water level d : water steam exiting boiler +,, : N N N arithmetic <, : N N Boole ordering w max, w min, w opt, l, d max N physical constants B. Beckert: Formal Specification and Verification of Software p.10
13 Initial State a = off z = init B. Beckert: Formal Specification and Verification of Software p.11
14 Rule Initialisation if (z = init) then skip else if 0 < d then z := stop else if w < w min + d max then v := closed p(i) := on (i = 1..4) end else if w max < w then v := open p(i) := off (i = 1..4) end else z v := norm := closed a := on p(i) := off (i = 1..4) end endif endif endif endif B. Beckert: Formal Specification and Verification of Software p.12
15 Rule Normal if (z = norm) then skip else if w max < w w < w min then a z end else := off := stop if w w opt then p(1) := on else p(1) := off endif if w w opt l then p(2) := on else p(2) := off endif if w w opt (2 l) then p(3) := on else p(3) := off endif if w w opt (3 l) then p(4) := on else p(4) := off endif end endif endif B. Beckert: Formal Specification and Verification of Software p.13
16 Rule Control Initialisation Normal end B. Beckert: Formal Specification and Verification of Software p.14
17 Second Version: Vocabulary Universes state openclosed water = {init, norm, broken, stop} = {open, closed} = N pumps = {1, 2, 3, 4} onoff = {on, off } worksbroken = {works, broken} B. Beckert: Formal Specification and Verification of Software p.15
18 Second Version: Vocabulary Dynamic functions p : pumps onoff controling the pumps v : openclosed controling steam valve a : onoff controling the boiler z : state boiler state s min, s max : water estimated water level n p : pumps number of active pumps External functions w : water water level d : water steam exiting boiler k p : pumps worksbroken pump works/broken k w : worksbroken water level device k d : worksbroken steam amount device B. Beckert: Formal Specification and Verification of Software p.16
19 Second Version: Vocabulary Static functions +,,, min : N N N arithmetic <, : N N Boole ordering w max, w min, l : N physical constants d max,δ p,δ d : N physical constants optpumps : water water pumps optimal pump number numworking : N worksbroken 4 N number of working pumps controlpumps : pumps 2 worksbroken 4 onoff control for each pump B. Beckert: Formal Specification and Verification of Software p.17
20 Second Version: Vocabulary Static function optpumps (encodes the strategy) optpumps(w 1, w 2 ) = optimal number of pumps for water level between w 1 and w 2 B. Beckert: Formal Specification and Verification of Software p.18
21 Second Version: Vocabulary Static function optpumps (encodes the strategy) optpumps(w 1, w 2 ) = optimal number of pumps for water level between w 1 and w 2 Static function numworking numworking(i, k 1, k 2, k 3, k 4 ) = #{j j i k j = works} B. Beckert: Formal Specification and Verification of Software p.18
22 Second Version: Vocabulary Static function optpumps (encodes the strategy) optpumps(w 1, w 2 ) = optimal number of pumps for water level between w 1 and w 2 Static function numworking numworking(i, k 1, k 2, k 3, k 4 ) = #{j j i k j = works} Static function controlpumps controlpumps(i, n opt, k 1, k 2, k 3, k 4 ) = { on if numworking(i 1, k 1, k 2, k 3, k 4 ) < n opt off otherwise B. Beckert: Formal Specification and Verification of Software p.18
23 Rule Initialisation if (z = init) then skip else if 0 < d k w = broken k d = broken then z := stop else if w < w min + d max then v := closed p(i) := on (i = 1..4) end else if w max < w then v := open p(i) := off (i = 1..4) end else z v := norm := closed s min := w s max := w n p := 0 p(i) := off (i = 1..4) end endif endif endif endif B. Beckert: Formal Specification and Verification of Software p.19
24 Rule NormBroken if (z = norm z = broken) then skip else if k w = works then let min = w, max = w, z val = norm in ControlPumps endlet else if k d = works then let min = s min d + n p l δ d n p δ p, max = s max d + n p l + δ d + n p δ p, z val = broken in ControlPumps endlet else z := stop a := off end endif endif endif B. Beckert: Formal Specification and Verification of Software p.20
25 Rule ControlPumps if min < w min w max < max then z := stop a := off end else let n opt = optpumps(min,max) in p(i) := controlpumps(i, n opt, k p (1),..., k p (4)) (i = 1..4) n p := min(n opt,numworking(4, k p (1),..., k p (4))) s min := min s max := max z := z val end endlet endif B. Beckert: Formal Specification and Verification of Software p.21
26 Rule Control Initialisation NormBroken end B. Beckert: Formal Specification and Verification of Software p.22
27 Alternative Solution: Vocabulary Universes state openclosed water = {init, norm, broken, stop} = {open, closed} = N pumps = {1, 2, 3, 4} onoff = {on, off } worksbroken = {works, broken} waitcompute = {wait, compute} B. Beckert: Formal Specification and Verification of Software p.23
28 Alternative Solution: Vocabulary Additional dynamic functions i : pumps f : waitcompute current pump next cycle Meaning of function f f = compute: f = wait: Control the pumps Measurement B. Beckert: Formal Specification and Verification of Software p.24
29 Alternative: Rule Initialisation if (z = init) then skip else if 0 < d k w = broken k d = broken then z := stop else if w < w min + d max then v := closed p(i) := on (i = 1..4) f := wait end else if w max < w then v := open p(i) := off (i = 1..4) f := wait end else z := norm f := wait v := closed s min := w s max := w n p := 0 p(i) := off (i = 1..4) end endif endif endif endif B. Beckert: Formal Specification and Verification of Software p.25
30 Alternative: Rule NormBroken (1) if ((z = norm z = broken) f = wait) then skip else if k w = works then s min := w s max := w z := norm f := compute i := 1 n p := 0 end B. Beckert: Formal Specification and Verification of Software p.26
31 Alternative: Rule NormBroken (2) else if k d = works then s min := s min d + n p l δ d n p δ p s max := s max d + n p l + δ d + n p δ p z := broken f := compute i := 1 n p := 0 end else z := stop a := off end endif endif endif B. Beckert: Formal Specification and Verification of Software p.27
32 Alternative: Rule ControlPumps (1) if ((z = norm z = broken) f = compute) then skip else if s min < w min w max < s max then z := stop a := off end B. Beckert: Formal Specification and Verification of Software p.28
33 Alternative: Rule ControlPumps (2) else if n p < optpumps(s min, s max ) k p (i) = works then p(i) := on n p := n p + 1 end else p(i) := off endif if i < 4 then i := i + 1 else f := wait endif end endif B. Beckert: Formal Specification and Verification of Software p.29
34 Alternative: Rule Control Initialisation NormBroken ControlPumps end B. Beckert: Formal Specification and Verification of Software p.30
The Object Contraint Language by Example
Formal Specification of Software The Object Contraint Language by Example Bernhard Beckert UNIVERSITÄT KOBLENZ-LANDAU B. Beckert: Formal Specification of Software p.1 The Classifier Context inv ( c :)?
More informationFormal Specification and Verification
Formal Specification and Verification Introduction to Promela Bernhard Beckert Based on a lecture by Wolfgang Ahrendt and Reiner Hähnle at Chalmers University, Göteborg Formal Specification and Verification:
More informationApplications of Formal Verification
Applications of Formal Verification Model Checking: Introduction to PROMELA Prof. Dr. Bernhard Beckert Dr. Vladimir Klebanov SS 2012 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State
More informationApplications of Formal Verification
Applications of Formal Verification Model Checking: Introduction to PROMELA Bernhard Beckert Mattias Ulbrich SS 2017 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg
More informationApplications of Formal Verification
Applications of Formal Verification Model Checking: Introduction to PROMELA Prof. Dr. Bernhard Beckert Dr. Vladimir Klebanov SS 2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State
More informationDynamic Logic with Non-rigid Functions
Dynamic Logic with Non-rigid Functions A Basis for Object-oriented Program Verification Bernhard Beckert 1 André Platzer 2 1 University of Koblenz-Landau, Department of Computer Science beckert@uni-koblenz.de
More information5. Selection: If and Switch Controls
Computer Science I CS 135 5. Selection: If and Switch Controls René Doursat Department of Computer Science & Engineering University of Nevada, Reno Fall 2005 Computer Science I CS 135 0. Course Presentation
More informationAn Esterel Virtual Machine
An Esterel Virtual Machine Stephen A. Edwards Columbia University Octopi Workshop Chalmers University of Technology Gothenburg, Sweden December 28 An Esterel Virtual Machine Goal: Run big Esterel programs
More informationDenotational semantics (An introduction)
Denotational semantics (An introduction) Ralf Lämmel Software Language Engineering Team University of Koblenz-Landau http://www.softlang.org/ Dependencies: Tree-based abstract syntax Basic of interpretation
More informationDisjoint, Partition and Intersection Constraints for Set and Multiset Variables
Disjoint, Partition and Intersection Constraints for Set and Multiset Variables Christian Bessiere ½, Emmanuel Hebrard ¾, Brahim Hnich ¾, and Toby Walsh ¾ ¾ ½ LIRMM, Montpelier, France. Ö Ð ÖÑÑ Ö Cork
More informationThe syntax of the OUN language
The syntax of the OUN language Olaf Owe Department of Informatics, University of Oslo, Norway February 21, 2002 Contents 1 The OUN language 1 1.1 Interface and contract definition.................. 2 1.2
More informationKI-Programmierung. Basic Search Algorithms
KI-Programmierung Basic Search Algorithms Bernhard Beckert UNIVERSITÄT KOBLENZ-LANDAU Winter Term 2007/2008 B. Beckert: KI-Programmierung p.1 Example: Travelling in Romania Scenario On holiday in Romania;
More informationStreams of Steam The Steam Boiler Specification Case Study
Streams of Steam The Steam Boiler Specification Case Study Manfred Broy, Franz Regensburger, Bernhard Schätz, Katharina Spies Institut für Informatik Technische Universität München email: {broy,regensbu,schaetz,spiesk}@informatik.tu-muenchen.de
More informationSoftware Engineering using Formal Methods
Software Engineering using Formal Methods Introduction to Promela Wolfgang Ahrendt & Richard Bubel & Reiner Hähnle & Wojciech Mostowski 31 August 2011 SEFM: Promela /GU 110831 1 / 35 Towards Model Checking
More informationUnit-3 Software Design (Lecture Notes)
Unit-3 Software Design (Lecture Notes) Prepared by Jay Nanavati, Assistant Professor, SEMCOM Topics Software Design - Introduction Design Principles Module Level concepts Overview of Structured design
More informationREMOTE CONTROL MYSYSTEM
REMOTE CONTROL MYSYSTEM GENERAL FEATURES... 3 MAIN FUNCTIONS AND EQUIPMENT:... 3 LCD DISPLAY... 4 KEYBOARD:... 5 MAIN LOGIC... 6 BOARD CONFIGURATION... 7 MAIN PARAMETERS LIST:... 7 MAIN PARAMETERS CONFIGURATION:...
More informationGenerating Code from Event-B Using an Intermediate Specification Notation
Rodin User and Developer Workshop Generating Code from Event-B Using an Intermediate Specification Notation Andy Edmunds - ae02@ecs.soton.ac.uk Michael Butler - mjb@ecs.soton.ac.uk Between Abstract Development
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems Greedy Local Search Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 19, 2007 Nebel, Hué and Wölfl (Universität Freiburg) Constraint
More informationLecture 9. Monday, January 31 CS 205 Programming for the Sciences - Lecture 9 1
Lecture 9 Reminder: Programming Assignment 3 is due Wednesday by 4:30pm. Exam 1 is on Friday. Exactly like Prog. Assign. 2; no collaboration or help from the instructor. Log into Windows/ACENET. Start
More information(Not Quite) Minijava
(Not Quite) Minijava CMCS22620, Spring 2004 April 5, 2004 1 Syntax program mainclass classdecl mainclass class identifier { public static void main ( String [] identifier ) block } classdecl class identifier
More informationFunction Block Diagram (FBD)
TM241TRE.30-ENG 2012/01/03 Function Block Diagram (FBD) TM241 Requirements 2 Training modules: TM210 The Basics of Automation Studio TM223 Automation Studio Diagnostics Software None Hardware None Table
More informationSoftware Engineering using Formal Methods
Software Engineering using Formal Methods Introduction to Promela Wolfgang Ahrendt 03 September 2015 SEFM: Promela /GU 150903 1 / 36 Towards Model Checking System Model Promela Program byte n = 0; active
More informationA quick introduction to SML
A quick introduction to SML CMSC 15300 April 9, 2004 1 Introduction Standard ML (SML) is a functional language (or higherorder language) and we will use it in this course to illustrate some of the important
More informationThis file contains an excerpt from the character code tables and list of character names for The Unicode Standard, Version 3.0.
Range: This file contains an excerpt from the character code tables and list of character names for The Unicode Standard, Version.. isclaimer The shapes of the reference glyphs used in these code charts
More informationIntroduction to Artificial Intelligence. Informed Search
Introduction to Artificial Intelligence Informed Search Bernhard Beckert UNIVERSITÄT KOBLENZ-LANDAU Winter Term 2004/2005 B. Beckert: KI für IM p.1 Outline Best-first search A search Heuristics B. Beckert:
More informationE04DGF NAG Fortran Library Routine Document
E04 Minimizing or Maximizing a Function E04DGF NAG Fortran Library Routine Document Note. Before using this routine, please read the Users Note for your implementation to check the interpretation of bold
More informationCOMP520 - GoLite Type Checking Specification
COMP520 - GoLite Type Checking Specification Vincent Foley February 26, 2015 1 Declarations Declarations are the primary means of introducing new identifiers in the symbol table. In Go, top-level declarations
More informationConfiguring Device Control with the Monitoring App
Dec 2016 Configuring Device Control with the Monitoring App Contents Introduction... 1 Device Information... 2 Activation Button... 3 Device Dashboard... 4 Configuring Devices... 7 Appendix A Scheduling
More informationStatus: Informal Type: Technical. This document gives an example of the Compliance Notation.
Project: Title: Status: Informal Type: Technical Author: Name Location Signature Date R.D. Arthan Abstract: WIN01 This document gives an example of the. Distribution: Library Copyright c : Lemma 1 Ltd
More informationSpark verification features
Spark verification features Paul Jackson School of Informatics University of Edinburgh Formal Verification Spring 2018 Adding specification information to programs Verification concerns checking whether
More informationCPE 112 Spring 2015 Exam II (100 pts) March 4, Definition Matching (8 Points)
Name Definition Matching (8 Points) 1. (8 pts) Match the words with their definitions. Choose the best definition for each word. Relational Expression Iteration Counter Count-controlled loop Loop Flow
More informationPort-Numbering Model. DDA Course week 2
Port-Numbering Model DDA Course week 2!1 Distributed Systems Intuition: distributed system communication network network equipment + communication links distributed algorithm computer program Precisely
More informationGraphs (MTAT , 4 AP / 6 ECTS) Lectures: Fri 12-14, hall 405 Exercises: Mon 14-16, hall 315 või N 12-14, aud. 405
Graphs (MTAT.05.080, 4 AP / 6 ECTS) Lectures: Fri 12-14, hall 405 Exercises: Mon 14-16, hall 315 või N 12-14, aud. 405 homepage: http://www.ut.ee/~peeter_l/teaching/graafid08s (contains slides) For grade:
More informationGNU ccscript Scripting Guide IV
GNU ccscript Scripting Guide IV David Sugar GNU Telephony 2008-08-20 (The text was slightly edited in 2017.) Contents 1 Introduction 1 2 Script file layout 2 3 Statements and syntax 4 4 Loops and conditionals
More informationUsing USB Hot-Plug For UMTS Short Message Service. Technical Brief from Missing Link Electronics:
Technical Brief 20100507 from Missing Link Electronics: Using USB Hot-Plug For UMTS Short Message Service This Technical Brief describes how the USB hot-plug capabilities of the MLE Soft Hardware Platform
More informationProgramming Logic and Design Ninth Edition
Programming Logic and Design Ninth Edition Chapter 3 Understanding Structure The Disadvantages of Unstructured Spaghetti Code Spaghetti code Logically snarled program statements Often a complicated mess
More informationCompilation a primer
Compilation a primer Ralf Lämmel Software Languages Team University of Koblenz-Landau http://www.softlang.org/ Compilation versus interpretation Interpretation: An interpreter executes elements of a software
More informationReview: Exam 1. Your First C++ Program. Declaration Statements. Tells the compiler. Examples of declaration statements
Review: Exam 1 9/20/06 CS150 Introduction to Computer Science 1 1 Your First C++ Program 1 //*********************************************************** 2 // File name: hello.cpp 3 // Author: Shereen Khoja
More informationInterpreter Implementation
Interpreter Implementation l l l The crucial insight to implementing functions is that function names act just like variable names - they are the key into a symbol lookup table. l During function declaration
More informationLab 6: More Steps in Haskell
Programming Paradigms and Formal Semantics Lab 6: More Steps in Haskell (Basic Language Processing) Vadim Zaytsev, Ralf Lämmel (@grammarware & @notquiteabba), Software Languages Team, Universität Koblenz-Landau
More informationProgram input is information that the program requests from. Controlling Program Input and Output. Bonus Chapter 7. Using Input Commands
Bonus Chapter 7 Controlling Program Input and Output In This Chapter Entering program input and output commands Using input commands (Input, Prompt) Using output commands (Disp, Output) Using a program
More informationVerifying control systems using CSP, FDR, and Handel-C.
erifying control systems using CSP, FDR, and Handel-C. 01 Verifying control systems using CSP, FDR, and Handel-C. Alistair A. McEwan University of Surrey erifying control systems using CSP, FDR, and Handel-C.
More informationCA4003 Compiler Construction Assignment Language Definition
CA4003 Compiler Construction Assignment Language Definition David Sinclair 2017-2018 1 Overview The language is not case sensitive. A nonterminal, X, is represented by enclosing it in angle brackets, e.g.
More informationSynchronous Specification
Translation Validation for Synchronous Specification in the Signal Compiler Van-Chan Ngo Jean-Pierre Talpin Thierry Gautier INRIA Rennes, France FORTE 2015 Construct a modular translation validationbased
More informationSWEN 224 Formal Foundations of Programming
T E W H A R E W Ā N A N G A O T E Ū P O K O O T E I K A A M Ā U I VUW V I C T O R I A UNIVERSITY OF WELLINGTON EXAMINATIONS 2011 END-OF-YEAR SWEN 224 Formal Foundations of Programming Time Allowed: 3 Hours
More informationCS313D: ADVANCED PROGRAMMING LANGUAGE
CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 2 : C# Language Basics Lecture Contents 2 The C# language First program Variables and constants Input/output Expressions and casting
More information: Principles of Imperative Computation Victor Adamchik. Practice Exam - I
15-122 Practice Exam - I Page 1 of 10 15-122 : Principles of Imperative Computation Victor Adamchik Practice Exam - I Name: Andrew ID: Answer the questions in the space provided following each question.
More informationConfirm Picking. Sales.Scanco.com Portal Settings Accessing the Application Warehouse Prompt Staging Bin Prompt...
Contents Confirm Picking Sales.Scanco.com Portal Settings... 2 Accessing the Application... 3 Warehouse Prompt... 4 Staging Bin Prompt... 5 Sales Order Prompt... 6 Sales Order List Maintenance... 7 Item
More informationFormal Specification and Verification
Formal Specification and Verification Model Checking with Temporal Logic Bernhard Beckert Based on a lecture by Wolfgang Ahrendt and Reiner Hähnle at Chalmers University, Göteborg Formal Specification
More informationReference Sheet for CO142.2 Discrete Mathematics II
Reference Sheet for CO14. Discrete Mathematics II Spring 017 1 Graphs Defintions 1. Graph: set of N nodes and A arcs such that each a A is associated with an unordered pair of nodes.. Simple graph: no
More informationCS , Fall 2001 Exam 2
Andrew login ID: Full Name: CS 15-213, Fall 2001 Exam 2 November 13, 2001 Instructions: Make sure that your exam is not missing any sheets, then write your full name and Andrew login ID on the front. Write
More informationPython Evaluation Rules
Python Evaluation Rules UW CSE 160 https://courses.cs.washington.edu/courses/cse160/15sp/ Michael Ernst and Isaac Reynolds mernst@cs.washington.edu April 1, 2015 Contents 1 Introduction 2 1.1 The Structure
More informationTHE INTEGER DATA TYPES. Laura Marik Spring 2012 C++ Course Notes (Provided by Jason Minski)
THE INTEGER DATA TYPES STORAGE OF INTEGER TYPES IN MEMORY All data types are stored in binary in memory. The type that you give a value indicates to the machine what encoding to use to store the data in
More informationParsing a primer. Ralf Lämmel Software Languages Team University of Koblenz-Landau
Parsing a primer Ralf Lämmel Software Languages Team University of Koblenz-Landau http://www.softlang.org/ Mappings (edges) between different representations (nodes) of language elements. For instance,
More informationSDL Profiles - Definition and Formal Extraction
Technical Report SDL Profiles - Definition and Formal Extraction R. Grammes R. Gotzhein September 19, 2006 University of Kaiserslautern Contents 1 Introduction 4 2 Language Definition of SDL 5 2.1 Specification
More informationB: Boiler Condensate Conductivity
Safety 1. Installation 1.1 B:Services 1.2 Driver Card Installation 1.3 Sens Types 1.4 Sens Wiring 2. Configuration - Operation 2.1 Range Selection 2.2 Diagnostics 3. Specifications Safety 250mV AC maximum
More informationImproved BDD-based Discrete Analysis of Timed Systems
Improved BDD-based Discrete Analysis of Timed Systems Truong Khanh Nguyen 1, Jun Sun 2, Yang Liu 1, Jin Song Dong 1 and Yan Liu 1 1 School of Computing National University of Singapore 2 Information System
More informationHome and Mailing Addresses Overview
Home and Mailing Addresses Overview Introduction This guide provides the procedures for members to update their home and mailing addresses and enter a Thrift Savings Plan (TSP) address in Direct Access.
More informationsample exam Concurrent Programming tda383/dit390 Sample exam March 2016 Time:?? Place: Johanneberg
sample exam Concurrent Programming tda383/dit390 Sample exam March 2016 Time:?? Place: Johanneberg Responsible Michał Pałka 0707966066 Result Available no later than?-?-2016 Aids Max 2 books and max 4
More informationA Theory of Inductive Query Answering
In Proceedings of ICDM 02 1 A Theory of Inductive Query Answering Luc DE RAEDT Ý Manfred JAEGER Ý Þ Sau Dan LEE Ý Heikki MANNILA Þ Ý Inst. für Informatik University of Freiburg Georges Koehler Allee 79
More informationUSER MANUAL OF THERMAL POWER PLANT (TPP) SIMULATOR SOFTWARE
USER MANUAL OF THERMAL POWER PLANT (TPP) SIMULATOR SOFTWARE This is the manual for Thermal Power Plant (TPP) Simulator laboratory exercise. The manual consists of useful information about simulator software,
More informationALGEBRA Sec. 5 IDENTITY AXIOMS. MathHands.com. IDENTITY AXIOMS: Identities
IDENTITY AXIOMS IDENTITY AXIOMS: Identities It is helpful to recall the definition of a binary operation. As we have stated it, a binary operation is a mixing recipe for mixing two items. We used the color
More informationSCC Inc. TS-D Series. Technical Instructions. Document No. TS-3000 March 10, Deaerator, Surge and/or Condensate Control Panel.
Deaerator, Surge and/or Condensate Control Panel March 10, 2017 Description A TS-D series control system manages lead/lag operation of an individual deaerator (DA), surge, condensate, or a combination
More informationAn introduction to formal specifications and JML. Invariant properties
An introduction to formal specifications and JML Invariant properties Yves Ledru Université Grenoble-1 Laboratoire d Informatique de Grenoble Yves.Ledru@imag.fr 2013 Page 1 Invariant properties Invariants
More informationSteps to program development
Automate processes - Programming Concepts and Design Steps to program development A computer program is a set of formal instructions, which the computer executes in order to carry out some designated task.
More informationInduction and Semantics in Dafny
15-414 Lecture 11 1 Instructor: Matt Fredrikson Induction and Semantics in Dafny TA: Ryan Wagner Encoding the syntax of Imp Recall the abstract syntax of Imp: a AExp ::= n Z x Var a 1 + a 2 b BExp ::=
More informationWriting Temporally Predictable Code
Writing Temporally Predictable Code Peter Puschner Benedikt Huber slides credits: P. Puschner, R. Kirner, B. Huber VU 2.0 182.101 SS 2015 Task Execution Time a 1 a 2 a 3 a 4 a 5 a 6 a 7 a 9 a 8 1. Sequence
More informationnag opt simplex (e04ccc)
nag opt simplex () 1. Purpose nag opt simplex () minimizes a general function F (x) of n independent variables x = (x 1,x 2,...,x n ) T by the Simplex method. No derivatives are required. 2. Specification
More informationPHPoC vs PHP > Overview. Overview
PHPoC vs PHP > Overview Overview PHPoC is a programming language that Sollae Systems has developed. All of our PHPoC products have PHPoC interpreter in firmware. PHPoC is based on a wide use script language
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems Constraint Optimization Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg July 17, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint
More informationWISE-580x Data Logger Application Example
WISE-580x Data Logger Application Example Scenario: In a factory wastewater water level monitoring application, a WISE-5800 is connected to an I-7012FD module, the AI channel 0 of this module is connected
More information8.3 Common Loop Patterns
Lecture 17 Topics: Chapter 8. Loop Structures and Booleans 8.3 (Continues) nested loops 8.4. Computing with booleans 8.5 Other common structures: post-test, loop and half. 1 8.3 Common Loop Patterns Nested
More informationInterprocStack analyzer for recursive programs with finite-type and numerical variables
InterprocStack analyzer for recursive programs with finite-type and numerical variables Bertrand Jeannet Contents 1 Invoking InterprocStack 1 2 The Simple language 2 2.1 Syntax and informal semantics.........................
More informationTyped Lambda Calculus. Chapter 9 Benjamin Pierce Types and Programming Languages
Typed Lambda Calculus Chapter 9 Benjamin Pierce Types and Programming Languages t ::= x x. t t t Call-by-value small step perational Semantics terms variable v ::= values abstraction x. t abstraction values
More informationModeling Java Programs for Diagnosis ½
Modeling Java Programs for Diagnosis ½ Cristinel Mateis and Markus Stumptner and Franz Wotawa ¾ Abstract. A key advantage of model-based diagnosis is the ability to use a generic model for the production
More informationCourse Summary! What have we learned and what are we expected to know?
Course Summary! What have we learned and what are we expected to know? Overview! Introduction Modelling in MiniZinc Finite Domain Constraint Solving Search Linear Programming and Network Flow Mixed Integer
More informationRevisiting the Steam-Boiler Case Study with LUTESS : Modeling for Automatic Test Generation
Revisiting the Steam-Boiler Case Study with LUTESS : Modeling for Automatic Test Generation Virginia Papailiopoulou 1, Besnik Seljimi 1, Ioannis Parissis 2 {virginia.papailiopoulou, besnik.seljimi}@imag.fr,
More information6.001 SICP. Types. Types compound data. Types simple data. Types. Types procedures
Today s topics Types of objects and procedures Procedural abstractions Capturing patterns across procedures Higher Order Procedures Types (+ 5 1) ==> 15 (+ "hi 5) ;The object "hi", passed as the first
More informationPHPoC. PHPoC vs PHP. Version 1.1. Sollae Systems Co., Ttd. PHPoC Forum: Homepage:
PHPoC PHPoC vs PHP Version 1.1 Sollae Systems Co., Ttd. PHPoC Forum: http://www.phpoc.com Homepage: http://www.eztcp.com Contents 1 Overview...- 3 - Overview...- 3-2 Features of PHPoC (Differences from
More informationControl-Flow Graph and. Local Optimizations
Control-Flow Graph and - Part 2 Department of Computer Science and Automation Indian Institute of Science Bangalore 560 012 NPTEL Course on Principles of Compiler Design Outline of the Lecture What is
More informationGraph Traversal. 1 Breadth First Search. Correctness. find all nodes reachable from some source node s
1 Graph Traversal 1 Breadth First Search visit all nodes and edges in a graph systematically gathering global information find all nodes reachable from some source node s Prove this by giving a minimum
More informationSmart heating system. with wireless thermostats & smartphone control for every room. Get the most out of any water based underfloor heating
Smart heating system with wireless thermostats & smartphone control for every room Get the most out of any water based underfloor heating DETAILED OVERVIEW Control the heating in your home from anywhere.
More informationReference manual EPL programming language
Reference manual EPL programming language Book E5 - Version 2.05 Reference manual EPL programming language E5 Version 2.05 Table of contents Chapter 1 Introduction 5 Chapter 2 Elements of the EPL Language
More informationOpenAltaRica - Example A (Simple) Cooling System
Copyright IRT SystemX 2015-2018 (v2.1) 1 Valve VI Pump P Valve VO Line1 Valve VI Pump P Valve VO Line2 Reactor Tank TK WHAT HOW Cool a reactor Move cooling liquid from a Tank to the considered Reactor
More information[DP19] DN-500CD. Serial Command Protocol Guide
[DP19] Serial Command Protocol Guide Ver. 1.2 January 16, 2017 inmusic Brands, Inc. 1 1 Contents 2 General... 3 2.1 RS-232C Control... 3 3 Specification... 4 3.1 RS-232C Control... 4 4 Communication Protocol...
More informationFebruary 8th, 2017 Exam of Switching technologies for data centers (2016/17)
February 8th, 2017 Exam of Switching technologies for data centers (2016/17) Rules for the exam. It is forbidden to use notes, books or calculators. Use only draft paper provided by the professor. When
More informationBlack Box Testing (revisited) Csci 565 Spring 2007
Black Box Testing (revisited) Csci 565 Spring 2007 Objectives Cause-Effect Graphs in Functional testing Input validation and Syntax-driven Testing Decision Table-Based Testing State transition testing
More informationSFU CMPT Lecture: Week 8
SFU CMPT-307 2008-2 1 Lecture: Week 8 SFU CMPT-307 2008-2 Lecture: Week 8 Ján Maňuch E-mail: jmanuch@sfu.ca Lecture on June 24, 2008, 5.30pm-8.20pm SFU CMPT-307 2008-2 2 Lecture: Week 8 Universal hashing
More informationDenotational Semantics
Denotational Semantics 8 12 lectures for Part II CST 2010/11 Marcelo Fiore Course web page: http://www.cl.cam.ac.uk/teaching/1011/denotsem/ 1 Lecture 1 Introduction 2 What is this course about? General
More informationCVO103: Programming Languages. Lecture 5 Design and Implementation of PLs (1) Expressions
CVO103: Programming Languages Lecture 5 Design and Implementation of PLs (1) Expressions Hakjoo Oh 2018 Spring Hakjoo Oh CVO103 2018 Spring, Lecture 5 April 3, 2018 1 / 23 Plan Part 1 (Preliminaries):
More informationCofactoring-Based Upper Bound Computation for Covering Problems
TR-CSE-98-06, UNIVERSITY OF MASSACHUSETTS AMHERST Cofactoring-Based Upper Bound Computation for Covering Problems Congguang Yang Maciej Ciesielski May 998 TR-CSE-98-06 Department of Electrical and Computer
More informationFormal Specification and Verification
Formal Specification and Verification Bernhard Beckert Adaptation of slides by Wolfgang Ahrendt Chalmers University, Gothenburg, Sweden Formal Specification and Verification: 1 / 23 Part I Formal Specification
More informationAPROS laboratory manual:
Introduction to the APROS code APROS laboratory manual: Aim of the course Studying the operation of APROS v5.10 thermal-hydraulic system code: building simple flow circuits, displaying process parameters,
More informationl e t print_name r = p r i n t _ e n d l i n e ( Name : ^ r. name)
Chapter 8 Row polymorphism Consider the following code: type name_home = {name : s t r i n g ; home : s t r i n g } type name_mobile = {name : s t r i n g ; mobile : s t r i n g } l e t jane = {name =
More informationBasics of interpretation with Haskell as the metalanguage
Basics of interpretation with Haskell as the metalanguage Ralf Lämmel Software Language Engineering Team University of Koblenz-Landau http://www.softlang.org/ Interpretation for a simple expression language
More informationA Brief Introduction to Standard ML
A Brief Introduction to Standard ML Specification and Verification with Higher-Order Logic Arnd Poetzsch-Heffter (Slides by Jens Brandt) Software Technology Group Fachbereich Informatik Technische Universität
More informationUnified Configuration Knowledge Representation Using Weight Constraint Rules
Unified Configuration Knowledge Representation Using Weight Constraint Rules Timo Soininen ½ and Ilkka Niemelä ¾ and Juha Tiihonen ½ and Reijo Sulonen ½ Abstract. In this paper we present an approach to
More informationCS 314 Principles of Programming Languages
CS 314 Principles of Programming Languages Lecture 17: Functional Programming Zheng (Eddy Zhang Rutgers University April 4, 2018 Class Information Homework 6 will be posted later today. All test cases
More informationFunction: function procedures and sub procedures share the same characteristics, with
Function: function procedures and sub procedures share the same characteristics, with one important difference- function procedures return a value (e.g., give a value back) to the caller, whereas sub procedures
More informationAppendix A OCL 2.0 Grammar
Appendix A OCL 2.0 Grammar In this appendix we summarise the concrete syntax of OCL [113] using an extended Backus-Naur format [8]. The grammar in [113] is different from the grammar presented here. It
More information