Extensible Modeling Languages

Size: px
Start display at page:

Download "Extensible Modeling Languages"

Transcription

1 Extensible ing Languages Utilizing Libraries for Creation, Use, and Domain-Specific Extensions 5th MODPROD Workshop on -Based Product Development February 8, 2011 Department of Computer and Information Science Linköping University, Sweden Equation-Based Object-Oriented (EOO) Languages 2 Domain-Specific Language (DSL) Primarily domain: ing of physical systems Multiple physical domains: e.g., mechanical, electrical, hydraulic Equation-Based Object-Oriented (EOO) s and Objects Object in e.g., Java, C++: object = data + methods Objects in EOO languages: object = data + equations ica VHDL-AMS gproms Acausality At the equation-level u = R * i At the object connection level I

2 Agenda 3 I I 4 ease and possibility of expressing complex models or tasks Language versions: A, v1.0 A, v1.1 A, v2.0 A, v2.2 Standard library versions: L, v1.0 L, v1.1 L, v2.0 L, v2.2 I

3 5 mechanisms to add new language features Uses Simulation Optimization Code generation for real-time export Grey-box system identification etc. C, v1.0 gives many dialects and different languages B, v1.0 A, v1.1 A, v1.0 A, v1.1 A, v2.0 A, v2.2 gives larger and more complex languages I 6 precise semantics meaning of the language Language Specifications of state-of-the-art are informally defined hard to interpret unambiguously when developing compilers hard to reason about when extending the language hard to formalize e.g. ica due to size and complexity I

4 What is MKL? 7 Purpose: Research language explore new concepts ing Kernel Language (MKL) Bottom-up approach Small extensible language Precise formal semantics Base it on a proven foundation the lambda calculus Statically typed functional language Platform for experimental equation-based DSLs (Continuous-time, hybrid, structural dynamic, and acusal models) I 8 I

5 - HOAM 9 Higher-Order Acusal s (HOAM) Higher-Order Functions I.e. first class citizens, can be passed around as any value + Acausal s s in EOO languages, composing DAEs and other interconnected models. = Higher-Order Acausal s I.e., first class acausal models. I HOAM Example 10 Example of a mechatronic system with a DC motor and a flexible shaft One shaft element is created by standard components. I

6 HOAM Example 11 Example of a mechatronic system with a DC motor and a flexible shaft Higher-order function that can compose any mechanical component in series I 12 I

7 ica Environment 13 ica ica Tool Result (e.g., simulation) Language Specification - Type checking - Collapsing the instance hierarchy - Connection Semantics I MKL Environment 14 Benefits Tool vendors no need to update tool after lib ext. developer - less dependent on tool vendors A model behaves the same way in different tools MKL MKL Tool Result (e.g., simulation) for using models - Connection for Semantics using models for using models - Simulation - Connection (Runtime) Semantics - Connection Semantics Language Specification - Type checking - Collapsing the instance hierarchy - Connection Semantics I

8 Intensional Analysis and Lifting 15 Static Semantics Dynamic Semantics Lifted Lifted Lifting Collapsed using evaluation Type Checking MKL Equation System Analysis, models treated as data. Connection Semantics, Simulation, etc. Result I 16 I I

9 of Semantics 17 MKL MKL Tool Result (e.g., simulation) of for using models - Connection for Connection Semantics using models Semantics for using models - Simulation - Connection (Runtime) Semantics - Connection Semantics Executable Specifcation Static Type System Language Specification - Type checking - Collapsing the instance hierarch Small-step Operational Semantics I How do we verify our solution? 18 Prototype Implementation Type Safety Proof Two main lemmas Progress Preservation I

10 Conclusions 19 ( Approach) Expressivness (HOAM) (Operational Semantics) ing Kernel Language (MKL) Thanks for listening! I

Modeling Kernel Language (MKL)

Modeling Kernel Language (MKL) Modeling Kernel Language (MKL) A formal and extensible approach to equation-based modeling languages Guest Talk, EECS, Chess, UC Berkeley February 17, 2011 Department of Computer and Information Science

More information

Predictable Timing of Cyber-Physical Systems Future Research Challenges

Predictable Timing of Cyber-Physical Systems Future Research Challenges Predictable Timing of Cyber- Systems Future Research Challenges DREAMS Seminar, EECS, UC Berkeley January 17, 2012 David Broman EECS Department UC Berkeley, USA Department of Computer and Information Science

More information

Meta-Languages and Semantics for Equation-Based Modeling and Simulation

Meta-Languages and Semantics for Equation-Based Modeling and Simulation Linköping Studies in Science and Technology Thesis No. 1333 Meta-Languages and Semantics for Equation-Based Modeling and Simulation by David Broman Department of Computer and Information Science Linköpings

More information

System modeling using Simulink and Simscape

System modeling using Simulink and Simscape System modeling using Simulink and Simscape Abhisek Roy Sruthi Geetha Veer Alakshendra 2015 The MathWorks, Inc. 1 Multi-domain Systems 2 Common challenges 1. Multi-domain simulation 2. Capturing the system

More information

A Proposal for Verified Code Generation from Modelica

A Proposal for Verified Code Generation from Modelica A Proposal for Verified Code Generation from Modelica Bernhard Thiele PELAB Linköping University 04. February 2015-9th MODPROD Workshop on Model-Based Product Development 1 / 22 Goals of this presentation

More information

Type Systems. Today. 1. Organizational Matters. 1. Organizational Matters. Lecture 1 Oct. 20th, 2004 Sebastian Maneth. 1. Organizational Matters

Type Systems. Today. 1. Organizational Matters. 1. Organizational Matters. Lecture 1 Oct. 20th, 2004 Sebastian Maneth. 1. Organizational Matters Today Type Systems 1. Organizational Matters 2. What is this course about? 3. Where do types come from? 4. Def. of the small language Expr. Its syntax and semantics. Lecture 1 Oct. 20th, 2004 Sebastian

More information

Lecture 11 Lecture 11 Nov 5, 2014

Lecture 11 Lecture 11 Nov 5, 2014 Formal Verification/Methods Lecture 11 Lecture 11 Nov 5, 2014 Formal Verification Formal verification relies on Descriptions of the properties or requirements Descriptions of systems to be analyzed, and

More information

Towards an Integrated System Model for Testing and Verification

Towards an Integrated System Model for Testing and Verification Towards an Integrated System Model for Testing and Verification Benjamin Hummel and Peter Braun MiSE 2008 Domain Development of controller software for production machines Special case of mechatronic system

More information

Model Driven Engineering in High Tech Industry

Model Driven Engineering in High Tech Industry Model Driven Engineering in High Tech Industry Mark van den Brand LUCAS-dagen, Lund, October 2016 Short introduction of myself 1992-1997: Assistant professor at UvA (NL) 1997-2005: Senior researcher at

More information

Programming language design and analysis

Programming language design and analysis Programming language design and analysis Introduction Marius Minea 25 September 2017 Why this course? Programming languages are fundamental and one of the oldest CS fields Language design is an important

More information

Behavioral Model Composition in Simulation-Based Design

Behavioral Model Composition in Simulation-Based Design Behavioral Model Composition in Simulation-Based Design Rajarishi Sinha 1, Student Member, IEEE, Christiaan J.J. Paredis 1,2, Member, IEEE, and Pradeep K. Khosla 1,2, Fellow, IEEE 1 Institute for Complex

More information

Model-Based Design for High Integrity Software Development Mike Anthony Senior Application Engineer The MathWorks, Inc.

Model-Based Design for High Integrity Software Development Mike Anthony Senior Application Engineer The MathWorks, Inc. Model-Based Design for High Integrity Software Development Mike Anthony Senior Application Engineer The MathWorks, Inc. Tucson, AZ USA 2009 The MathWorks, Inc. Model-Based Design for High Integrity Software

More information

Domain-Specific Languages for Wireless Sensor Networks

Domain-Specific Languages for Wireless Sensor Networks Domain-Specific Languages for Wireless Sensor Networks Daniel A. Sadilek Humboldt-Universität zu Berlin Institute for Computer Science Rudower Chaussee 25 12489 Berlin, Germany sadilek@informatik.hu-berlin.de

More information

The etrice Eclipse Project Proposal

The etrice Eclipse Project Proposal The etrice Eclipse Project Proposal Dipl.-Ing. Thomas Schütz, Protos Software GmbH Eclipse Embedded Day 2010, Stuttgart Agenda Motivation Scope of etrice ROOM Language Codegenerators Middleware Realization

More information

Subtyping. Lecture 13 CS 565 3/27/06

Subtyping. Lecture 13 CS 565 3/27/06 Subtyping Lecture 13 CS 565 3/27/06 Polymorphism Different varieties of polymorphism: Parametric (ML) type variables are abstract, and used to encode the fact that the same term can be used in many different

More information

The Formal Semantics of Programming Languages An Introduction. Glynn Winskel. The MIT Press Cambridge, Massachusetts London, England

The Formal Semantics of Programming Languages An Introduction. Glynn Winskel. The MIT Press Cambridge, Massachusetts London, England The Formal Semantics of Programming Languages An Introduction Glynn Winskel The MIT Press Cambridge, Massachusetts London, England Series foreword Preface xiii xv 1 Basic set theory 1 1.1 Logical notation

More information

Digital System Design

