Temporal verification of reactive systems: safety
Temporal verification of reactive systems: safety
Rewriting-Based Techniques for Runtime Verification
Automated Software Engineering
Adding trace matching with free variables to AspectJ
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Mop: an efficient and generic runtime verification framework
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Making trace monitors feasible
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Proving the Correctness of Multiprocess Programs
IEEE Transactions on Software Engineering
Instrumenting C programs with nested word monitors
Proceedings of the 14th international SPIN conference on Model checking software
Browser-Based Enforcement of Interface Contracts in Web Applications with BeepBeep
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Run-time verification of optimistic concurrency
RV'10 Proceedings of the First international conference on Runtime verification
Sampling-based runtime verification
FM'11 Proceedings of the 17th international conference on Formal methods
Constructing a Model-Based Software Monitor for the Insulin Pump Behavior
Journal of Medical Systems
A formal data-centric approach for passive testing of communication protocols
IEEE/ACM Transactions on Networking (TON)
Hi-index | 0.00 |
We present an extension of past time LTL with call/return atoms, called ptCaRet , together with a monitor synthesis algorithm for it. ptCaRet includes abstract variants of past temporal operators, which can express properties over traces in which terminated function or procedure executions are abstracted away into a call and a corresponding return. This way, ptCaRet can express safety properties about procedural programs which cannot be expressed using conventional linear temporal logics. The generated monitors contain both a local state and a stack. The local state is encoded on as many bits as concrete temporal operators the original formula has. The stack pushes/pops bit vectors of size the number of abstract temporal operators the original formula has: push on begins, pop on ends of procedure executions. An optimized implementation is also discussed and is available to download.