1 / 28

Modeling Community with Tiles

Workshop AGILE, Pisa, 28-29 Luglio 2003. Modeling Community with Tiles. Roberto Bruni Dipartimento di Informatica Università di Pisa. Ongoing Work!. joint work with Ivan Lanese Ugo Montanari Dipartimento di Informatica Università di Pisa. Roadmap. Goal Tiles Translation

kemal
Download Presentation

Modeling Community with Tiles

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Workshop AGILE, Pisa, 28-29 Luglio 2003 Modeling Communitywith Tiles Roberto Bruni Dipartimento di Informatica Università di Pisa Ongoing Work! joint work with Ivan Lanese Ugo Montanari Dipartimento di Informatica Università di Pisa

  2. Roadmap • Goal • Tiles • Translation • Example: Buffer • Advantages • Ongoing and future work • Localities Modeling CommUnity with Tiles

  3. Roadmap • Goal • Tiles • Translation • Example: Buffer • Advantages • Ongoing and future work • Localities Modeling CommUnity with Tiles

  4. Goal • Operational semantics for CommUnity • Modular translation • Preserving of “separation of concerns” • Abstract semantics via observations Modeling CommUnity with Tiles

  5. Roadmap • Goal • Tiles • Translation • Example: Buffer • Advantages • Ongoing and future work • Localities Modeling CommUnity with Tiles

  6. Tile Logic • Operational and Abstract Semantics of Open Concurrent Systems • Compositional in Space and Time • Specification Formats • Depending on chosen connectors • Congruence results • Category based Modeling CommUnity with Tiles

  7. Tiles Modeling CommUnity with Tiles

  8. Configurations input interface output interface Modeling CommUnity with Tiles

  9. concurrent computation Observations initial interface final interface Modeling CommUnity with Tiles

  10. Roadmap • Goal • Tiles • Translation • Example: Buffer • Advantages • Ongoing and future work • Localities Modeling CommUnity with Tiles

  11. Tile Format for CommUnity • Interfaces • action, input (typed), output (typed) • System Configuration • (gs-monoidal) graphs • components: empty input interface • coordinators: binary input interface • Observations • monoid of unary boxes • Tiles • computation (empty trigger) • coordination Modeling CommUnity with Tiles

  12. From Modules to Tile Configurations I … o1=v1 … om=vm p1=w1 … pk=wk I O … O A externalization of the state? Modeling CommUnity with Tiles

  13. w v act From Modules to (Schemes of) Basic Tiles I actions are translated into tiles  O A (G) one tile for any (,w) that satisfies the guard G of action act I ’ O A Modeling CommUnity with Tiles

  14. Data Coordinators I I/O I/O v v v I I/O I/O Modeling CommUnity with Tiles

  15. Action Coordinators A (a1,b1) … (an,bn) A bi ai A (a1,b1) … (an,bn) A Modeling CommUnity with Tiles

  16. M1 C C M1 M2 M2 From Diagramsto Tile Systems Modeling CommUnity with Tiles

  17. Roadmap • Goal • Tiles • Translation • Example: Buffer • Advantages • Ongoing and future work • Localities Modeling CommUnity with Tiles

  18. Buffer Design design BUFFER [ t:sort, n:nat ] is in i:t out o:t prv b:list[t,n] do put : |b|<n  b:=b.i fwd : |b|==n  o:=head(b) || b:=tail(b).i get : |b|>0  o:=head(b) || b:=tail(b) shft : |b|==0  o:=i Modeling CommUnity with Tiles

  19. A Buffer Configuration BUFFER[T,N] IT o=v b=v1.v2…vk i OT o A Modeling CommUnity with Tiles

  20. w v put IT o=v b=v1.v2…vk.w OT A Put as a Tile IT o=v b=v1.v2…vk OT A (k<N) PUT Modeling CommUnity with Tiles

  21. Building a Modular Buffer design CABLE [ t:sort] is in i:t do fwd : true  skip shft : true  skip CABLE i fwd shft BUFFER[T,1] BUFFER[T,1] i fwd put shft o fwd get shft Modeling CommUnity with Tiles

  22. Intuition put  fwd1 … fwdk putk+1 get  getk shftk+1 … shftn shft  shft1 … shftn fwd  fwd1 … fwdn Modeling CommUnity with Tiles

  23. Outcome • Bisimilarity between BUFFER[T,N] and M buffers BUFFER[T,K] with N=M*K • Bisimilarity between the system and its specification Modeling CommUnity with Tiles

  24. Roadmap • Goal • Tiles • Translation • Example: Buffer • Advantages • Ongoing and future work • Localities Modeling CommUnity with Tiles

  25. Preliminary Results and Advantages • Concurrent operational semantics for CommUnity • Translation independent from the serialization of represented morphisms • Encoding of the colimit behaviourally equivalent to the diagram encoding • Standard notion of abstract equivalence (tile bisimilarity) • Separation of concerns Modeling CommUnity with Tiles

  26. Roadmap • Goal • Tiles • Translation • Example: Buffer • Advantages • Ongoing and future work • Localities Modeling CommUnity with Tiles

  27. Dealing with Localities • Localities as data types • input localities (IL) and output localities (OL) • Actions can involve localities • Observable constraints on localities • dynamically generated via coordinators • statical constraints on moves • Open problems • which flavour of connectors? • what should be observed? Modeling CommUnity with Tiles

  28. Future Work • Application to AGILE case studies • Dealing with system reconfigurations • Refinement • Common framework for CommUnity and UML Modeling CommUnity with Tiles

More Related