SlideShare a Scribd company logo
1 of 19
Download to read offline
Harro Wimmel,
                                    Karsten Wolf


Applying CEGAR to the Petri Net State Equation
CEGAR
Counterexample Guided
Abstraction Refinement                                    5

                             ?         -
                                                      -
                                                +

              1
                                                               2
                                           4
                                                               ?
                         3
                                   -
                         x             +

                                                     +
                                 Karsten Wolf: CEGAR / PN State Equation
1

                  s1           s3
                                               t3
Petri Net
             t1        t2                 t5               s5



                                                    t4
                  s2           s4



             1 –1 0 0 0
            -1 1 0 0 0
      C=
             0 1 –1 0 1
             0 -1 0 1 0
             0 0 1 -1 -1
                                       Incidence 

                                         Matrix
                            Karsten Wolf: CEGAR / PN State Equation
If m0   t t t t t
         2 3 5 1 3  m then                                                       1
         m0 + t2 + t3 + t5 + t1 + t3 = m

            m0 + (1•t1) + (1•t2) + (2•t3) + (0•t4) + (1•t5) = m

             m0 + C • (1,1,2,0,1) = m

                                                          Parikh-vector of
                                                             t2 t3 t5 t1 t3



        •If m0   w   m then m0 + C • Parikh(w) = m

        • Marking m is reachable only if

             C • x = (m – m0)     is feasible for natural x



The State Equation
                                                   Karsten Wolf: CEGAR / PN State Equation
1
                                  Example
                                 t1                t3
                                                                        t5
                                 t2                t4



