an abstraction technique for the verification of artifact
play

An Abstraction Technique for the Verification of Artifact-Centric - PowerPoint PPT Presentation

An Abstraction Technique for the Verification of Artifact-Centric Systems Francesco Belardinelli Laboratoire IBISC, Universit e dEvry Joint work with Alessio Lomuscio Imperial College London, UK and Fabio Patrizi Sapienza Universit` a


  1. An Abstraction Technique for the Verification of Artifact-Centric Systems Francesco Belardinelli Laboratoire IBISC, Universit´ e d’Evry Joint work with Alessio Lomuscio Imperial College London, UK and Fabio Patrizi Sapienza Universit` a di Roma, Italy within the EU funded project ACSI (Artifact-Centric Service Interoperation) JAIF – 13 June 2013 1

  2. Model Checking in one slide Model checking: technique(s) to automatically verify that a system design S satisfies a property P before deployment. More formally, given • a model M S of a system S • a formula φ P representing a property P we check that M S | = φ P 2

  3. Turing Award 2007 www.acm.org/press-room/news-releases-2008/turing-award-07 (a) E. Clarke (CMU, (b) A. Emerson (c) J. Sifakis USA) (U. Texas, USA) (IMAG, F) • Jury justification For their roles in developing model checking into a highly effective verification technology, widely adopted in the hardware and software industries. 3

  4. Overview Motivation: Artifact Systems are data-aware systems 1 Main task: formal verification of infinite-state AS 2 ◮ model checking is appropriate for control-intensive applications... ◮ ...but less suited for data-intensive applications (data typically ranges over infinite domains) [1]. Key contribution: verification of bounded and uniform AS is decidable 3 4

  5. Artifact Systems Outline • Recent paradigm for Service-Oriented Computing [2]. • Motto: let’s give data and processes the same relevance! • Artifact : data model + lifecycle ◮ (nested) records equipped with actions ◮ actions may affect several artifacts ◮ evolution stemming from the interaction with other artifacts/external actors • Artifact System : set of interacting artifacts, representing services, manipulated by agents. 5

  6. Artifact Systems Order-to-Cash Scenario 6

  7. Research questions Which syntax and semantics should we use to specify AS? 1 Is verification of AS decidable? 2 If not, can we identify relevant fragments that are reasonably well-behaved? 3 How can we implement this? 4 7

  8. Challenges Multi-agent systems, but . . . • . . . states have a relational structure, • data are potentially infinite, • state space is infinite in general. ⇒ The model checking problem cannot be tackled by standard techniques. 8

  9. Artifact Systems Results Artifact-centric multi-agent systems (AC-MAS): formal model for AS. 1 Intuition: databases that evolve in time and are manipulated by agents. FO-CTLK as a specification language: 2 AG ∀ id , pc ( ∃ � x MO ( id , pc ,� x ) → K M ∃ � y PO ( id , pc ,� y )) the manufacturer M knows that each MO has to match a corresponding PO . Abstraction techniques and finite interpretation to tackle model checking. 3 Main result: under specific conditions MC can be reduced to the finite case. 9

  10. Semantics: Databases The data model of Artifact Systems is given as a database. • a database schema is a finite set D = { P 1 / a 1 , . . . , P n / a n } of predicate symbols P i with arity a i ∈ N . • an instance on a domain U is a mapping D associating each predicate symbol P i with a finite a i -ary relation on U . • the active domain adom ( D ) is the set of all u ∈ U appearing in D • Composition : D ⊕ D ′ is the ( D ∪ D ′ )-interpretation s.t. (i) D ⊕ D ′ ( P i ) = D ( P i ), and (ii) D ⊕ D ′ ( P ′ i ) = D ′ ( P i ). 10

  11. Artifact-centric Multi-agent Systems Agents Agents have partial access (views) to the artifact system. • an agent is a tuple i = �D i , Act i , Pr i � where ◮ D i is the local database schema ◮ Act i is the set of local actions α ( � x ) with parameters � x ◮ Pr i : D i ( U ) �→ 2 Act i ( U ) is the local protocol function • the setting is reminiscent of the interpreted systems semantics for MAS [3],... • ...but here the local state of each agent is relational. Intuitively, agents manipulate artifacts and have (partial) access to the information contained in the global db schema D . 11

  12. Example 1: the Order-to-Cash Scenario • Agents: Customer, Manifacturer, Supplier. • Local db schema D C ◮ Products(prod code, budget) ◮ PO(id, prod code, offer, status) • Local db schema D M ◮ PO(id, prod code, offer, status) ◮ MO(id, prod code, price, status) • Local db schema D S ◮ Materials(mat code, cost) ◮ MO(id, prod code, price, status) • Then, D = { Materials , Products , PO , MO } . • Parametric actions can introduce values from an infinite domain U . ◮ createPO(prod code, offer) belongs to Act C . ◮ createMO(prod code, price) belongs to Act M . 12

  13. Artifact-centric Multi-agent Systems AC-MAS Agents are modules that can be composed together to obtain AC-MAS. • Global states are tuples s = � D 0 , . . . , D n � ∈ D ( U ). • An AC-MAS is a tuple P = � Ag , s 0 , τ � where: ◮ Ag = { 0 , . . . , n } is a finite set of agents ◮ s 0 ∈ D ( U ) is the initial global state ◮ τ : D ( U ) × Act ( U ) �→ 2 D ( U ) is the transition function • Temporal transition : s → s ′ iff there is α ( � u ) s.t. s ′ ∈ τ ( s , α ( � u )). • Epistemic relation : s ∼ i s ′ iff D i = D ′ i . • AC-MAS are infinite-state systems in general. AC-MAS are first-order temporal epistemic structures. Hence, FO-CTLK can be used as a specification language. 13

  14. Syntax: FO-CTLK • Data call for First-order Logic. • Evolution calls for Temporal Logic. • Agents (operating on artifacts) call for Epistemic Logic. The specification language FO-CTLK: t ) | t = t ′ | ¬ ϕ | ϕ → ϕ | ∀ x ϕ | AX ϕ | A ϕ U ϕ | E ϕ U ϕ | K i ϕ ϕ ::= P ( � Alternation of free variables and modal operators is enabled. 14

  15. Semantics of FO-CTLK Formal definition An AC-MAS P satisfies an FO-CTLK-formula ϕ in a state s for an assignment σ , iff = P i ( � ( P , s , σ ) | t ) iff � σ ( t 1 ) , . . . , σ ( t a i ) � ∈ D s ( P i ) = t = t ′ σ ( t ) = σ ( t ′ ) ( P , s , σ ) | iff ( P , s , σ ) | = ¬ ϕ iff ( P , s , σ ) �| = ϕ ( P , s , σ ) | = ϕ → ψ iff ( P , s , σ ) �| = ϕ or ( P , s , σ ) | = ψ for all u ∈ adom ( s ), ( P , s , σ x ( P , s , σ ) | = ∀ x ϕ iff u ) | = ϕ for all runs r , r 0 = s implies ( P , r 1 , σ ) | ( P , s , σ ) | = AX ϕ iff = ϕ for all runs r , r 0 = s implies ( P , r k , σ ) | = ϕ ′ for some k ≥ 0, = A ϕ U ϕ ′ ( P , s , σ ) | iff and ( P , r k ′ , σ ) | = ϕ for all 0 ≤ k ′ < k there exists r s.t. r 0 = s , ( P , r k , σ ) | = ϕ ′ for some k ≥ 0, = E ϕ U ϕ ′ ( P , s , σ ) | iff = ϕ for all 0 ≤ k ′ < k and ( P , r k ′ , σ ) | for all states s ′ , s ∼ i s ′ implies ( P , s ′ , σ ) | ( P , s , σ ) | = K i ϕ iff = ϕ • Active-domain semantics for quantifiers. 15

  16. Semantics of FO-CTLK Intuition (d) AX ϕ (e) A ϕ U ψ (f) E ϕ U ψ 16

  17. Verification of AC-MAS How do we verify FO-CTLK specifications on AC-MAS? • the manufacturer M knows that each MO has to match a corresponding PO : AG ∀ id , pc ( ∃ pr , s MO ( id , pc , pr , s ) → K M ∃ o , s ′ PO ( id , pc , o , s ′ )) • the client C knows that every PO will eventually be discharged (by M): AG ∀ id , pc ( ∃ pr , s MO ( id , pc , pr , s ) → EF K C ∃ o PO ( id , ps , o , shipped)) Problem: the infinite domain U may generate infinitely many states! Investigated solution: can we simulate the concrete values from U with a finite set of abstract symbols? 17

  18. Abstraction: Isomorphism and Bisimulation • Two states s , s ′ are isomorphic , or s ≃ s ′ , if there is a bijection ι : adom ( s ) ∪ C �→ adom ( s ′ ) ∪ C such that ◮ ι is the identity on C ◮ for every � u ∈ adom ( s ) a i , i ∈ Ag , � u ) ∈ D ′ u ∈ D i ( P j ) ⇔ ι ( � i ( P j ) D ′ D a b 1 2 ≃ b c 2 c d e 4 5 ◮ ι : a �→ 1 b �→ 2 c �→ c d �→ 4 e �→ 5 18

  19. Abstraction: Isomorphism and Bisimulation • Two states s , s ′ are bisimilar , or s ≈ s ′ , if ◮ s ≃ s ′ ◮ if s → t then there is t ′ s.t. s ′ → t ′ , s ⊕ t ≃ s ′ ⊕ t ′ , and t ≈ t ′ s t ≈ s ′

  20. Abstraction: Isomorphism and Bisimulation • Two states s , s ′ are bisimilar , or s ≈ s ′ , if ◮ s ≃ s ′ ◮ if s → t then there is t ′ s.t. s ′ → t ′ , s ⊕ t ≃ s ′ ⊕ t ′ , and t ≈ t ′ s t ≈ ≈ s ′ t ′ ◮ the other direction holds as well ◮ similarly for the epistemic relation ∼ i 19

  21. Abstraction: Isomorphism and Bisimulation However, bisimulation is not sufficient to preserve FO-CTLK formulas: P 1 2 3 4 5 6 P ′ a b φ = AG ∀ x ( P ( x ) → AX AG ¬ P ( x )) 20

  22. Uniformity • An AC-MAS P is uniform iff for s , t , s ′ ∈ S and t ′ ∈ D ( U ): ◮ s → t and s ⊕ t ≃ s ′ ⊕ t ′ imply s ′ → t ′ s t a b a f b c f c d e s ′ t ′ 1 2 1 6 2 c 6 c 4 5

  23. Uniformity • An AC-MAS P is uniform iff for s , t , s ′ ∈ S and t ′ ∈ D ( U ): ◮ s → t and s ⊕ t ≃ s ′ ⊕ t ′ imply s ′ → t ′ s t a b a f b c f c d e s ′ t ′ 1 2 1 6 2 c 6 c 4 5 • Intuitively, the behaviour of uniform AC-MAS is independent from data not explicitly named in the system description. • Uniform AC-MAS cover a vast number of interesting cases [2, 4]. 21

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