Digital System Design Digital System Design Analog time varying signals that can take on any value across a continuous range of voltage, current or other metric Digital signals are modeled with two states, 0 or 1 underneath

More information

A Model-Driven Approach to Embedded Control System Implementation

A Model-Driven Approach to Embedded Control System Implementation A Model-Driven Approach to Embedded Control System Implementation Jan F. Broenink, Marcel A. Groothuis, Peter M. Visser, Bojan Orlic Control Engineering, CTIT, Faculty EE-M-CS,, Enschede, Netherlands e-mail:

More information

CIM-Compliant Model-to-Model Transformation

CIM-Compliant Model-to-Model Transformation CIM-Compliant Model-to-Model Transformation For Modelica Models Generation and Power Systems Dynamic Simulations Francisco J. Gómez 1, Prof. Luigi Vanfretti 1 Svein H. Olsen 2 fragom@kth.se, luigiv@kth.se

More information

CA Compiler Construction

CA Compiler Construction CA4003 - Compiler Construction David Sinclair When procedure A calls procedure B, we name procedure A the caller and procedure B the callee. A Runtime Environment, also called an Activation Record, is

More information

Runtime Behavior of Conversion Interpretation of Subtyping

Runtime Behavior of Conversion Interpretation of Subtyping Runtime Behavior of Conversion Interpretation of Subtyping Yasuhiko Minamide Institute of Information Sciences and Electronics University of Tsukuba and PRESTO, JST minamide@is.tsukuba.ac.jp Abstract.

More information

Activation Inheritance in Modelica

Activation Inheritance in Modelica Activation Inheritance in Modelica Ramine Nikoukhah INRIA, BP 05, 7853 Le Chesnay, France ramine.nikoukhah@inria.fr Abstract Modelica specifies two types of s: the s defined directly in the "" section,

More information

Towards Run-time Debugging of Equation-based Object-oriented Languages

Towards Run-time Debugging of Equation-based Object-oriented Languages Towards Run-time Debugging of Equation-based Object-oriented Languages Adrian Pop and Peter Fritzson Programming Environments Laboratory Department of Computer and Information cience Linköping University

More information

TMS1122: Chemistry of Materials

TMS1122: Chemistry of Materials Course Structure Level I Semester I Engineering Science and Design Credits Mathematics, Basic Science & Credits Complementary Studies Credits ENT1111: Workshop Technology I TMS1113: Foundation of Mathematics

More information

On Meaning Preservation of a Calculus of Records

On Meaning Preservation of a Calculus of Records On Meaning Preservation of a Calculus of Records Emily Christiansen and Elena Machkasova Computer Science Discipline University of Minnesota, Morris Morris, MN 56267 chri1101, elenam@morris.umn.edu Abstract

More information

Extensible Multipurpose Simulation Platform

Extensible Multipurpose Simulation Platform Proceedings of the 6th WSEAS International Conference on Simulation, Modelling and Optimization, Lisbon, Portugal, September 22-24, 2006 738 Extensible Multipurpose Simulation Platform ENN TYUGU Institute

More information

Typed Lambda Calculus. Chapter 9 Benjamin Pierce Types and Programming Languages

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

Less naive type theory

Less naive type theory Institute of Informatics Warsaw University 26 May 2007 Plan 1 Syntax of lambda calculus Why typed lambda calculi? 2 3 Syntax of lambda calculus Why typed lambda calculi? origins in 1930s (Church, Curry)

More information

Modeling and Simulation of Electromechanical Systems

Modeling and Simulation of Electromechanical Systems Modeling and Simulation of Electromechanical Systems Dhirendra Singh dhirendra.singh@mathworks.in Application Engineer Vivek Raju Application Engineer 2015 The MathWorks, Inc. 1 Challenges Working with

More information

Flight Systems are Cyber-Physical Systems

Flight Systems are Cyber-Physical Systems Flight Systems are Cyber-Physical Systems Dr. Christopher Landauer Software Systems Analysis Department The Aerospace Corporation Computer Science Division / Software Engineering Subdivision 08 November

More information

Meta-programming with Names and Necessity p.1

Meta-programming with Names and Necessity p.1 Meta-programming with Names and Necessity Aleksandar Nanevski Carnegie Mellon University ICFP, Pittsburgh, 05 October 2002 Meta-programming with Names and Necessity p.1 Meta-programming Manipulation of

More information

Software Verification of Safety-Critical Aerospace Systems1

Software Verification of Safety-Critical Aerospace Systems1 Software Verification of Safety-Critical Aerospace Systems1 Ce sar A. Mun oz Alwyn Goodloe {cesar.a.munoz,a.goodloe}@nasa.gov Frama-C Day 2016 June 20th, 2016 1 This presentation reports joint work with

More information

The Art of Metaprogramming in Java. Falguni Vyas Dec 08, 2012

