Use trace algebra to formalize the YAPI model EE290N Spring2002 Alessandro Pinto Mentors: Roberto Passerone Jerry Burch.

Slides:



Advertisements
Similar presentations
Dataflow Analysis for Datarace-Free Programs (ESOP 11) Arnab De Joint work with Deepak DSouza and Rupesh Nasre Indian Institute of Science, Bangalore.
Advertisements

Andrea Maurino Web Service Design Methodology Batini, De Paoli, Maurino, Grega, Comerio WP2-WP3 Roma 24/11/2005.
Semantics and Evaluation Techniques for Window Aggregates in Data Streams Jin Li, David Maier, Kristin Tufte, Vassilis Papadimos, Peter A. Tucker SIGMOD.
CommUnity, Tiles and Connectors joint work with Roberto Bruni José Luiz Fiadeiro Antónia Lopes Ugo Montanari Ivan Lanese Dipartimento di Informatica Università.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
Abstraction and Modular Reasoning for the Verification of Software Corina Pasareanu NASA Ames Research Center.
1 PROPERTIES OF A TYPE ABSTRACT INTERPRETATER. 2 MOTIVATION OF THE EXPERIMENT § a well understood case l type inference in functional programming à la.
1 1 Regression Verification for Multi-Threaded Programs Sagar Chaki, SEI-Pittsburgh Arie Gurfinkel, SEI-Pittsburgh Ofer Strichman, Technion-Haifa Originally.
Transaction Based Modeling and Verification of Hardware Protocols Xiaofang Chen, Steven M. German and Ganesh Gopalakrishnan Supported in part by SRC Contract.
Transaction Based Modeling and Verification of Hardware Protocols Xiaofang Chen, Steven M. German and Ganesh Gopalakrishnan Supported in part by Intel.
SATEL Semi Automatic TEsting Language University of Geneva Levi Lúcio, Didier Buchs M-TOOS, Portland 4/30/2015.
SYMBOLIC MODEL CHECKING: STATES AND BEYOND J.R. Burch E.M. Clarke K.L. McMillan D. L. Dill L. J. Hwang Presented by Rehana Begam.
Requirements on the Execution of Kahn Process Networks Marc Geilen and Twan Basten 11 April 2003 /e.
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
DATAFLOW PROCESS NETWORKS Edward A. Lee Thomas M. Parks.
Lecture 02 – Structural Operational Semantics (SOS) Eran Yahav 1.
PTIDES: Programming Temporally Integrated Distributed Embedded Systems Yang Zhao, EECS, UC Berkeley Edward A. Lee, EECS, UC Berkeley Jie Liu, Microsoft.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Causality Interfaces for Actor Networks Ye Zhou and Edward A. Lee University of California,
A Graphical Monitoring and Notification Flow Language (MNFL) for User- Configurable In-Home Assistive Monitoring Alex Edgcomb Oral Qualification March.
Programming Language Semantics Denotational Semantics Chapter 5 Based on a lecture by Martin Abadi.
A denotational framework for comparing models of computation Daniele Gasperini.
Web Ontology Language for Service (OWL-S). Introduction OWL-S –OWL-based Web service ontology –a core set of markup language constructs for describing.
Using Interfaces to Analyze Compositionality Haiyang Zheng and Rachel Zhou EE290N Class Project Presentation Dec. 10, 2004.
1 8. Safe Query Languages Safe program – its semantics can be at least partially computed on any valid database input. Safety is tied to program verification,
Verification of Hierarchical Cache Coherence Protocols for Future Processors Student: Xiaofang Chen Advisor: Ganesh Gopalakrishnan.
1 Pupil Detection and Tracking System Lior Zimet Sean Kao EE 249 Project Mentors: Dr. Arnon Amir Yoshi Watanabe.
Compositional Verification of Timed Systems. A Concept. Bengt Jonsson Leonid Mokrushin Xiaochun Shi Wang Yi Uppsala University Sweden Distributed Embedded.
Programming Language Semantics Mooly SagivEran Yahav Schrirber 317Open space html://
Dataflow Process Networks Lee & Parks Synchronous Dataflow Lee & Messerschmitt Abhijit Davare Nathan Kitchen.
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
Models of Computation for Embedded System Design Alvise Bonivento.
Kahn’s Principle and the Semantics of Discrete Event Systems Xiaojun Liu EE290N Class Project December 10, 2004.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Causality Interfaces and Compositional Causality Analysis Rachel Zhou UC Berkeley.
A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng Paper Discussion for.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley System-Level Types for Component-Based Design Edward A.
Chess Review May 11, 2005 Berkeley, CA Discrete-Event Systems: Generalizing Metric Spaces and Fixed-Point Semantics Adam Cataldo Edward Lee Xiaojun Liu.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 8: February 11, 2009 Dataflow.
Semantics with Applications Mooly Sagiv Schrirber html:// Textbooks:Winskel The.
1 System Modeling. Models of Computation. System Specification Languages Alexandru Andrei.
Operational Semantics Semantics with Applications Chapter 2 H. Nielson and F. Nielson
Programming Language Semantics Denotational Semantics Chapter 5 Part III Based on a lecture by Martin Abadi.
T F Select … (5, F) (4, F) (3, F) (2, T) (1, T) … (3, ‘Z’) (2, ‘Y’) (1, ‘X’) … (1, ‘A’)
Models of Computation Reading Assignment: L. Lavagno, A.S. Vincentelli and E. Sentovich, “Models of computation for Embedded System Design”
Transaction Based Modeling and Verification of Hardware Protocols Xiaofang Chen, Steven M. German and Ganesh Gopalakrishnan Supported in part by SRC Contract.
November 18, 2004 Conservative Approximations for Heterogeneous Design Roberto Passerone Alessandro Pinto Jerry R. Burch Alberto Sangiovanni Vincentelli.
Environment Modeling in Quasi- Static Scheduling EE249 Project Donald Chai Mentors: Alex Kondratyev, Yoshi Watanabe.
Voicu Groza, 2008 SITE, HARDWARE/SOFTWARE CODESIGN OF EMBEDDED SYSTEMS Hardware/Software Codesign of Embedded Systems Voicu Groza SITE Hall, Room.
Introduction to ASMs Dumitru Roman Digital Enterprise Research Institute
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Introduction to Formal Methods Based on Jeannette M. Wing. A Specifier's Introduction to Formal Methods. IEEE Computer, 23(9):8-24, September,
A Methodology for Architecture Exploration of heterogeneous Signal Processing Systems Paul Lieverse, Pieter van der Wolf, Ed Deprettere, Kees Vissers.
Natallia Kokash (Accepted for PACO’2011) ACG, 31/05/ Input-output conformance testing for channel-based connectors 1.
Correct-by-construction asynchronous implementation of modular synchronous specifications Jacky Potop Benoît Caillaud Albert Benveniste IRISA, France.
Automating DAML-S Web Services Composition Using SHOP2 Based on an article by Dan Wu, Bijan Parsia, Evren Sirin, James Hendler and Dana Nau in Proceedings.
Royal Institute of Technology System Specification Fundamentals Axel Jantsch, Royal Institute of Technology Stockholm, Sweden.
SAT-Based Model Checking Without Unrolling Aaron R. Bradley.
Properties as Processes : FORTE slide Properties as Processes: their Specification and Verification Joel Kelso and George Milne School of Computer.
Formal Verification. Background Information Formal verification methods based on theorem proving techniques and model­checking –To prove the absence of.
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
Formal Semantics of Programming Languages 虞慧群 Topic 2: Operational Semantics.
Validating Reconfigurations of Reo Circuits
2. Specification and Modeling
Logical architecture refinement
Defining A Formal Semantics For The Rosetta Specification Language
Compositional Refinement for Hierarchical Hybrid Systems
Deadlock Detection for Distributed Process Networks
Algebraic Trace Theory
Well-behaved Dataflow Graphs
Presentation transcript:

