Modular Verification of Function Block Based Industrial Control Systems

Abstract IEC 61131-3, the world-wide standard for industrial control programming, is increasingly being used in safety-related control applications. Control loops are built from components taken from domain-specific function block libraries. Code inspection and testing are the two predominant quality assurance techniques. For highly dependable control applications, however, these techniques are not sufficient, in general. This paper suggests to augment testing with compositional, theorem-prover supported verification. The approach is based on a representation of IEC 61131-3 function blocks in higher-order logic. The verification task is separated into the a priori verification of library components and a separate proof of individual application programs.

[1]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[2]  Thomas A. Henzinger,et al.  Automatic symbolic verification of embedded systems , 1993, 1993 Proceedings Real-Time Systems Symposium.

[3]  Hassen Saïdi The Invariant Checker: Automated Deductive Verification of Reactive Systems , 1997, CAV.

[4]  Richard J. Boulton,et al.  Experience with Embedding Hardware Description Languages in HOL , 1992, TPCD.

[5]  MA John Harrison PhD Theorem Proving with the Real Numbers , 1998, Distinguished Dissertations.

[6]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[7]  Nicolas Halbwachs,et al.  Verification of Real-Time Systems using Linear Relation Analysis , 1997, Formal Methods Syst. Des..

[8]  Albert Benveniste,et al.  The synchronous approach to reactive and real-time systems , 1991 .

[9]  Thomas A. Henzinger,et al.  Automatic Symbolic Verification of Embedded Systems , 1996, IEEE Trans. Software Eng..

[10]  Olaf Stursberg,et al.  A Case Study in Tool-Aided Analysis of Discretely Controlled Continuous Systems: The Two Tanks Problem , 1997, Hybrid Systems.

[11]  Norbert Völker Ein Rahmen zur Verifikation von SPS-Funktionsbausteinen in HOL , 1998, Berichte aus der Elektrotechnik.

[12]  John Rushby,et al.  A Less Elementary Tutorial for the PVS Specification and Verification System , 1996 .

[13]  Richard C. Waters,et al.  Knowledge Intensive Software Engineering Tools , 1992, IEEE Trans. Knowl. Data Eng..

[14]  Thomas A. Henzinger,et al.  Reactive Modules , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[15]  Lawrence Charles Paulson,et al.  Isabelle: A Generic Theorem Prover , 1994 .