The Art of Metaprogramming in Java. Falguni Vyas Dec 08, 2012 The Art of Metaprogramming in Java Falguni Vyas Dec 08, 2012 Metadata What is Metadata? Data that describes other data Defined as data providing information about one or more aspects of the data, such

More information

Table of Contents. LISA User Guide

Table of Contents. LISA User Guide Table of Contents LISA (Localhost Information Service Agent) User Guide...1 1. General Features...1 2. Requirements...1 3. LISA User Guide...1 4. System Monitoring Panel...2 5. Host Monitoring Panel...2

More information

Lecture 13: Subtyping

Lecture 13: Subtyping Lecture 13: Subtyping Polyvios Pratikakis Computer Science Department, University of Crete Type Systems and Programming Languages Pratikakis (CSD) Subtyping CS546, 2018-2019 1 / 15 Subtyping Usually found

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

An Evolution of Mathematical Tools

An Evolution of Mathematical Tools An Evolution of Mathematical Tools From Conceptualization to Formalization Here's what we do when we build a formal model (or do a computation): 0. Identify a collection of objects/events in the real world.

More information

Container Pods with Docker Compose in Apache Mesos

Container Pods with Docker Compose in Apache Mesos Container Pods with Docker Compose in Apache Mesos 1 Summary Goals: 1. Treating Apache Mesos and docker as first class citizens, the platform needs to seamlessly run and scale docker container pods in

More information

Contemporary Design. Traditional Hardware Design. Traditional Hardware Design. HDL Based Hardware Design User Inputs. Requirements.

Contemporary Design. Traditional Hardware Design. Traditional Hardware Design. HDL Based Hardware Design User Inputs. Requirements. Contemporary Design We have been talking about design process Let s now take next steps into examining in some detail Increasing complexities of contemporary systems Demand the use of increasingly powerful

More information

An Easy-to-use Generic Model Configurator for Models in Multiple Tool Formats

An Easy-to-use Generic Model Configurator for Models in Multiple Tool Formats An Easy-to-use Generic Model Configurator for Models in Multiple Tool Formats Vadim Engelson 1, Peter Fritzson 1, Ulf Sellgren 2 1 Department of Computer and Information Science Linköping University SE-58183

More information

Subtyping (cont) Formalization of Subtyping. Lecture 15 CS 565. Inversion of the subtype relation:

Subtyping (cont) Formalization of Subtyping. Lecture 15 CS 565. Inversion of the subtype relation: Subtyping (cont) Lecture 15 CS 565 Formalization of Subtyping Inversion of the subtype relation:! If "

More information

An Approach to the Generation of High-Assurance Java Card Applets

An Approach to the Generation of High-Assurance Java Card Applets An Approach to the Generation of High-Assurance Java Card Applets Alessandro Coglio Kestrel Institute 3260 Hillview Avenue, Palo Alto, CA 94304, USA Ph. +1-650-493-6871 Fax +1-650-424-1807 http://www.kestrel.edu/

More information

Informal Semantics of Data. semantic specification names (identifiers) attributes binding declarations scope rules visibility

Informal Semantics of Data. semantic specification names (identifiers) attributes binding declarations scope rules visibility Informal Semantics of Data semantic specification names (identifiers) attributes binding declarations scope rules visibility 1 Ways to Specify Semantics Standards Documents (Language Definition) Language

More information

PRINCIPLES AND FUNCTIONAL REQUIREMENTS

PRINCIPLES AND FUNCTIONAL REQUIREMENTS INTERNATIONAL COUNCIL ON ARCHIVES PRINCIPLES AND FUNCTIONAL REQUIREMENTS FOR RECORDS IN ELECTRONIC OFFICE ENVIRONMENTS RECORDKEEPING REQUIREMENTS FOR BUSINESS SYSTEMS THAT DO NOT MANAGE RECORDS OCTOBER

More information

1 Publishable Summary

1 Publishable Summary 1 Publishable Summary 1.1 VELOX Motivation and Goals The current trend in designing processors with multiple cores, where cores operate in parallel and each of them supports multiple threads, makes the

More information

SYSTEMC AMS ARCHITECTURE EXPLORATION FOR MIXED SIGNAL SYSTEMS

SYSTEMC AMS ARCHITECTURE EXPLORATION FOR MIXED SIGNAL SYSTEMS SYSTEMC AMS ARCHITECTURE EXPLORATION FOR MIXED SIGNAL SYSTEMS Stephan Schulz Head of Heterogeneous System Specification Fraunhofer IIS/EAS About Fraunhofer Facts and figures Fraunhofer Association Fraunhofer

More information

MathWorks Technology Session at GE Physical System Modeling with Simulink / Simscape

MathWorks Technology Session at GE Physical System Modeling with Simulink / Simscape SimPowerSystems SimMechanics SimHydraulics SimDriveline SimElectronics MathWorks Technology Session at GE Physical System Modeling with Simulink / Simscape Simscape MATLAB, Simulink September 13, 2012

More information

Develop Unified SNMP, XML, CLI, and Web-based Management for Embedded Real-Time Systems with MIBGuide

Develop Unified SNMP, XML, CLI, and Web-based Management for Embedded Real-Time Systems with MIBGuide 1 Overview Develop Unified SNMP, XML, CLI, and Web-based Management for Embedded Real-Time Systems with MIBGuide SNMP Research International, Inc. Knoxville, Tennessee 1 Overview Support for remote management

More information

c++ and python modern programming techniques

c++ and python modern programming techniques c++ and python modern programming techniques Jakša Vučičević IPB, Tuesday, February 28 th, 2017 Outline Introduction to Python, Java and C++ programming paradigms compilation model Template programming

More information

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic 3.4 Deduction and Evaluation: Tools 3.4.1 Conditional-Equational Logic The general definition of a formal specification from above was based on the existence of a precisely defined semantics for the syntax

More information

Deterministic Parallel Programming

Deterministic Parallel Programming Deterministic Parallel Programming Concepts and Practices 04/2011 1 How hard is parallel programming What s the result of this program? What is data race? Should data races be allowed? Initially x = 0

More information

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management Second OMG Workshop on Web Services Modeling Easy Development of Scalable Web Services Based on Model-Driven Process Management 88 solutions Chief Technology Officer 2003 Outline! Introduction to Web Services!

More information

Applications of Program analysis in Model-Based Design

Applications of Program analysis in Model-Based Design Applications of Program analysis in Model-Based Design Prahlad Sampath (Prahlad.Sampath@mathworks.com) 2018 by The MathWorks, Inc., MATLAB, Simulink, Stateflow, are registered trademarks of The MathWorks,

More information

Produced by. Design Patterns. MSc in Communications Software. Eamonn de Leastar

Produced by. Design Patterns. MSc in Communications Software. Eamonn de Leastar Design Patterns MSc in Communications Software Produced by Eamonn de Leastar (edeleastar@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology http://www.wit.ie http://elearning.wit.ie

More information

Type Safety. Java and ML are type safe, or strongly typed, languages. C and C++ are often described as weakly typed languages.

Type Safety. Java and ML are type safe, or strongly typed, languages. C and C++ are often described as weakly typed languages. Java and ML are type safe, or strongly typed, languages. CMPSCI 630: Programming Languages Spring 2009 (with thanks to Robert Harper) C and C++ are often described as weakly typed languages. What does

More information

High-Level Information Interface

High-Level Information Interface High-Level Information Interface Deliverable Report: SRC task 1875.001 - Jan 31, 2011 Task Title: Exploiting Synergy of Synthesis and Verification Task Leaders: Robert K. Brayton and Alan Mishchenko Univ.

More information

Outline. Proof Carrying Code. Hardware Trojan Threat. Why Compromise HDL Code?

Outline. Proof Carrying Code. Hardware Trojan Threat. Why Compromise HDL Code? Outline Proof Carrying Code Mohammad Tehranipoor ECE6095: Hardware Security & Trust University of Connecticut ECE Department Hardware IP Verification Hardware PCC Background Software PCC Description Software

More information

USING GENERIC OBJECT INHERITANCE

USING GENERIC OBJECT INHERITANCE CONCEPTUAL DESIGN USING GENERIC OBJECT INHERITANCE http://www.iei.liu.se/machine Dr. Olof Johansson, Henric Andersson, Prof. Petter Krus Division of Machine Design Department of Management and Engineering

More information

Extracting the Range of cps from Affine Typing

Extracting the Range of cps from Affine Typing Extracting the Range of cps from Affine Typing Extended Abstract Josh Berdine, Peter W. O Hearn Queen Mary, University of London {berdine, ohearn}@dcs.qmul.ac.uk Hayo Thielecke The University of Birmingham

More information

Recursive Types and Subtyping

Recursive Types and Subtyping Recursive Types and Subtyping #1 One-Slide Summary Recursive types (e.g., list) make the typed lambda calculus as powerful as the untyped lambda calculus. If is a subtype of then any expression of type

More information

Advanced Tool Architectures. Edited and Presented by Edward A. Lee, Co-PI UC Berkeley. Tool Projects. Chess Review May 10, 2004 Berkeley, CA

Advanced Tool Architectures. Edited and Presented by Edward A. Lee, Co-PI UC Berkeley. Tool Projects. Chess Review May 10, 2004 Berkeley, CA Advanced Tool Architectures Edited and Presented by Edward A. Lee, Co-PI UC Berkeley Chess Review May 10, 2004 Berkeley, CA Tool Projects Concurrent model-based design Giotto (Henzinger) E machine & S

More information

CSCI B522 Lecture 11 Naming and Scope 8 Oct, 2009

CSCI B522 Lecture 11 Naming and Scope 8 Oct, 2009 CSCI B522 Lecture 11 Naming and Scope 8 Oct, 2009 Lecture notes for CS 6110 (Spring 09) taught by Andrew Myers at Cornell; edited by Amal Ahmed, Fall 09. 1 Static vs. dynamic scoping The scope of a variable

More information

A Small Interpreted Language

A Small Interpreted Language A Small Interpreted Language What would you need to build a small computing language based on mathematical principles? The language should be simple, Turing equivalent (i.e.: it can compute anything that

More information

Concepts of programming languages

Concepts of programming languages Concepts of programming languages Lecture 5 Wouter Swierstra 1 Announcements Submit your project proposal to me by email on Friday; The presentation schedule in now online Exercise session after the lecture.

More information

An Eclipse-based Integrated Environment for Developing Executable Structural Operational Semantics Specifications

An Eclipse-based Integrated Environment for Developing Executable Structural Operational Semantics Specifications SOS 2006 Preliminary Version An Eclipse-based Integrated Environment for Developing Executable Structural Operational Semantics Specifications Adrian Pop 1,2 Peter Fritzson 3 Programming Environments Laboratory

More information

Handling Environments in a Nested Relational Algebra with Combinators and an Implementation in a Verified Query Compiler

Handling Environments in a Nested Relational Algebra with Combinators and an Implementation in a Verified Query Compiler Handling Environments in a Nested Relational Algebra with Combinators and an Implementation in a Verified Query Compiler Joshua Auerbach, Martin Hirzel, Louis Mandel, Avi Shinnar and Jérôme Siméon IBM

More information

ABriefOverviewofAgda A Functional Language with Dependent Types

ABriefOverviewofAgda A Functional Language with Dependent Types ABriefOverviewofAgda A Functional Language with Dependent Types Ana Bove, Peter Dybjer, and Ulf Norell e-mail: {bove,peterd,ulfn}@chalmers.se Chalmers University of Technology, Gothenburg, Sweden Abstract.

More information

Technical aspects of VTL to SQL translation Prepared by Regional Statistical Office in Olsztyn, Poland

Technical aspects of VTL to SQL translation Prepared by Regional Statistical Office in Olsztyn, Poland Working Paper. UNITED NATIONS ECONOMIC COMMISSION FOR EUROPE CONFERENCE OF EUROPEAN STATISTICIANS Work Session on Statistical Data Editing (The Hague, Netherlands, 24-26 April 2017) I. Introduction A.

More information

OMER-2 Workshop Daimler-Chrysler Modeling Contest. Modeling S-Class Car Seat Control with AnyLogic

OMER-2 Workshop Daimler-Chrysler Modeling Contest. Modeling S-Class Car Seat Control with AnyLogic OMER-2 Workshop Daimler-Chrysler Modeling Contest Modeling S-Class Car Seat Control with AnyLogic Alexei Filippov alf@xjtek.com, Dr. Andrei Borshchev andrei@xjtek.com St. Petersburg State Technical University,

More information

Thunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA

Thunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA Thunks (continued) Olivier Danvy, John Hatcli Department of Computing and Information Sciences Kansas State University Manhattan, Kansas 66506, USA e-mail: (danvy, hatcli)@cis.ksu.edu Abstract: Call-by-name

More information

SIMULATING SDL USING SITE

SIMULATING SDL USING SITE SIMULATING SDL USING SITE KEYWORDS Telecommunications, Model evaluation, Interactive simulation, Real-time simulation ABSTRACT This paper presents a tool chain to compile SDL specifications into simulators.

More information

Subtyping (cont) Lecture 15 CS 565 4/3/08

Subtyping (cont) Lecture 15 CS 565 4/3/08 Subtyping (cont) Lecture 15 CS 565 4/3/08 Formalization of Subtyping Inversion of the subtype relation: If σ

More information

Mobile Application Workbench. SAP Mobile Platform 3.0 SP02

Mobile Application Workbench. SAP Mobile Platform 3.0 SP02 SAP Mobile Platform 3.0 SP02 DOCUMENT ID: DC-01-0302-01 LAST REVISED: January 2014 Copyright 2014 by SAP AG or an SAP affiliate company. All rights reserved. No part of this publication may be reproduced

More information

Diplomatic Design Patterns

Diplomatic Design Patterns Diplomatic Design Patterns Henry Cook Wesley Terpstra Yunsup Lee A TileLink Case Study 10/14/2017 Agenda Rocket-Chip Ecosystem Diplomacy TileLink Design Patterns DRYing out Parameterization Generation

More information

CS 565: Programming Languages. Spring 2008 Tu, Th: 16:30-17:45 Room LWSN 1106

CS 565: Programming Languages. Spring 2008 Tu, Th: 16:30-17:45 Room LWSN 1106 CS 565: Programming Languages Spring 2008 Tu, Th: 16:30-17:45 Room LWSN 1106 Administrivia Who am I? Course web page http://www.cs.purdue.edu/homes/peugster/cs565spring08/ Office hours By appointment Main

More information

Handling Integer Arithmetic in the Verification of Java Programs

Handling Integer Arithmetic in the Verification of Java Programs Handling Integer Arithmetic in the Verification of Java Programs Steffen Schlager 1st Swedish-German KeY Workshop Göteborg, Sweden, June 2002 KeY workshop, June 2002 p.1 Introduction UML/OCL specification

More information

SYCL for OpenCL in a Nutshell

SYCL for OpenCL in a Nutshell SYCL for OpenCL in a Nutshell Luke Iwanski, Games Technology Programmer @ Codeplay! SIGGRAPH Vancouver 2014 1 2 Copyright Khronos Group 2014 SYCL for OpenCL in a nutshell Copyright Khronos Group 2014 Why?

More information

Programming Safe Agents in Blueprint. Alex Muscar University of Craiova

Programming Safe Agents in Blueprint. Alex Muscar University of Craiova Programming Safe Agents in Blueprint Alex Muscar University of Craiova Programmers are craftsmen, and, as such, they are only as productive as theirs tools allow them to be Introduction Agent Oriented

More information

Parallel Computing of Shared Memory Multiprocessors Based on JOMP

Parallel Computing of Shared Memory Multiprocessors Based on JOMP International Conference on Mechatronics, Electronic, Industrial and Control Engineering (MEIC 2015) Parallel Computing of Shared Memory Multiprocessors Based on JOMP ZHANG Hong College of Electrical &

More information

Digital System Design Lecture 2: Design. Amir Masoud Gharehbaghi

Digital System Design Lecture 2: Design. Amir Masoud Gharehbaghi Digital System Design Lecture 2: Design Amir Masoud Gharehbaghi amgh@mehr.sharif.edu Table of Contents Design Methodologies Overview of IC Design Flow Hardware Description Languages Brief History of HDLs

More information

Automated Requirements-Based Testing

Automated Requirements-Based Testing Automated Requirements-Based Testing Tuesday, October 7 th 2008 2008 The MathWorks, Inc. Dr. Marc Segelken Senior Application Engineer Overview Purposes of Testing Test Case Generation Structural Testing

More information

MOSAIC A modeling and code generation tool. Gregor Tolksdorf, M.Sc. Faculty of Process Sciences CAPE-OPEN 2013 Annual Meeting

MOSAIC A modeling and code generation tool. Gregor Tolksdorf, M.Sc. Faculty of Process Sciences CAPE-OPEN 2013 Annual Meeting MOSAIC A modeling and code generation tool Gregor Tolksdorf, M.Sc. Faculty of Process Sciences CAPE-OPEN 2013 Annual Meeting Modular MOdel SpecificAtIon on DoCumentation Level - Application in a Web Based

More information

ABSTRACT INTERPRETATION

ABSTRACT INTERPRETATION Master of Science in Engineering ABSTRACT INTERPRETATION Pascal Roman Artho, partho@hsr.ch Seminar Program Analysis and Transformation Rapperswil, January 7, 2015 Agenda Informal Example What is the idea

More information

QWeSST. Type-Safe Web Programming. Thierry Sans and Iliano Cervesato. Carnegie Mellon University Qatar

QWeSST. Type-Safe Web Programming. Thierry Sans and Iliano Cervesato. Carnegie Mellon University Qatar QWeSST Type-Safe Web Programming Thierry Sans and Iliano Cervesato Carnegie Mellon University Qatar Katholieke Universiteit Leuven, Belgium 2 August 2011 Project Goal Study the foundations of web programming

More information

Post processing techniques to accelerate assertion development Ajay Sharma

Post processing techniques to accelerate assertion development Ajay Sharma Post processing techniques to accelerate assertion development Ajay Sharma 2014 Synopsys, Inc. All rights reserved. 1 Agenda Introduction to Assertions Traditional flow for using ABV in Simulations/Emulation/Prototyping

More information

Tea Programming Language

Tea Programming Language Tea Programming Language Group 23 Md Nahid Istiaq Ahsan Monika Bohara Tea is a high-level scripting language used for text-formatting. It has some features from TCL, java and Scheme language although it

More information

Quality Attribute Driven Software Architecture Reconstruction. Version 1.0 QADSAR SATURN page 1

Quality Attribute Driven Software Architecture Reconstruction. Version 1.0 QADSAR SATURN page 1 Pittsburgh, PA 15213-3890 Quality Attribute Driven Software Architecture Reconstruction SATURN Workshop April 7, 2005 Liam O Brien Sponsored by the U.S. Department of Defense 2005 by Carnegie Mellon University

More information

Hierarchical Pointer Analysis for Distributed Programs

Hierarchical Pointer Analysis for Distributed Programs Hierarchical Pointer Analysis for Distributed Programs Amir Kamil Computer Science Division, University of California, Berkeley kamil@cs.berkeley.edu April 14, 2006 1 Introduction Many distributed, parallel

More information

Composable Models for Simulation-Based Design

Composable Models for Simulation-Based Design Composable Models for Simulation-Based Design Christiaan J. J. Paredis, Antonio Diaz-Calderon, Rajarishi Sinha, Pradeep K. Khosla Carnegie Mellon University Institute for Complex Engineered Systems Department

More information

Beluga: A Framework for Programming and Reasoning with Deductive Systems (System Description)

Beluga: A Framework for Programming and Reasoning with Deductive Systems (System Description) Beluga: A Framework for Programming and Reasoning with Deductive Systems (System Description) Brigitte Pientka and Joshua Dunfield McGill University, Montréal, Canada {bpientka,joshua}@cs.mcgill.ca Abstract.

More information

Real-Time Simulation of Simscape Models

Real-Time Simulation of Simscape Models 2010 The MathWorks, Inc. Real-Time Simulation of Simscape Models Vehicle Dynamics Motor Planetary Gear Electric Motor Electric Generator DC-DC Converter Battery Controller Hybrid Electric Vehicle Wit ursilo

More information

MyCCM. A Component Based Approach for Real-Time & Critical Systems. Olivier Hachet Thales Communications

MyCCM. A Component Based Approach for Real-Time & Critical Systems. Olivier Hachet Thales Communications MyCCM A Component Based Approach for Real-Time & Critical Systems Thales Communications Olivier Hachet Olivier.hachet@thalesgroup.com 2 / Agenda 1) Path toward CBSE for RTE 2) The MyCCM Framework 3) Future