Use trace algebra to formalize the YAPI model EE290N Spring2002 Alessandro Pinto Mentors: Roberto Passerone Jerry Burch

Outline  References  Introduction to YAPI  Implication of select  Introduction to Trace Algebra  Traces to model YAPI  Buffer model  Conservative Approximation  Example  Conclusion

References  K.A. Vissers et. al. “YAPI: Application Modeling for Signal Processing System”, DAC00  J. Burch, R. Passerone, ASV “Overcoming Heterophobia: Modeling Concurrency in Heterogeneous Systems”  J. Burch, R. Passerone, ASV “Modeling Techniques in Design-by-Refinement Methodologies”  E.A. Lee, T.M. Parks “Dataflow Process Networks”  G. Kahn, “The Semantics of a Simple Language for Parallel Programming”  G. Kahn, D.B. MacQueen, “Corutines and Networks of Parallel Processes”

The YAPI Model 1  KPN (blocking read, non-blocking write)  Non-determinism

The YAPI Model 2  Selection can be done on input and output Read,Write on unbounded FIFOs Read,Write on bounded FIFOs YAPI TTL

Implication of select  continuity  monotonicity  determinacy i1=[1], i2=[  ] F(i1,i2) = [1] i1=[1,1], i2=[2] F(i1,i2) = [2,1] i=[1] F(i) = ([1],[  ]) i=[1,3] F(i) = ([1],[3]), ([3],[1]), ([1,3],[  ]) …

