Automatic Verification of Parameterized Systems by Over-Approximation

¡ LinkÃļping Studies in Science and Technology. Thesis ¡ LinkÃļping University Electronic Press
ā§Ģ.ā§Ļ
ā§§ āϟāĻž āĻĒā§°ā§āϝāĻžāϞ⧋āϚāύāĻž
āχāĻŦ⧁āĻ•
155
āĻĒ⧃āĻˇā§āĻ āĻž
āĻŽā§‚āĻ˛ā§āϝāĻžāĻ‚āĻ•āύ āφ⧰⧁ āĻĒā§°ā§āϝāĻžāϞ⧋āϚāύāĻž āϏāĻ¤ā§āϝāĻžāĻĒāύ āϕ⧰āĻž āĻšā§‹ā§ąāĻž āύāĻžāχ  āĻ…āϧāĻŋāĻ• āϜāĻžāύāĻ•

āĻāχ āχāĻŦ⧁āĻ•āĻ–āύ⧰ āĻŦāĻŋāĻˇā§Ÿā§‡

This thesis presents a completely automatic verification framework to check safety properties of parameterized systems. A parameterized system is a family of finite state systems where every system consists of a finite number of processes running in parallel the same algorithm. All the systems in the family differ only in the number of the processes and, in general, the number of systems in a family may be unbounded. Examples of parameterized systems are communication protocols, mutual exclusion protocols, cache coherence protocols, distributed algorithms etc.

Model-checking of finite state systems is a well-developed formal verification approach of proving properties of systems in an automatic way. However, it cannot be applied directly to parameterized systems because the unbounded number of systems in a family means an infinite state space. In this thesis we propose to abstract an original family of systems consisting of an unbounded number of processes into one consisting of a fixed number of processes. An abstracted system is considered to consist of k+1 components—k reference processes and their environment. The transition relation for the abstracted system is an over-approximation of the transition relation for the original system, therefore, a set of reachable states of the abstracted system is an over-approximation of the set of reachable states of the original one.

A safety property is considered to be parameterized by a fixed number of processes whose relationship is in the center of attention in the property. Such processes serve as reference processes in the abstraction. We propose an encoding which allows to perform reachability analysis for an abstraction parameterized by the reference processes.

We have successfully verified three classic parameterized systems with replicated processes by applying this method.

āĻŽā§‚āĻ˛ā§āϝāĻžāĻ‚āĻ•āύ āφ⧰⧁ āĻĒā§°ā§āϝāĻžāϞ⧋āϚāύāĻžāϏāĻŽā§‚āĻš

ā§Ģ.ā§Ļ
ā§§ āϟāĻž āĻĒā§°ā§āϝāĻžāϞ⧋āϚāύāĻž

āĻāχ āχāĻŦ⧁āĻ•āĻ–āύāĻ• āĻŽā§‚āĻ˛ā§āϝāĻžāĻ‚āĻ•āύ āϕ⧰āĻ•

āφāĻŽāĻžāĻ• āφāĻĒā§‹āύāĻžā§° āĻŽāϤāĻžāĻŽāϤ āϜāύāĻžāĻ“āĻ•āĨ¤

āĻĒāĻĸāĻŧāĻžā§° āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻžā§ąāϞ⧀

āĻ¸ā§āĻŽāĻžā§°ā§āϟāĻĢ’āύ āφ⧰⧁ āĻŸā§‡āĻŦāϞ⧇āϟ
Android āφ⧰⧁ iPad/iPhoneā§° āĻŦāĻžāĻŦ⧇ Google Play Books āĻāĻĒāĻŸā§‹ āχāύāĻˇā§āϟāϞ āϕ⧰āĻ•āĨ¤ āχ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžā§ąā§‡ āφāĻĒā§‹āύāĻžā§° āĻāĻ•āĻžāωāĻŖā§āϟ⧰ āϏ⧈āϤ⧇ āĻ›āĻŋāĻ‚āĻ• āĻšāϝāĻŧ āφ⧰⧁ āφāĻĒ⧁āύāĻŋ āϝ'āϤ⧇ āύāĻžāĻĨāĻžāĻ•āĻ• āϤ'āϤ⧇āχ āϕ⧋āύ⧋ āĻ…āĻĄāĻŋāĻ…'āĻŦ⧁āĻ• āĻ…āύāϞāĻžāχāύ āĻŦāĻž āĻ…āĻĢāϞāĻžāχāύāϤ āĻļ⧁āύāĻŋāĻŦāϞ⧈ āϏ⧁āĻŦāĻŋāϧāĻž āĻĻāĻŋāϝāĻŧ⧇āĨ¤
āϞ⧇āĻĒāϟāĻĒ āφ⧰⧁ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻžā§°
āφāĻĒ⧁āύāĻŋ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻžā§°ā§° ā§ąā§‡āĻŦ āĻŦā§āϰāĻžāωāϜāĻžā§° āĻŦā§āĻ¯ā§ąāĻšāĻžā§° āϕ⧰āĻŋ Google PlayāϤ āĻ•āĻŋāύāĻž āĻ…āĻĄāĻŋāĻ…'āĻŦ⧁āĻ•āϏāĻŽā§‚āĻš āĻļ⧁āύāĻŋāĻŦ āĻĒāĻžā§°ā§‡āĨ¤
āχ-ā§°ā§€āĻĄāĻžā§° āφ⧰⧁ āĻ…āĻ¨ā§āϝ āĻĄāĻŋāĻ­āĻžāχāϚ
Kobo eReadersā§° āĻĻ⧰⧇ āχ-āϚāĻŋ⧟āĻžāρāĻšā§€ā§° āĻĄāĻŋāĻ­āĻžāχāϚāϏāĻŽā§‚āĻšāϤ āĻĒā§āĻŋāĻŦāϞ⧈, āφāĻĒ⧁āύāĻŋ āĻāϟāĻž āĻĢāĻžāχāϞ āĻĄāĻžāωāύāĻ˛â€™āĻĄ āϕ⧰āĻŋ āϏ⧇āχāĻŸā§‹ āφāĻĒā§‹āύāĻžā§° āĻĄāĻŋāĻ­āĻžāχāϚāϞ⧈ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤ⧰āĻŖ āϕ⧰āĻŋāĻŦ āϞāĻžāĻ—āĻŋāĻŦāĨ¤ āϏāĻŽā§°ā§āĻĨāĻŋāϤ āχ-ā§°āĻŋāĻĄāĻžā§°āϞ⧈ āĻĢāĻžāχāϞāĻŸā§‹ āϕ⧇āύ⧇āĻ•ā§ˆ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤ⧰ āϕ⧰āĻŋāĻŦ āϜāĻžāύāĻŋāĻŦāϞ⧈ āϏāĻšāĻžāϝāĻŧ āϕ⧇āĻ¨ā§āĻĻā§ā§°āϤ āĻĨāĻ•āĻž āϏāĻŦāĻŋāĻļ⧇āώ āύāĻŋā§°ā§āĻĻ⧇āĻļāĻžā§ąāϞ⧀ āϚāĻžāĻ“āĻ•āĨ¤