1 / 35

Data Abstraction and Data Refinement

Data Abstraction and Data Refinement. Adalberto Farias Alexandre Mota Augusto Sampaio. Foundations. Abstract Interpretation Data Refinement. Data Refinement. Relations between global states via concrete operations must be more restrict than via abstract operations

ally
Download Presentation

Data Abstraction and Data Refinement

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. Data Abstraction and Data Refinement Adalberto Farias Alexandre Mota Augusto Sampaio

  2. Foundations Abstract Interpretation Data Refinement

  3. Data Refinement • Relations between global states via concrete operations must be more restrict than via abstract operations • Concrete initialisations, operations and finalisations must be subsets of the corresponding abstract ones.

  4. Data Refinement • Rules using downward simulation (from abstract to concrete) • Rules using upward simulation (from concrete to abstract)

  5. Data Refinement data abstraction • Rules using downward simulation (from abstract to concrete) • Rules using upward simulation (from concrete to abstract)

  6. YES Refinement Rules Retrieve NOT What changes? Usual Scenario Abstract Specification (AS,AI,AOps) Concrete Specification (CS,CI,COps) Data structures (state, inputs,outputs) Data domains Operations

  7. YES Refinement Rules Retrieve What changes? Data Abstraction Scenario (Z) Abstract Specification (AS,AI,AOps) Concrete Specification (CS,CI,COps) Data structures (state, inputs,outputs) Data domains Operations

  8. Systematic Calculation Retrieve PZA PZ[[Ren]] FD Data Abstraction Scenario (CSP) Abstract Specification (AS,AI,AOps) YES Refinement Rules Retrieve Concrete Specification (CS,CI,COps) Abstract Specification (AS,AI,AOps) Concrete Specification (CS,CI,COps)

  9. Relational Semantics

  10. Casting to Z (no IO)

  11. Abstraction relations Retrieve A C v1 v1 v2 ... vn v1A v2A ... vnA vn

  12. Abstract State and Retrieve

  13. Abstract Schemas (meta schemas)

  14. Casting to Z (with IO)

  15. Abstraction relations R A C R? A? C? R! A! C!

  16. Retrieve and Abstract Schemas

  17. Relational Refinement and Process Refinement

  18. Casting to CSP (no IO) PZA PZ

  19. Casting to CSP (with IO) PZA PZ

  20. Casting to CSP (with IO)

  21. If R is relational (no IO)?

  22. If R is functional (no IO)?

  23. If R,R? or R! are relational (with IO)?

  24. If R,R? or R! are relational (with IO)?

  25. If R,R? and R! are functional (with IO)?

  26. Construction of Abstract Schemas

  27. Abstraction of Declarations • Replacement of concrete types with abstract ones

  28. Abstraction of Predicates • Denoted by the semantic function [[.]] • Only specific predicates are really interpreted

  29. Conformance with Meta Schemas

  30. Example

  31. Calculating Abstraction Relations

  32. Example

  33. Example

  34. Conclusions • Use of Data Refinement instead of Abstract Interpretation • Systematic calculation of abstraction relations • Templates for construction of abstract schemas • Use of FD in process refinement

  35. Future work • Deeper investigation of process equivalence under FD instead of refinement • The use of data abstraction in automatic verification of data refinements

More Related