A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng Paper Discussion for.

Slides:



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

Event structures Mauro Piccolo. Interleaving Models Trace Languages:  computation described through a non-deterministic choice between all sequential.
Discrete Mathematics Lecture 5 Alexander Bukharovich New York University.
Requirements on the Execution of Kahn Process Networks Marc Geilen and Twan Basten 11 April 2003 /e.
DATAFLOW PROCESS NETWORKS Edward A. Lee Thomas M. Parks.
1 Introduction to Computability Theory Lecture3: Regular Expressions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
I MPLEMENTING S YNCHRONOUS M ODELS ON L OOSELY T IME T RIGGERED A RCHITECTURES Discussed by Alberto Puggelli.
1 Introduction to Computability Theory Lecture4: Regular Expressions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture11: Variants of Turing Machines Prof. Amos Israeli.
1 Basic abstract interpretation theory. 2 The general idea §a semantics l any definition style, from a denotational definition to a detailed interpreter.
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,
Worklist algorithm Initialize all d i to the empty set Store all nodes onto a worklist while worklist is not empty: –remove node n from worklist –apply.
Programming Language Semantics Denotational Semantics Chapter 5 Based on a lecture by Martin Abadi.
An Introduction to Input/Output Automata Qihua Wang.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Leveraging Synchronous Language Principles for Hybrid System Models Haiyang Zheng and.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
6th Biennial Ptolemy Miniconference Berkeley, CA May 12, 2005 Some Developments in the Tagged Signal Model Xiaojun Liu With J. Adam Cataldo, Edward A.
A denotational framework for comparing models of computation Daniele Gasperini.
Using Interfaces to Analyze Compositionality Haiyang Zheng and Rachel Zhou EE290N Class Project Presentation Dec. 10, 2004.
Discrete Mathematics Lecture 4 Harper Langston New York University.
Programming Language Semantics Denotational Semantics Chapter 5 Part II.
February 12, 2009 Center for Hybrid and Embedded Software Systems Encapsulated Model Transformation Rule A transformation.
FunState – An Internal Design Representation for Codesign A model that enables representations of different types of system components. Mixture of functional.
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.
Software Engineering, COMP201 Slide 1 Protocol Engineering Protocol Specification using CFSM model Lecture 30.
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.
CS5371 Theory of Computation Lecture 1: Mathematics Review I (Basic Terminology)
Administrative stuff Office hours: After class on Tuesday.
Data Flow Analysis Compiler Design Nov. 8, 2005.
Semantic Foundation of the Tagged Signal Model Xiaojun Liu Sun Microsystems, Inc. Chess Seminar February 21, 2006.
San Diego October 4-7, 2006 Over 1,000 women in computing Events for undergraduates considering careers and graduate school Events for graduate students.
Recap: Reaching defns algorithm From last time: reaching defns worklist algo We want to avoid using structure of the domain outside of the flow functions.
February 12, 2009 Center for Hybrid and Embedded Software Systems Model Transformation Using ERG Controller Thomas H. Feng.
Chess Review May 11, 2005 Berkeley, CA Discrete-Event Systems: Generalizing Metric Spaces and Fixed-Point Semantics Adam Cataldo Edward Lee Xiaojun Liu.
Ordering and Consistent Cuts Presented by Chi H. Ho.
Prof. Aiken CS 294 Lecture 21 Abstract Interpretation Part 2.
1 System Modeling. Models of Computation. System Specification Languages Alexandru Andrei.
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”
Sets, POSets, and Lattice © Marcelo d’Amorim 2010.
Regular Model Checking Ahmed Bouajjani,Benget Jonsson, Marcus Nillson and Tayssir Touili Moran Ben Tulila
Solving fixpoint equations
Voicu Groza, 2008 SITE, HARDWARE/SOFTWARE CODESIGN OF EMBEDDED SYSTEMS Hardware/Software Codesign of Embedded Systems Voicu Groza SITE Hall, Room.
A Theory of Interactive Computation Jan van Leeuwen, Jiri Widermann Presented by Choi, Chang-Beom KAIST.
1 Sequential Machine Theory Prof. K. J. Hintz Department of Electrical and Computer Engineering Lecture 1 Adaptation to this.
Mahapatra-A&M-Fall'001 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
CS 267: Automated Verification Lecture 3: Fixpoints and Temporal Properties Instructor: Tevfik Bultan.
Actor Networks Edward A. Lee Robert S. Pepper Distinguished Professor Chair of EECS UC Berkeley Invited Talk Workshop Foundations and Applications of Component-based.
School of Computer Science, The University of Adelaide© The University of Adelaide, Control Data Flow Graphs An experiment using Design/CPN Sue Tyerman.
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
Sequence Control Syntax and Semantics Jian Xu March 3, 2004 CS706, CAS McMaster.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 3: Embedded Computing High Performance Embedded Computing Wayne Wolf.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
Lub and glb Given a poset (S, · ), and two elements a 2 S and b 2 S, then the: –least upper bound (lub) is an element c such that a · c, b · c, and 8 d.
CPE555A: Real-Time Embedded Systems
Modeling Arithmetic, Computation, and Languages
Concurrent Models of Computation
Alternating tree Automata and Parity games
Concurrent Models of Computation
Concurrent Models of Computation
Concurrent Models of Computation for Embedded Software
Algebraic Trace Theory
Well-behaved Dataflow Graphs
Presentation transcript:

A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng Paper Discussion for

Kahn Process Network Definition Functional Nodes Unbounded FIFO –Reads block –Writes don’t block Signals are streams

Data-flow network Definition A collection of functional nodes Connected and communicate over unbounded FIFO queues Nodes are commonly called actors The bits of information that are communicated over the queues are commonly called tokens Source: ee249 slides

Question from this paper: What is a denotational semantic? Why is Kahn Process Networks important? Why do we need firing?

Question from this paper: Denotational Semantic Two approach of semantics –Denotational Developed by Scott and Strachey Meaning of the language is in terms of relation –Operational Turing machine Meaning of the language is in terms of actions taken by some abstract machine Closer to implementation

Question from this paper: Why is Kahn Process Networks important? –General –Solid semantics –Properties: Functional Node Unbounded FIFO Blocking read No total order (concept of partial order) –No over specification –May be difficult to determine order in the real world

Question from this paper: Why do we need firing? –Basic element of dataflow networks –Provides notion of tokens passed from inputs to outputs –Enables scheduling of input to output event –Closer to real world scenarios Kahn Process Network + Firing data-flow network

Formal Semantic Model – Kahn Process Network Provides a formal semantic model to construct rigorous proofs for Process Networks properties Need firing concepts based on the interactions of input sequences and the Process Network functional nodes

Paper Outline Kahn Process Network property –Prefix order –Complete partial order –Monotonic function –Continuous function –Composition of processes –Determinacy of processes –Least fixed point semantics –Higher Order Function Example

Paper Outline Kahn process network with Firing –Dataflow actors –Dataflow processes Extend Monotonic property to dataflow processes Extend Continuous property to dataflow processes –Continuity of dataflow process –Commutative firings and compositionality

Prefix Order Prefix order {$} is a prefix of {$, #} Partially ordered set - poset {{$}, {$,#}, {#}} -- {$} is not a prefix of {#} Empty signal  the empty sequence Chain – totally ordered set {{$}, {$,#},{$,#,%}}

Complete Partial Order Upper bound –where every element is a prefix LUB – least upper bound LUB({{$}, {$,#},{$,#,%}}) = {$,#,%} Union of all sets Complete Partial Order A poset with a bottom s.t. every chain in the set has a LUB

Paper Outline Kahn Process Network property –Prefix order –Complete partial order –Monotonic function –Continuous function –Composition of processes –Determinacy of processes –Least fixed point semantics –Higher Order Function Example

Monotonic Function untimed notion of causality

Continuous Function Response to an infinite input sequence is the limit of its response to the finite approximation of this input

Paper Outline Kahn Process Network property –Prefix order –Complete partial order –Monotonic function –Continuous function –Composition of processes –Determinacy of processes –Least fixed point semantics –Higher Order Function Example

Composition of Processes And a collection

Determinate Composition A composition is determinate if given the input sequences, all other sequences are determined.

Paper Outline Kahn Process Network property –Prefix order –Complete partial order –Monotonic function –Continuous function –Composition of processes –Determinacy of processes –Least fixed point semantics –Higher Order Function Example

Least Fixed Point Composition does not deal with feedback Feedback loops may not have deterministic behavior Introduce the Least fixed point

Least Fixed Point A method to gain deterministic behavior in process networks with feedback topologies Start with the empty sequence Apply the (monotonic) function Apply the function again to the result Repeat forever

Higher Order Function Definition –Functions that take functions as arguments and return functions CPO over functions –Use a similar technique to study dataflow with firing (sm-) ? Is a CPO –Proof All chains in the set have LUB Bottom element

Higher Order Function Functionals example

Higher Order Function Example Sieve of Eratosthenese – Output prime numbers by recursive filtering – mapping functions onto functions

Paper Outline Kahn Process Network property Kahn process network with Firing –Dataflow actors –Dataflow processes Extend Monotonic property to dataflow processes Extend Continuous property to dataflow processes –Continuity of dataflow process –Commutative firings and compositionality

Dataflow with firings Based on continuous functionals on POSET of functions Dennis Dataflow –Kahn process networks where processes are made up of a sequence of atomic computations called firings Firing can be described as functions Firing rule

Dataflow actors Concatenation of the two tuples of sequences, S needs to be finite JOIN is defined to be LUB of the two tuples. If the join exists, They are said to be joinable Dataflow actor

Dataflow processes Question: Function F exists? Function F unique? Any assumption?

Dataflow processes F exists, and unique in the pointwise prefix order We can prove that  is monotonic and continuous least fixed point F such that  (F) = F, this F satisfied the definition in previous slides Find a constructive procedure for finding F F is OK to be the semantics of the dataflow process

Paper Outline Kahn process network with Firing –Dataflow actors –Dataflow processes Extend Monotonic property to dataflow processes Extend Continuous property to dataflow processes –Continuity of dataflow process –Commutative firings and compositionality

Continuity of dataflow process F is the least fixed point of the continuous functional  F(s) is the LUB of the chain given by (19) why do we care about the continuity? guarantee the determinacy

Commutative firings and Compositionality How to solve this problem? Replace rule 4 with followings:

Redefine the functional

Conclusion Bridge the gap –Sequences of firings define a continuous Kahn process as the Least Fixed Point of an appropriately constructed functional

References [1] A Denotational Semantics for Dataflow with Firing, Edward A. Lee, Technical Memorandum UCB/ERL M97/3, Electronics Research Laboratory, Berkeley [2] Models of Computation for Embedded System Design, L. Lavagno, A. Sangiovanni-Vincentelli and E. Sentovich, 1998 NATO ASI Proceedings on System Synthesis, Il Ciocco (Italy) 1998 [3] Dataflow Process Networks, Edward A. Lee and Thomas M. Parks, Proceedings of the IEEE, vol. 83, no. 5, pp May, 1995 [4] Lecture notes from ee249/ee290n.