More information

Agenda. More on the Unified Modeling Language. UML diagram types. Packages

Agenda. More on the Unified Modeling Language. UML diagram types. Packages Agenda More on the Unified Modeling Language Perdita Stevens, University of Edinburgh July 2010 And the rest... deployment diagrams, component diagrams, object diagrams, timing diagrams, etc. OCL and alternatives

More information

Towards Generic Models

Towards Generic Models 6th MODPROD Workshop on Model-Based Product Development, February 7-8, 2012 Lars Mikelsons Towards Generic Models 1 Motivation Simulation as a Development Tool Simulation basing on Mind models Physical

More information

Semantic Analysis Type Checking

Semantic Analysis Type Checking Semantic Analysis Type Checking Maryam Siahbani CMPT 379 * Slides are modified version of Schwarz s compiler course at Stanford 4/8/2016 1 Type Checking Type errors arise when operations are performed

More information

Execution of UML models Present and Future of Research and Practice

Execution of UML models Present and Future of Research and Practice Execution of UML models Present and Future of Research and Practice Federico Ciccozzi, Ivano Malavolta, Bran Selic Mälardalen University, Vrije University, Malina Software Corp. Ericsson Modeling Days

More information

Hierarchical vs. Flat Component Models

Hierarchical vs. Flat Component Models Hierarchical vs. Flat Component Models František Plášil, Petr Hnětynka DISTRIBUTED SYSTEMS RESEARCH GROUP http://nenya.ms.mff.cuni.cz Outline Component models (CM) Desired Features Flat vers. hierarchical

More information

Simulation and Verification of Timed and Hybrid Systems

Simulation and Verification of Timed and Hybrid Systems Simulation and Verification of Timed and Hybrid Systems Bert van Beek and Koos Rooda Systems Engineering Group Eindhoven University of Technology ISC 2007 Delft 11 June 2007 Bert van Beek and Koos Rooda

More information

CSE 307: Principles of Programming Languages

CSE 307: Principles of Programming Languages CSE 307: Principles of Programming Languages Advanced Topics R. Sekar Topics 1 / 14 1. 2 / 14 Section 1 3 / 14 Semantics of Programs Syntax defines what programs are valid. Semantics defines what the valid

More information

Distributed Information System as a System of Asynchronous Concurrent Processes

Distributed Information System as a System of Asynchronous Concurrent Processes Distributed Information System as a System of Asynchronous Concurrent Processes Marek Rychlý Jaroslav Zendulka Department of Information Systems Faculty of Information Technology Brno University of Technology

More information