Publication | Open Access
Runtime Verification of Concurrent Haskell Programs
43
Citations
7
References
2005
Year
Program CheckingEngineeringVerificationSoftware EngineeringConcurrent SystemSoftware AnalysisFormal VerificationTemplate MechanismFormal TechniqueFormal SpecificationRuntime VerificationConcurrent Haskell ProgramsConcurrent ProgrammingComputer ScienceProgram AnalysisAutomated ReasoningSoftware TestingFormal MethodsParallel ProgrammingLtl Formulas
In this article we use model checking techniques to debug Concurrent Haskell programs. LTL formulas specifying assertions or other properties are verified at runtime. If a run which falsifies a formula is detected, the debugger emits a warning and records the path leading to the violation. It is possible to dynamically add formulas at runtime, giving a degree of flexibility which is not available in static verification of source code. We give a comprehensive example of using the new techniques to detect lock-reversal in Concurrent Haskell programs and introduce a template mechanism to define LTL formulas ranging over an arbitrary set of threads or communication abstractions.
| Year | Citations | |
|---|---|---|
Page 1
Page 1