a boolean algebra of contracts for assume guarantee
play

A Boolean algebra of contracts for assume-guarantee reasoning Yann - PowerPoint PPT Presentation

Introduction A Model for Contracts Use Case Conclusion Further work A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche with Jean-Pierre Talpin Paul Le Guernic Thierry Gautier 1 INRIA, Resarch Unit of


  1. Introduction A Model for Contracts Use Case Conclusion Further work A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche with Jean-Pierre Talpin Paul Le Guernic Thierry Gautier 1 INRIA, Resarch Unit of Rennes-Bretagne-Atlantique, Rennes, France Team ESPRESSO December 1, 2008 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  2. Introduction A Model for Contracts Use Case Conclusion Further work Introduction 1 Context Motivations Goals A Model for Contracts 2 Process Process-filter Contract Use Case 3 Conclusion 4 Further work 5 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  3. Introduction A Model for Contracts Use Case Conclusion Further work Introduction 1 Context Motivations Goals A Model for Contracts 2 Process Process-filter Contract Use Case 3 Conclusion 4 Further work 5 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  4. Introduction A Model for Contracts Use Case Conclusion Further work Introduction 1 Context Motivations Goals A Model for Contracts 2 Process Process-filter Contract Use Case 3 Conclusion 4 Further work 5 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  5. Introduction A Model for Contracts Use Case Conclusion Further work Introduction 1 Context Motivations Goals A Model for Contracts 2 Process Process-filter Contract Use Case 3 Conclusion 4 Further work 5 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  6. Introduction A Model for Contracts Use Case Conclusion Further work Introduction 1 Context Motivations Goals A Model for Contracts 2 Process Process-filter Contract Use Case 3 Conclusion 4 Further work 5 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  7. Introduction A Model for Contracts Use Case Conclusion Further work Introduction 1 Context Motivations Goals A Model for Contracts 2 Process Process-filter Contract Use Case 3 Conclusion 4 Further work 5 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  8. Introduction A Model for Contracts Use Case Conclusion Further work Context Polychyrony Tool used for embedded 1 systems design Developed by the team 2 ESPRESSO 3 Design of concurrent systems architecture exploration simulation and checking A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  9. Introduction A Model for Contracts Use Case Conclusion Further work Context S IGNAL hypothesies: Abstraction of the real time 1 Communications and calculus 2 are instantaneous The set of tags is equipped 3 with a partial order relation Abstract the components by their interface Abstract description of distributed architectures A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  10. Introduction A Model for Contracts Use Case Conclusion Further work Motivations Use a formal concept for integrating a system in Polychrony for: Testing the compatibility between the implementation of a 1 component and its interface Checking the substituability between two components in a 2 system Checking the adequation between an application and its 3 environment execution Finding the errors at all steps of the system design 4 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  11. Introduction A Model for Contracts Use Case Conclusion Further work Motivations Use a formal concept for integrating a system in Polychrony for: Testing the compatibility between the implementation of a 1 component and its interface Checking the substituability between two components in a 2 system Checking the adequation between an application and its 3 environment execution Finding the errors at all steps of the system design 4 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  12. Introduction A Model for Contracts Use Case Conclusion Further work Motivations Use a formal concept for integrating a system in Polychrony for: Testing the compatibility between the implementation of a 1 component and its interface Checking the substituability between two components in a 2 system Checking the adequation between an application and its 3 environment execution Finding the errors at all steps of the system design 4 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  13. Introduction A Model for Contracts Use Case Conclusion Further work Motivations Use a formal concept for integrating a system in Polychrony for: Testing the compatibility between the implementation of a 1 component and its interface Checking the substituability between two components in a 2 system Checking the adequation between an application and its 3 environment execution Finding the errors at all steps of the system design 4 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  14. Introduction A Model for Contracts Use Case Conclusion Further work Goals Use the concept of assume/guarantee for designing the 1 S IGNAL processes Extend the S IGNAL language for operating with type 2 system based on the assume/guarantee reasoning A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  15. Introduction A Model for Contracts Use Case Conclusion Further work Goals Use the concept of assume/guarantee for designing the 1 S IGNAL processes Extend the S IGNAL language for operating with type 2 system based on the assume/guarantee reasoning A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  16. Introduction A Model for Contracts Use Case Conclusion Further work Introduction 1 Context Motivations Goals A Model for Contracts 2 Process Process-filter Contract Use Case 3 Conclusion 4 Further work 5 A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  17. Introduction A Model for Contracts Use Case Conclusion Further work Processes Definition: Behavior V be an infinite, countable set of variables, D a set of values; for Y , a finite set of variables included in V , Y nonempty, a Y -behavior is a function c : Y → D ; the set of Y -behaviors is B Y . B Y = ∆ Y → D , B ∅ = ∆ ∅ (1) A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  18. Introduction A Model for Contracts Use Case Conclusion Further work Processes Definition: Behavior restriction c | X = ∆ { ( x , c ( x )) / x ∈ X } (2) A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  19. Introduction A Model for Contracts Use Case Conclusion Further work Processes Definition: Process For X , a finite set of variables ( X ⊂ V ), a X -process p is a nonempty set of X -behaviors; P X is the set of X -processes; (3) A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  20. Introduction A Model for Contracts Use Case Conclusion Further work Processes Definition: Process For X , a finite set of variables ( X ⊂ V ), a X -process p is a nonempty set of X -behaviors; P X is the set of X -processes; Ω = ∆ {∅} , ✵ = ∆ ∅ (3) A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  21. Introduction A Model for Contracts Use Case Conclusion Further work Processes Definition: Process complement For X , a finite set of variables ( X ⊂ V ), the complement � p of a process p ∈ P X is defined by: p ∈ P X = p = ∆ ( B X \ p ) = { b ∈ B X / b �∈ p } ⇒ � (4) A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  22. Introduction A Model for Contracts Use Case Conclusion Further work Example Let p a process (with var ( p ) = { x , y } , and x , y ∈ N ), defined by the set of behaviors such that x > 0 ∧ y is odd then � p is the set of behaviors such that x ≤ 0 ∨ y is even . A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  23. Introduction A Model for Contracts Use Case Conclusion Further work Processes Definition: Process restriction and extension When X , Y are finite sets of variables such that X ⊆ Y ⊂ V , Y nonempty, { c | X / c ∈ q } q | X = ∆ (5) p | Y { c ∈ B Y / c | X ∈ p } = ∆ (6) A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  24. Introduction A Model for Contracts Use Case Conclusion Further work Processes Example Example Let p a process (with var ( p ) = { x , y , z } , and Let p a process (with var ( p ) = { x , y } , and x , y , z ∈ N ), defines by the set of behaviors x , y , z ∈ N ), defines by the set of behaviors such that x > 0 ∧ y is odd ∧ z < 2 such that x > 0 ∧ y is odd then p | { x , y } is the set of behaviors such that then p | { x , y , z } is the set of behaviors such x > 0 ∧ y is odd . that x > 0 ∧ y is odd ∧ z ∈ N . A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

  25. Introduction A Model for Contracts Use Case Conclusion Further work Processes Definition: Strict processes extension For X , Y nonempty, finite sets of variables such that X ⊆ Y ⊂ V and p ∈ P X , p � q states that q is a full extension of p to Y : a variable in Y \ X may hold any legal value ; thus ⇒ (( var ( p ) ⊆ var ( q ) ) ∧ ( p | var ( q ) = q )) ( p � q ) ⇐ (7) Corollary. ( P , � ) is a poset. A Boolean algebra of contracts for assume-guarantee reasoning Yann Glouche

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend