270 likes | 359 Views
Discover the PDT calculus for stream processing systems built from modular blocks. This calculus helps specify, verify, design, and analyze the functional behavior of stream systems. Explore operators, equational rules, and canonical forms for transforming and analyzing stream data.
E N D
Periodic-Drop-Take Calculus forStream Transformers(based on CS-Report 05-02) Rudolf Mak January 21, 2005 Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Motivation for a calculus • For stream processing systems build in a LEGOr-like • fashion from a fixed set of building blocks we want to • specify • verify • analyze • their functional behavior. Moreover we want to • design • systems of specified functionality. Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Periodic Stream samplers Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
PDT-calculus • Operators • Unit • Drop operators • Take operators • Equational rules • Unit rule • Drop expansion/contraction • Drop exchange • Complement • Drop elimination/introduction • Take composition Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
k 0 1 l Drop operator X Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
X X Canonical forms • Period-consecutive • Rank-increasing • Primitive (no repetitive rank-pattern) Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
(l+1)-fold q-fold Transform to period-consecutive Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Drop expansion/contraction rule Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
a b c d e f a a b b d c e d f f a b d f Transform to rank-increasing Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Drop exchange rule Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Completeness Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
k 0 1 l X X X X X Take operator Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Complement rule Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Rules involving take operators • Drop elimination/introduction • Take composition Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Split component Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Merge component Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Block reverser design Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
DR Split-merge systems Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
The set of equations Esv Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Solving a single equation: 1 • Arbitrary shape • Canonical shape • Period-aligned, pseudo-canonical shape Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Solving a single equation: 2 Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Esv theorem for SISO systems Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Split component Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Emv theorem for SISO systems Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Analysis problem (cyclic system) What does this system compute for various values of k? Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
k = 0, junk, irreparable deadlock k = 1, 2-place buffer k = 2, block reverser with block size 2 Solution suffers from reparable deadlock Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking
Summary • PDT-calculus is a simple calculus to reason about periodically sampled streams. • PDT-calculus is sound and complete. • Semantic model in the form of a monoid. • Algorithm to determine canonical forms (solves the word problem in the monoid). • Algorithm to solve linear equations in a single variable (solves the division problem in the monoid). • Functionality of arbitrary SISO-systems consisting of split and merge components can be analyzed. • Only partial correctness is addressed. Rudolf Mak r.h.mak@tue.nl TU/e, Dept. of Math. and Comp. Sc., System Architecture and Networking