The world of software is increasing and the requirements on software systems are getting harder. To ensure that these requirements are fulfilled, we use program verification. The goal of verification is to prove that the system automatically fulfills its requirements. In this thesis, we will consider parameterized systems. A parameterized system is a system that contains an arbitrary number of components (processes) organized according to a particular pattern. Such systems are heavily used to implement mutual exclusion protocols [1,2]. In this thesis we will extend parameterized verification to handle variables over unbounded data domain. In fact, there is a large number of protocols (or programs) that manipulate variable over unbounded data domain. An example is the Bakery[2] protocol which uses integer variables to decide the order in which the processes are allowed to enter their critical section. In order to handle the unbounded data domain, we use abstract interpretation. The key idea is to abstract away the variable values and only keep their internal relationships. Finally, we have constructed a prototype in C and tested it again on a number of mutual exclusion protocol.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:uu-244347 |
Date | January 2015 |
Creators | Sävström, Tomas |
Publisher | Uppsala universitet, Institutionen för informationsteknologi |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | IT ; 15009 |
Page generated in 0.0015 seconds