Abstraction-Based Generation of Finite State Models from C Programs.

Show simple item record

dc.contributor.advisor S. Purushothaman Iyer, Chair en_US
dc.contributor.advisor W. Rance Cleaveland, Member en_US
dc.contributor.advisor K.C. Tai, Member en_US
dc.contributor.advisor John W. Baugh, Member en_US
dc.contributor.author DuVarney, Daniel C. en_US
dc.date.accessioned 2010-04-02T18:50:23Z
dc.date.available 2010-04-02T18:50:23Z
dc.date.issued 2002-03-29 en_US
dc.identifier.other etd-20020328-101420 en_US
dc.identifier.uri http://www.lib.ncsu.edu/resolver/1840.16/4269
dc.description.abstract Model checking is a major advancement in the quest forpractical automatic verification methods for computer systems, and has been effectively used to discoverflaws in real-world hardware systems. Unfortunately, applying model-checking techniques to software systems has proved to be more difficult, due to the large number of states and irregular transitions of such systems. One promising method for generating reasonably-sized models from programs is the use of data abstraction, in which the program data is mapped from a large set of possible values to a much smaller set of abstract values. This thesis develops a method which, given a program in the C language and an abstraction mapping, allows the automatic construction of an abstract labeled transition system (LTS), which is much smaller than the concrete LTS (the LTS which would be generated without the benefit of abstraction). The method is shown to be sound in the sense that if a program is well-behaved in its use of pointers, then any linear temporal logic formula which holds true for the corresponding abstract LTS will also hold true for the concrete LTS. Furthermore, if a design exists in the form of a transition system, then the abstract LTS can be checked against the design for bisimilarity. Bisimilarity ensures that the program is a faithful implementation ofthe design. A suite of software tools has been implemented based upon the theory. These tools interface with the Concurrency Workbench, a model checking system. A case study is presented which shows the practicality of this technique for verifying real-world C programs. en_US
dc.rights I hereby certify that, if appropriate, I have obtained and attached hereto a written permission statement from the owner(s) of each third party copyrighted matter to be included in my thesis, dissertation, or project report, allowing distribution as specified below. I certify that the version I submitted is the same as that approved by my advisory committee. I hereby grant to NC State University or its agents the non-exclusive license to archive and make accessible, under the conditions specified below, my thesis, dissertation, or project report in whole or in part in all forms of media, now or hereafter known. I retain all other ownership rights to the copyright of the thesis, dissertation or project report. I also retain the right to use in future works (such as articles or books) all or part of this thesis, dissertation, or project report. en_US
dc.title Abstraction-Based Generation of Finite State Models from C Programs. en_US
dc.degree.name PhD en_US
dc.degree.level PhD Dissertation en_US
dc.degree.discipline Computer Science en_US


Files in this item

Files Size Format View
etd.pdf 607.6Kb PDF View/Open

This item appears in the following Collection(s)

Show simple item record