Trace Algebra 1 Concurrency Algebra Set of agents Parallel composition of agents Projection of agents Renaming of agents Trace structure algebra A Model of individual behaviors Model of agents Trace algebra C Trace Algebra Set of traces Projection of traces Renaming of traces Source: R. Passerone I1=[1,3,4,-1] I2=[0,3,5,2] O=[1,6,9,1] i1 o i2 +

Trace Algebra 2  Alphabet  Set of traces over alphabet A  Renaming y = rename(r) (x) where x is a trace and r is a renaming function  Projection y = proj(B)(x) where x is a trace and B  A  Trace structure T=( ,P) where  is the signature and P  B(A)  A set of axioms must be verified !!!!!!!

Trace Algebra 3 Trace structure algebra A’ Trace structure algebra A Trace algebra C Trace algebra C’ Homomorphism h uu ll  inv “Abstract” Domain “Detailed” Domain Let T spec and T impl be trace structures in A. Then if  u ( T impl )   l ( T spec ) then T impl  T spec Derive Source: R. Passerone

Implication of select: Trace Algebra View  Monotonicity is captured by projection  proj(I)(x) ⊑ proj(I)(y)  proj(O)(x) ⊑ proj(O)(y)  For the previous example two traces belongs to the same process:

First step: Set of Traces  Which set of traces should we choose?  Streams  Synchronous  DE

Streams 1  No timing information  KPN can be expressed on the same set of traces  Continuity is a constraint on the trace structures  In this sense YAPI processes can form more trace structures then KPN KPN YAPI

Streams 2  Operation on traces  Renaming  Projection  Operation on trace structures

A more detailed domain 1  We want to capture two important things  Relative arrival time  Bounded FIFOs  Synchronous Domain

A more detailed domain 2  Renaming  Projection Two possible traces

Buffers  Buffers are modeled as processes  The strict version of a sequence a is  We indicate with a k the sequence up to instant k  Definition of a buffer  Trace structure T B =((I,O),P)

Buffer Constraint Gen Buf1 Buf2 AddSub Two possible traces of AddSub T=Gen||Buf1||Buf2||AddSub Bufferlength =2 Bufferlength =1

Conservative Approximation 1 Synch Nondet KPN Approximation Homomorphism h(x)

Conservative Approximation 2 h(P) P h is in general many to one so this is an upper bound Detailed Domain Abstract Domain

Conservative Approximation 2 h(P) P B(A) - P h(B(A) – P) h(P) - h(B(A) – P) Detailed Domain Abstract Domain

From Synch to ND-KPN 1  Definition of the homomorphism h(x)

From Synch to ND-KPN 2   Let’s consider a process:  If p is true add the inputs, if p is false subtract them h(x)

Applications of the Approximation  Verification Problem  Design Problem

Example 1  Norm  =(I,O) Bufferlength=n

Example 1  =(I,O) Bufferlength=n

Example 1  =(I,O) Bufferlength=n

Example 1  =(I,O) Bufferlength=n

Example 2  One possible execution Bufferlength=n

Example 3 h(x) id

Example 4  One possible execution

Example 4  Design problem

Conclusion  The YAPI model was a good motivation for this project  Trace algebra has been applied to describe the denotational semantics of the model at different level of abstraction  A Conservative approximation between Synchronous model and ND-KPN allows abstraction from one model to another for verification and design