Download presentation
Presentation is loading. Please wait.
Published byJourney Tankersley Modified over 9 years ago
1
SpecDiff: Differencing LTSs Zhenchang Xing *, Jun Sun +, Yang Liu * and Jin Song Dong * * National University of Singapore + Singapore University of Technology and Design
3
Program Behaviors Change! Program behavior changes Program evolution Different behavioral exploration methods
4
The Evolution of Specification
5
An Evolved Concurrent Stack Spec in CSP# An earlier version A later version Violating the linearizibility ! Evolve
6
The Differences Lead to Program Fault? The LTS of the earlier version The LTS of the later version Diagnosing faulty evolution ?
7
The Application of Partial Order Reduction
8
A Dinning-Philosophers Spec in CSP# Dinning-Philosophers
9
“Reduced” States and Transitions? No Partial Order Reduction (118 states/300 transitions) Partial Order Reduction (116 states/248 transitions) Impact of partial order reduction ?
10
The Application of Process Counter Abstraction
11
Parameterized Readers-Writer Lock A Readers-Writer Lock Spec in CSP#
12
Cutoff number = 2Cutoff number = 1 Recurring Changes as Cutoff Number Increases? Cutoff number = 3 Cutoff number = 4 Behavioral patterns of parameterized systems ?
13
Analyzing Changing Program Behaviors – Diagnosing faulty evolution – Evaluating impact of different behavior exploration methods – Revealing behavioral change patterns of parameterized systems – ……
15
SpecDiff Architecture An Overview of Our SpecDiff Approach
16
Differencing LTSs By GenericDiff
17
Analyzing LTS Differences
18
Diagnosing Faulty Program Evolution Black: matched states/transitions in both LTSs; Green: unmatched states/transitions in the earlier-version LTS; Red: unmatched states/transitions in the later-version LTS
20
Tool Support & Usage Formal Tool Demonstration, ASE’10
21
Initial Evaluation The evolution of a concurrent stack The application of partial order reduction The application of process counter abstraction Three pilot-study scenarios Debugging faulty program evolution Understanding the impacts of state reduction techniques Revealing behavioral change patterns in the verification of parameterized systems SpecDiff assists in
22
How to Scale it Up?
23
Why Not Use Counter Examples?
24
Effectiveness & Applicability SpecDiff: Differencing LTSs Conclusions and Future Work Tool Support & Usage Scale it Up!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.