Technical Reports (CIS)

Document Type

Technical Report

Subject Area

CPS Theory, CPS Formal Methods

Date of this Version

December 2008


University of Pennsylvania Department of Computer and Information Science Technical Report No. MS-CIS-08-35.


For programs whose data variables range over Boolean or finite domains, program verification is decidable, and this forms the basis of recent tools for software model checking. In this paper, we consider algorithmic verification of programs that use Boolean variables, and in addition, access a single array whose length is potentially unbounded, and whose elements range over pairs from Σ × D, where Σ is a finite alphabet and D is a potentially unbounded data domain. We show that the reachability problem, while undecidable in general, is (1) Pspace-complete for programs in which the array-accessing for-loops are not nested, (2) solvable in Ex-pspace for programs with arbitrarily nested loops if array elements range over a finite data domain, and (3) decidable for a restricted class of programs with doubly-nested loops. The third result establishes connections to automata and logics defining languages over data words.



Date Posted: 17 December 2008