NASA Technical Reports Server (NASA) · 2008 · 12 citations · 69 references
Software MaintenanceProgram CheckingEngineeringVerificationComputer-aided VerificationSoftware EngineeringModel CheckingSoftware AnalysisFormal VerificationProgram ModelRuntime VerificationPotential Program ExecutionsComputer EngineeringComputer ScienceSoftware DesignSoftware VerificationProgram AnalysisSoftware TestingFormal MethodsProgram Model CheckingSystem Software
Program model checking is a verification technology that uses state-space exploration to evaluate large numbers of potential program executions. Program model checking provides improved coverage over testing by systematically evaluating all possible test inputs and all possible interleavings of threads in a multithreaded system. Model-checking algorithms use several classes of optimizations to reduce the time and memory requirements for analysis, as well as heuristics for meaningful analysis of partial areas of the state space Our goal in this guidebook is to assemble, distill, and demonstrate emerging best practices for applying program model checking. We offer it as a starting point and introduction for those who want to apply model checking to software verification and validation. The guidebook will not discuss any specific tool in great detail, but we provide references for specific tools.
69
Patrick Cousot, Radhia Cousot · 1977 · 6.1K citations
Programming Language Theory, Actual Computations, Declarative Programming +10
Gerard J. Holzmann · IEEE Transactions on Software Engineering · 1997 · 3.7K citations
Symbolic execution and program testing
James C. King · Communications of the ACM · 1976 · 2.9K citations · Full text
Bertrand Meyer · Computer · 1992 · 2.1K citations