reachable marking:   corresponding solutions


 (1,0,0,0,0)          ( 0 , 0 , 0 , 0 , 0), ( 1 , 0 , 1 , 0 , 1), ...
 (0,1,0,0,1)          ( 1 , 0 , 0 , 0 , 0), ...
 (0,0,1,1,0)          ( 0 , 1 , 0 , 0 , 0), ...
 (0,0,0,1,1)          ( 1 , 0 , 1 , 0 , 0), ( 0 , 1 , 0 , 1 , 0), ...



  not reachable          has solution, though! :-(
  (0,1,1,0,0)             ( 1 , 1 , 0 , 0 , 1), ...



                                                        Karsten Wolf: CEGAR / PN State Equation
1
                  Solution Space

b1, b2, …, bj:   base solutions: incomparable, minimal

i1, i2, …, ik:   increments, solutions to C • x = 0



                                            bi + n1 i1 + … nk ik




                                      Karsten Wolf: CEGAR / PN State Equation
1
       The role of increments

                   t1       t2




                   u1       u2




t1 t2 unrealizable                „to lend tokens“
u1 t1 t2 u2 realizable


                         Karsten Wolf: CEGAR / PN State Equation
CEGAR
Counterexample Guided
Abstraction Refinement                                    5

                             ?         -
                                                      -
                                                +

              1
                                                               2
                                           4
                                                               ?
                         3
                                   -
                         x             +

                                                     +
                                 Karsten Wolf: CEGAR / PN State Equation
2
           Checking solutions
                                                                          ?

Given solution x, explore state space, but fire t at most x(t) times

-Apply partial order reduction technique of [Schmidt, Petri Nets `99]

      .... does not insert invisible transitions
      .... does not require invisible transitions

-Skip sequences that are covered by other solutions




                                           Karsten Wolf: CEGAR / PN State Equation
CEGAR
Counterexample Guided
Abstraction Refinement                                    5

                             ?         -
                                                      -
                                                +

              1
                                                               2
                                           4
                                                               ?
                         3
                                   -
                         x             +

                                                     +
                                 Karsten Wolf: CEGAR / PN State Equation
3
            Refinement
                                                  x



increment                   jump




                     Karsten Wolf: CEGAR / PN State Equation
3
Problem: Increment after Jump
                                                    x
              b      jump




             b'   increment?




                  transform jump!

                       Karsten Wolf: CEGAR / PN State Equation
CEGAR
Counterexample Guided
Abstraction Refinement                                    5

                             ?         -
                                                      -
                                                +

              1
                                                               2
                                           4
                                                               ?
                         3
                                   -
                         x             +

                                                     +
                                 Karsten Wolf: CEGAR / PN State Equation
Tool: Sara                                  4
(Structures for Automated Reachability Analysis)

http://service-technology.org/tools/download


Experiments:

-590 business processes (20-300 transitions)
 (thanks to Jana Köhler, IBM)
 checked for „relaxed soundness“ (510 are, 80 are not):

Sara: 198 sec            LoLA: failed on 17 instances
                               24 min on the others

Hardest instance:
12278 calls to lp_solve, 24 sec

                                    Karsten Wolf: CEGAR / PN State Equation
Tool: Sara                                   4
(Structures for Automated Reachability Analysis)

http://service-technology.org/tools/download


Experiments:

-4 models with context in verification of parameterized boolean
programs
   (thanks to Daniel Kröning, Alexander Kaiser)
   checked for coverability

Sara: 0 sec                 LoLA: failed on 1, 0 sec on the others




                                     Karsten Wolf: CEGAR / PN State Equation
Tool: Sara                                   4
(Structures for Automated Reachability Analysis)

http://service-technology.org/tools/download


Experiments:

-1 challenge example from Petri Net mailing list
   (thanks to Hubert Garavel)
   776 transitions checked for quasi-liveness

Sara: 26 sec                LoLA: 41 sec but tricks were needed on
                                  2 instances

Witness paths:
Sara: <30                   LoLA: up to 6000

                                     Karsten Wolf: CEGAR / PN State Equation
CEGAR
Counterexample Guided
Abstraction Refinement                                    5

                             ?         -
                                                      -
                                                +

              1
                                                               2
                                           4
                                                               ?
                         3
                                   -
                         x             +

                                                     +
                                 Karsten Wolf: CEGAR / PN State Equation
Diagnosing "no"                             5
                                              -


i




           o

               Karsten Wolf: CEGAR / PN State Equation
Conclusion
Applied CEGAR to a structural verification technique

+ performant

+ short witnesses

+ excellent behavior on negative instances

+ applicable to infinte state systems

+ diagnostic information in negative cases

- inherently incomplete ( reachability for Petri nets is EXSPACE hard)

Traverse solutions rather than states


                                        Karsten Wolf: CEGAR / PN State Equation

More Related Content

What's hot

Dinive conquer algorithm
Dinive conquer algorithmDinive conquer algorithm
Dinive conquer algorithmMohd Arif
 
Introduction to Fourier transform and signal analysis
Introduction to Fourier transform and signal analysisIntroduction to Fourier transform and signal analysis
Introduction to Fourier transform and signal analysis宗翰 謝
 
Lesson 7: Vector-valued functions
Lesson 7: Vector-valued functionsLesson 7: Vector-valued functions
Lesson 7: Vector-valued functionsMatthew Leingang
 
Analysis and design of algorithms part 4
Analysis and design of algorithms part 4Analysis and design of algorithms part 4
Analysis and design of algorithms part 4Deepak John
 
Recursion tree method
Recursion tree methodRecursion tree method
Recursion tree methodRajendran
 
lecture 4
lecture 4lecture 4
lecture 4sajinsc
 
5.2 divide and conquer
5.2 divide and conquer5.2 divide and conquer
5.2 divide and conquerKrish_ver2
 
A Note on Hessen berg of Trapezoidal Fuzzy Number Matrices
A Note on Hessen berg of Trapezoidal Fuzzy Number MatricesA Note on Hessen berg of Trapezoidal Fuzzy Number Matrices
A Note on Hessen berg of Trapezoidal Fuzzy Number MatricesIOSRJM
 
periodic functions and Fourier series
periodic functions and Fourier seriesperiodic functions and Fourier series
periodic functions and Fourier seriesUmang Gupta
 
fourier representation of signal and systems
fourier representation of signal and systemsfourier representation of signal and systems
fourier representation of signal and systemsSugeng Widodo
 
Eeb317 principles of telecoms 2015
Eeb317 principles of telecoms 2015Eeb317 principles of telecoms 2015
Eeb317 principles of telecoms 2015Pritchardmabutho
 
Tele4653 l5
Tele4653 l5Tele4653 l5
Tele4653 l5Vin Voro
 
Basics & asymptotic notations
Basics & asymptotic notationsBasics & asymptotic notations
Basics & asymptotic notationsRajendran
 

What's hot (18)

Laplace quad
Laplace quadLaplace quad
Laplace quad
 
Dinive conquer algorithm
Dinive conquer algorithmDinive conquer algorithm
Dinive conquer algorithm
 
Merge Sort
Merge SortMerge Sort
Merge Sort
 
Introduction to Fourier transform and signal analysis
Introduction to Fourier transform and signal analysisIntroduction to Fourier transform and signal analysis
Introduction to Fourier transform and signal analysis
 
Lesson 7: Vector-valued functions
Lesson 7: Vector-valued functionsLesson 7: Vector-valued functions
Lesson 7: Vector-valued functions
 
Analysis and design of algorithms part 4
Analysis and design of algorithms part 4Analysis and design of algorithms part 4
Analysis and design of algorithms part 4
 
Recursion tree method
Recursion tree methodRecursion tree method
Recursion tree method
 
lecture 4
lecture 4lecture 4
lecture 4
 
Algorithms
AlgorithmsAlgorithms
Algorithms
 
Divide and conquer
Divide and conquerDivide and conquer
Divide and conquer
 
Chapter5 system analysis
Chapter5 system analysisChapter5 system analysis
Chapter5 system analysis
 
5.2 divide and conquer
5.2 divide and conquer5.2 divide and conquer
5.2 divide and conquer
 
A Note on Hessen berg of Trapezoidal Fuzzy Number Matrices
A Note on Hessen berg of Trapezoidal Fuzzy Number MatricesA Note on Hessen berg of Trapezoidal Fuzzy Number Matrices
A Note on Hessen berg of Trapezoidal Fuzzy Number Matrices
 
periodic functions and Fourier series
periodic functions and Fourier seriesperiodic functions and Fourier series
periodic functions and Fourier series
 
fourier representation of signal and systems
fourier representation of signal and systemsfourier representation of signal and systems
fourier representation of signal and systems
 
Eeb317 principles of telecoms 2015
Eeb317 principles of telecoms 2015Eeb317 principles of telecoms 2015
Eeb317 principles of telecoms 2015
 
Tele4653 l5
Tele4653 l5Tele4653 l5
Tele4653 l5
 
Basics & asymptotic notations
Basics & asymptotic notationsBasics & asymptotic notations
Basics & asymptotic notations
 

Viewers also liked

service-technology.org — A tool family for correct
business processes and ser...
service-technology.org — A tool family for correct
business processes and ser...service-technology.org — A tool family for correct
business processes and ser...
service-technology.org — A tool family for correct
business processes and ser...Universität Rostock
 
Why does my service have no partners?
Why does my service have no partners?Why does my service have no partners?
Why does my service have no partners?Universität Rostock
 
Correctness Ensuring Process Configuration: An Approach Based on Partner Synt...
Correctness Ensuring Process Configuration: An Approach Based on Partner Synt...Correctness Ensuring Process Configuration: An Approach Based on Partner Synt...
Correctness Ensuring Process Configuration: An Approach Based on Partner Synt...Universität Rostock
 
Where did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process modelsWhere did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process modelsUniversität Rostock
 
Extending the Compatibility Notion for Abstract WS-BPEL Processes
 Extending the Compatibility Notion for Abstract WS-BPEL Processes Extending the Compatibility Notion for Abstract WS-BPEL Processes
Extending the Compatibility Notion for Abstract WS-BPEL ProcessesUniversität Rostock
 

Viewers also liked (8)

Diagnosis of Open Workflow Nets
Diagnosis of Open Workflow NetsDiagnosis of Open Workflow Nets
Diagnosis of Open Workflow Nets
 
Tools4BPEL Tutorial
Tools4BPEL TutorialTools4BPEL Tutorial
Tools4BPEL Tutorial
 
service-technology.org — A tool family for correct
business processes and ser...
service-technology.org — A tool family for correct
business processes and ser...service-technology.org — A tool family for correct
business processes and ser...
service-technology.org — A tool family for correct
business processes and ser...
 
Why does my service have no partners?
Why does my service have no partners?Why does my service have no partners?
Why does my service have no partners?
 
Correctness Ensuring Process Configuration: An Approach Based on Partner Synt...
Correctness Ensuring Process Configuration: An Approach Based on Partner Synt...Correctness Ensuring Process Configuration: An Approach Based on Partner Synt...
Correctness Ensuring Process Configuration: An Approach Based on Partner Synt...
 
Where did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process modelsWhere did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process models
 
Extending the Compatibility Notion for Abstract WS-BPEL Processes
 Extending the Compatibility Notion for Abstract WS-BPEL Processes Extending the Compatibility Notion for Abstract WS-BPEL Processes
Extending the Compatibility Notion for Abstract WS-BPEL Processes
 
Set Algebra for Service Behavior
Set Algebra for Service BehaviorSet Algebra for Service Behavior
Set Algebra for Service Behavior
 

Similar to Saarbruecken

Lines, planes, and hyperplanes
Lines, planes, and hyperplanesLines, planes, and hyperplanes
Lines, planes, and hyperplanesTarun Gehlot
 
Some Results on Common Fixed Point Theorems in Hilbert Space
Some Results on Common Fixed Point Theorems in Hilbert SpaceSome Results on Common Fixed Point Theorems in Hilbert Space
Some Results on Common Fixed Point Theorems in Hilbert SpaceBRNSS Publication Hub
 
Quicksort analysis
Quicksort analysisQuicksort analysis
Quicksort analysisPremjeet Roy
 
T2311 - Ch 4_Part1.pptx
T2311 - Ch 4_Part1.pptxT2311 - Ch 4_Part1.pptx
T2311 - Ch 4_Part1.pptxGadaFarhan
 
001 carnot cycle
001 carnot cycle001 carnot cycle
001 carnot cyclephysics101
 
Proof master theorem
Proof master theoremProof master theorem
Proof master theoremRajendran
 
5.2 divede and conquer 03
5.2 divede and conquer 035.2 divede and conquer 03
5.2 divede and conquer 03Krish_ver2
 
5.2 divede and conquer 03
5.2 divede and conquer 035.2 divede and conquer 03
5.2 divede and conquer 03Krish_ver2
 
Algebra 2 Section 4-2
Algebra 2 Section 4-2Algebra 2 Section 4-2
Algebra 2 Section 4-2Jimbo Lamb
 
Analysis Of Algorithms Ii
Analysis Of Algorithms IiAnalysis Of Algorithms Ii
Analysis Of Algorithms IiSri Prasanna
 
Solving recurrences
Solving recurrencesSolving recurrences
Solving recurrencesMegha V
 
Cryptanalysis of the seal encryption algorithm
Cryptanalysis of the seal encryption algorithmCryptanalysis of the seal encryption algorithm
Cryptanalysis of the seal encryption algorithmdegarden
 
Contemporary communication systems 1st edition mesiya solutions manual
Contemporary communication systems 1st edition mesiya solutions manualContemporary communication systems 1st edition mesiya solutions manual
Contemporary communication systems 1st edition mesiya solutions manualto2001
 
4.5 tan and cot.ppt worked
4.5   tan and cot.ppt worked4.5   tan and cot.ppt worked
4.5 tan and cot.ppt workedJonna Ramsey
 

Similar to Saarbruecken (20)

Lines, planes, and hyperplanes
Lines, planes, and hyperplanesLines, planes, and hyperplanes
Lines, planes, and hyperplanes
 
5_AJMS_231_19_RA.pdf
5_AJMS_231_19_RA.pdf5_AJMS_231_19_RA.pdf
5_AJMS_231_19_RA.pdf
 
Some Results on Common Fixed Point Theorems in Hilbert Space
Some Results on Common Fixed Point Theorems in Hilbert SpaceSome Results on Common Fixed Point Theorems in Hilbert Space
Some Results on Common Fixed Point Theorems in Hilbert Space
 
Quicksort analysis
Quicksort analysisQuicksort analysis
Quicksort analysis
 
Pairing scott
Pairing scottPairing scott
Pairing scott
 
T2311 - Ch 4_Part1.pptx
T2311 - Ch 4_Part1.pptxT2311 - Ch 4_Part1.pptx
T2311 - Ch 4_Part1.pptx
 
001 carnot cycle
001 carnot cycle001 carnot cycle
001 carnot cycle
 
Proof master theorem
Proof master theoremProof master theorem
Proof master theorem
 
5.2 divede and conquer 03
5.2 divede and conquer 035.2 divede and conquer 03
5.2 divede and conquer 03
 
5.2 divede and conquer 03
5.2 divede and conquer 035.2 divede and conquer 03
5.2 divede and conquer 03
 
Algebra 2 Section 4-2
Algebra 2 Section 4-2Algebra 2 Section 4-2
Algebra 2 Section 4-2
 
Analysis Of Algorithms Ii
Analysis Of Algorithms IiAnalysis Of Algorithms Ii
Analysis Of Algorithms Ii
 
Solving recurrences
Solving recurrencesSolving recurrences
Solving recurrences
 
Cryptanalysis of the seal encryption algorithm
Cryptanalysis of the seal encryption algorithmCryptanalysis of the seal encryption algorithm
Cryptanalysis of the seal encryption algorithm
 
Contemporary communication systems 1st edition mesiya solutions manual
Contemporary communication systems 1st edition mesiya solutions manualContemporary communication systems 1st edition mesiya solutions manual
Contemporary communication systems 1st edition mesiya solutions manual
 
4.5 tan and cot.ppt worked
4.5   tan and cot.ppt worked4.5   tan and cot.ppt worked
4.5 tan and cot.ppt worked
 
legendre.pptx
legendre.pptxlegendre.pptx
legendre.pptx
 
Add maths 2
Add maths 2Add maths 2
Add maths 2
 
Add Maths 2
Add Maths 2Add Maths 2
Add Maths 2
 
Basic concepts and how to measure price volatility
Basic concepts and how to measure price volatility Basic concepts and how to measure price volatility
Basic concepts and how to measure price volatility
 

More from Universität Rostock

Pragmatic model checking: from theory to implementations
Pragmatic model checking: from theory to implementationsPragmatic model checking: from theory to implementations
Pragmatic model checking: from theory to implementationsUniversität Rostock
 
Decidability Results for Choreography Realization
Decidability Results for Choreography RealizationDecidability Results for Choreography Realization
Decidability Results for Choreography RealizationUniversität Rostock
 
Artifact-centric modeling using BPMN
Artifact-centric modeling using BPMNArtifact-centric modeling using BPMN
Artifact-centric modeling using BPMNUniversität Rostock
 
Compliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business ProcessesCompliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business ProcessesUniversität Rostock
 
Verification with LoLA: 7 Implementation
Verification with LoLA: 7 ImplementationVerification with LoLA: 7 Implementation
Verification with LoLA: 7 ImplementationUniversität Rostock
 
Verification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLAVerification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLAUniversität Rostock
 
Verification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case StudiesVerification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case StudiesUniversität Rostock
 
Verification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLAVerification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLAUniversität Rostock
 
Verification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space ReductionVerification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space ReductionUniversität Rostock
 
Verification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input LanguageVerification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input LanguageUniversität Rostock
 
Internal Behavior Reduction for Services
Internal Behavior Reduction for ServicesInternal Behavior Reduction for Services
Internal Behavior Reduction for ServicesUniversität Rostock
 
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial SymposiumKarsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial SymposiumUniversität Rostock
 
Implementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDAImplementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDAUniversität Rostock
 
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...Universität Rostock
 
Demonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and FionaDemonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and FionaUniversität Rostock
 
Modellierung eines verteilten Algorithmus
Modellierung eines verteilten AlgorithmusModellierung eines verteilten Algorithmus
Modellierung eines verteilten AlgorithmusUniversität Rostock
 

More from Universität Rostock (20)

Pragmatic model checking: from theory to implementations
Pragmatic model checking: from theory to implementationsPragmatic model checking: from theory to implementations
Pragmatic model checking: from theory to implementations
 
Decidability Results for Choreography Realization
Decidability Results for Choreography RealizationDecidability Results for Choreography Realization
Decidability Results for Choreography Realization
 
Artifact-centric modeling using BPMN
Artifact-centric modeling using BPMNArtifact-centric modeling using BPMN
Artifact-centric modeling using BPMN
 
Compliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business ProcessesCompliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business Processes
 
Verification with LoLA
Verification with LoLAVerification with LoLA
Verification with LoLA
 
Verification with LoLA: 7 Implementation
Verification with LoLA: 7 ImplementationVerification with LoLA: 7 Implementation
Verification with LoLA: 7 Implementation
 
Verification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLAVerification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLA
 
Verification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case StudiesVerification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case Studies
 
Verification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLAVerification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLA
 
Verification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space ReductionVerification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space Reduction
 
Verification with LoLA: 1 Basics
Verification with LoLA: 1 BasicsVerification with LoLA: 1 Basics
Verification with LoLA: 1 Basics
 
Verification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input LanguageVerification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input Language
 
Ws4 dsec talk @ Kickoff RS3
Ws4 dsec talk @ Kickoff RS3Ws4 dsec talk @ Kickoff RS3
Ws4 dsec talk @ Kickoff RS3
 
Internal Behavior Reduction for Services
Internal Behavior Reduction for ServicesInternal Behavior Reduction for Services
Internal Behavior Reduction for Services
 
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial SymposiumKarsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial Symposium
 
Implementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDAImplementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDA
 
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
 
Demonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and FionaDemonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and Fiona
 
Analyzing Web Service Behavior
Analyzing Web Service BehaviorAnalyzing Web Service Behavior
Analyzing Web Service Behavior
 
Modellierung eines verteilten Algorithmus
Modellierung eines verteilten AlgorithmusModellierung eines verteilten Algorithmus
Modellierung eines verteilten Algorithmus
 

Saarbruecken

  • 1. Harro Wimmel, Karsten Wolf Applying CEGAR to the Petri Net State Equation
  • 2. CEGAR Counterexample Guided Abstraction Refinement 5 ? - - + 1 2 4 ? 3 - x + + Karsten Wolf: CEGAR / PN State Equation
  • 3. 1 s1 s3 t3 Petri Net t1 t2 t5 s5 t4 s2 s4 1 –1 0 0 0 -1 1 0 0 0 C= 0 1 –1 0 1 0 -1 0 1 0 0 0 1 -1 -1 Incidence 
 Matrix Karsten Wolf: CEGAR / PN State Equation
  • 4. If m0 t t t t t 2 3 5 1 3 m then 1 m0 + t2 + t3 + t5 + t1 + t3 = m m0 + (1•t1) + (1•t2) + (2•t3) + (0•t4) + (1•t5) = m m0 + C • (1,1,2,0,1) = m Parikh-vector of t2 t3 t5 t1 t3 •If m0 w m then m0 + C • Parikh(w) = m • Marking m is reachable only if C • x = (m – m0) is feasible for natural x The State Equation Karsten Wolf: CEGAR / PN State Equation
  • 5. 1 Example t1 t3 t5 t2 t4 reachable marking: corresponding solutions (1,0,0,0,0) ( 0 , 0 , 0 , 0 , 0), ( 1 , 0 , 1 , 0 , 1), ... (0,1,0,0,1) ( 1 , 0 , 0 , 0 , 0), ... (0,0,1,1,0) ( 0 , 1 , 0 , 0 , 0), ... (0,0,0,1,1) ( 1 , 0 , 1 , 0 , 0), ( 0 , 1 , 0 , 1 , 0), ... not reachable has solution, though! :-( (0,1,1,0,0) ( 1 , 1 , 0 , 0 , 1), ... Karsten Wolf: CEGAR / PN State Equation
  • 6. 1 Solution Space b1, b2, …, bj: base solutions: incomparable, minimal i1, i2, …, ik: increments, solutions to C • x = 0 bi + n1 i1 + … nk ik Karsten Wolf: CEGAR / PN State Equation
  • 7. 1 The role of increments t1 t2 u1 u2 t1 t2 unrealizable „to lend tokens“ u1 t1 t2 u2 realizable Karsten Wolf: CEGAR / PN State Equation
  • 8. CEGAR Counterexample Guided Abstraction Refinement 5 ? - - + 1 2 4 ? 3 - x + + Karsten Wolf: CEGAR / PN State Equation
  • 9. 2 Checking solutions ? Given solution x, explore state space, but fire t at most x(t) times -Apply partial order reduction technique of [Schmidt, Petri Nets `99] .... does not insert invisible transitions .... does not require invisible transitions -Skip sequences that are covered by other solutions Karsten Wolf: CEGAR / PN State Equation
  • 10. CEGAR Counterexample Guided Abstraction Refinement 5 ? - - + 1 2 4 ? 3 - x + + Karsten Wolf: CEGAR / PN State Equation
  • 11. 3 Refinement x increment jump Karsten Wolf: CEGAR / PN State Equation
  • 12. 3 Problem: Increment after Jump x b jump b' increment? transform jump! Karsten Wolf: CEGAR / PN State Equation
  • 13. CEGAR Counterexample Guided Abstraction Refinement 5 ? - - + 1 2 4 ? 3 - x + + Karsten Wolf: CEGAR / PN State Equation
  • 14. Tool: Sara 4 (Structures for Automated Reachability Analysis) http://service-technology.org/tools/download Experiments: -590 business processes (20-300 transitions) (thanks to Jana Köhler, IBM) checked for „relaxed soundness“ (510 are, 80 are not): Sara: 198 sec LoLA: failed on 17 instances 24 min on the others Hardest instance: 12278 calls to lp_solve, 24 sec Karsten Wolf: CEGAR / PN State Equation
  • 15. Tool: Sara 4 (Structures for Automated Reachability Analysis) http://service-technology.org/tools/download Experiments: -4 models with context in verification of parameterized boolean programs (thanks to Daniel Kröning, Alexander Kaiser) checked for coverability Sara: 0 sec LoLA: failed on 1, 0 sec on the others Karsten Wolf: CEGAR / PN State Equation
  • 16. Tool: Sara 4 (Structures for Automated Reachability Analysis) http://service-technology.org/tools/download Experiments: -1 challenge example from Petri Net mailing list (thanks to Hubert Garavel) 776 transitions checked for quasi-liveness Sara: 26 sec LoLA: 41 sec but tricks were needed on 2 instances Witness paths: Sara: <30 LoLA: up to 6000 Karsten Wolf: CEGAR / PN State Equation
  • 17. CEGAR Counterexample Guided Abstraction Refinement 5 ? - - + 1 2 4 ? 3 - x + + Karsten Wolf: CEGAR / PN State Equation
  • 18. Diagnosing "no" 5 - i o Karsten Wolf: CEGAR / PN State Equation
  • 19. Conclusion Applied CEGAR to a structural verification technique + performant + short witnesses + excellent behavior on negative instances + applicable to infinte state systems + diagnostic information in negative cases - inherently incomplete ( reachability for Petri nets is EXSPACE hard) Traverse solutions rather than states Karsten Wolf: CEGAR / PN State Equation