a quest for kleene algebra in 2 dimensions gheorghe stefanescu university of bucharest ramics 2015...
TRANSCRIPT
![Page 1: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/1.jpg)
A Quest for Kleene Algebra in 2 Dimensions
Gheorghe StefanescuUniversity of Bucharest
RAMiCS 2015 Braga, Portugal, September 28-th, 2015
![Page 2: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/2.jpg)
Sequential vs. parallel computation
•Sequential computation … based onFA - finite automata
•Parallel, distributed, interactive computation … based on 2-dim FA, called here
SATS – self-assembling tiling systems
•Natural fork and join
![Page 3: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/3.jpg)
Control-flow/Data-flow networks
3
Mixed
control-flow + dataflow
model??
![Page 4: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/4.jpg)
Kleene algebra – 1•Automata
![Page 5: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/5.jpg)
Kleene algebra - 2
•Algebraic formalization:
![Page 6: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/6.jpg)
Kleene algebra - 3
•Fundamental results
![Page 7: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/7.jpg)
LPP – a language product problem
•LPP:•Lrow x Lcol: find all 2-dim words such that
each maximal row sequence is in Lrow each maximal column sequence is in Lcol
![Page 8: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/8.jpg)
LPP - example
•The Dutch roof language:•Lrow = a*c(2a*c+0)* and Lcol = c(0+2+a)*
![Page 9: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/9.jpg)
2-dimensional words & scenarios
•Words
•Scenarios
![Page 10: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/10.jpg)
SATS, scenarios, accepted words
•SATS (self-assembling tile system) set of tiles + specification of labels for external borders
•Example
•Accepted scenarios/words:
![Page 11: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/11.jpg)
Classicalregular 2-dim expressions2RE
(a classical approachbased on
rectangular words)
![Page 12: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/12.jpg)
2-dim regular expressions – 2RE (classic, rectangular words)
•Simple 2-dim regular expressions– additive operators: +, 0– vertical composition operators: I, ;, * – horizontal composition operators: -, >, ^
•2RE – add:– intersection: /\– renaming: rho:V->V’ – (V,V’ – the old and new vocabulary)
•Example: (b*; a; c*)^ /\ (c^ > a > b^)*
![Page 13: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/13.jpg)
Example
![Page 14: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/14.jpg)
Connecting 2RE's to SATS's
Theorem: The languages of rectangular words represented by
SATS (self-assembling tile systems) and those specified by classical 2-dimensional regular expressions
2RE are
the same.
![Page 15: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/15.jpg)
Problems
•Intersection is a nonintuitive operator: difficult to grasp what you get by intersecting of 2 or
more languages•The formalism is not robust under renaming:
E3 = ( a* ; a ; a*)^ /\ (a^ > a > a^)*, does not generates square of a’s,
but E1 = ( b* ; a ; c*)^ /\ (c^ > a > b^)* does generate
•Renaming is yet a still more nonintuitive operator:
it's like writing in Chinese and getting an English text using a letter-to-letter renaming
![Page 16: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/16.jpg)
Arbitrary shape words
![Page 17: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/17.jpg)
Scenario composition
•Given scenarios:
•Composed scenarios:
![Page 18: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/18.jpg)
Word vs. scenario composition
•Border agnostic word composition
•vs. scenario composition
13 cases
![Page 19: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/19.jpg)
Gluing constraints
•How to get only those 3 compositions?
•General composition
![Page 20: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/20.jpg)
Constraints on words borders
•Elements of interest:– side border (e,…)– land corner (nw,…)– golf corner (ne’,…)
•Constrain formulas:– = - equal (e=w)– < - included in (e<w)– # - overlap (e#w)
![Page 21: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/21.jpg)
Examples – restricted compositions
•3 composed words
•… obtained with restricted compositions
for (a): v (w=e) w for (b): v (sw'=sw) w for (c): v (ne>nw) w
![Page 22: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/22.jpg)
Regular expressions – n2RE
•Basic class: n2RE Use composition and itereated composition
corresponding to the following restrictions: Elements on contours: side borders, land
corners, and golf corners; Comparison relations: equal-to (=), included-
in (<), overlap-with (#) General formulas: boolean formulas built on
top of these atomic formulas •Extended: x2RE
Use extreme cells (= cells with no more than 1 neighbour in the word)
![Page 23: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/23.jpg)
Recursive definitions•Definition
•Example
![Page 24: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/24.jpg)
A particular case:
SATS with
2-colors for borders
![Page 25: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/25.jpg)
2x2 SATS
•2-color border tiles
•Subsets: e.g., F02ac•External w/n/e/s borders: e.g., 1100=c•General representation of a 2x2 SATS:
F02ac.c
![Page 26: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/26.jpg)
A case study: the Dutch roof language
F02ac.c
•Transitions
•External borders: w=1, n=1, e=0, s=0
![Page 27: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/27.jpg)
hv-connected components
•Basic form - “hat”
•General form (hats connected via right-left legs)
![Page 28: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/28.jpg)
Recursive specification: basic form
•Recursive system
![Page 29: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/29.jpg)
A research programme:
•From SATS to 2RE:
![Page 30: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/30.jpg)
Distributed Programs
![Page 31: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/31.jpg)
A slogan
Distributed programs = (control & interaction) + (temporal & spatial) data
Moreover: control & interaction => modeled by SATS
![Page 32: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/32.jpg)
A glimpse on AGAPIA programming
Agapia: a programming language based on recatangular 2-dim words/scenarios2 versions: v0.1 (basic) and v0.2 (supporting recursive computation)Towards the v1 release (current partial developments):
adding spatial and temporal pointers integrating object-oriented concepts
A compiler with MPI and OpenMP targets C Parudaru's PhD Thesis
![Page 33: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/33.jpg)
33
CodeW
Composition:
![Page 34: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/34.jpg)
![Page 35: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/35.jpg)
![Page 36: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/36.jpg)
![Page 37: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/37.jpg)
![Page 38: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/38.jpg)
![Page 39: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/39.jpg)
Free combination of imperative/dataflow models
![Page 40: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/40.jpg)
Applications
(a few samples)
![Page 41: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/41.jpg)
ApplicationsA few samples:1) From strings to images: lift problems, algorithms, and packages from 1 to 2 dimensions2) Verification of interactive, parallel, distributed programs using spatial-temporal logics3) New data types – generalized arrays – for dealing with arbitrary shape words4) Space-time resource management – e.g., job scheduling using synchronizations via temporal pointers
![Page 42: A Quest for Kleene Algebra in 2 Dimensions Gheorghe Stefanescu University of Bucharest RAMiCS 2015 Braga, Portugal, September 28-th, 2015](https://reader036.vdocuments.mx/reader036/viewer/2022062517/56649eec5503460f94bfe1d7/html5/thumbnails/42.jpg)
Thank you !