Skip to main content
QUICK REVIEW

[論文レビュー] On Formal Reasoning on the Semantics of PLC using Coq

Jan Olaf Blech, Sidi Ould Biha|arXiv (Cornell University)|Jan 14, 2013
Formal Methods in Verification参考文献 13被引用数 7
ひとこと要約

本論文は、IEC 61131-3標準のIL、SFC、LD、FBD言語を対象として、Coq証明支援ツールを用いた形式的検証フレームワークを提示する。これらの言語の意味論を形式化し、SFCからCoqコードへの自動生成を可能にするとともに、事例研究を通じて安全特性の証明を実施。工業的応用に向けた再利用可能な意味論とツールキットを備えた、認証付きのPLC検証手法を実現した。

ABSTRACT

Programmable Logic Controllers (PLC) and its programming standard IEC 61131-3 are widely used in embedded systems for the industrial automation domain. We propose a framework for the formal treatment of PLC based on the IEC 61131-3 standard. A PLC system description typically combines code written in different languages that are defined in IEC 61131-3. For the top-level specification we regard the Sequential Function Charts (SFC) language, a graphical high-level language that allows to describe the main control-flow of the system. In addition to this, we describe the Instruction List (IL) language -- an assembly like language -- and two other graphical languages: Ladder Diagrams (LD) and Function Block Diagrams (FBD). IL, LD, and FBD are used to describe more low level structures of a PLC. We formalize the semantics of these languages and describe and prove relations between them. Formalization and associated proofs are carried out using the proof assistant Coq. In addition to this, we present work on a tool for automatically generating SFC representations from a graphical description -- the IL and LD languages can be handled in Coq directly -- and its usage for verification purposes. We sketch possible usages of our formal framework, and present an example application for a PLC in a project demonstrator and prove safety properties.

研究の動機と目的

  • IEC 61131-3 PLCプログラミング言語の主要なもの、すなわちIL、SFC、LD、FBDの形式的かつ再利用可能な意味論を確立すること。
  • 図解的SFC記述からCoqで利用可能な表現および証明を自動生成するツールチェーンを開発すること。
  • Coqにおけるインタラクティブ定理証明を用いて、PLCプログラムの安全特性を形式的に検証できることを可能にすること。
  • 将来の目標として、PLCコード用の認証付きコンパイラの構築を支援し、既存の認証付きコンパイルスタックと統合すること。

提案手法

  • Coq証明支援ツールとSSReflect拡張を用いて、IL、SFC、LD、FBDの意味論を形式化すること。
  • Coqの抽出機構を活用し、形式化された意味論から認証付きインタプリタまたはコンパイラを生成すること。
  • 図解的SFC図を同等のCoq仕様および関連する定理に変換するツールの設計および実装。
  • PLCのデータ型と制御フローをモデル化するために、Coqの帰納的型、依存型、決定可能等価性のサポートを活用すること。
  • 標準的な証明技法を用いて、実世界のPLCベースの分類機デモ装置において安全特性を証明すること。
  • 形式的意味論をCertPLCツールと統合し、自動証明生成および検証を可能にすること。

実験結果

リサーチクエスチョン

  • RQ1複数のIEC 61131-3 PLCプログラミング言語の意味論を、証明支援ツール内で一貫的かつ一様に形式化する方法は何か?
  • RQ2図解的SFC仕様から、形式的に検証されたCoq表現を自動生成するツールは可能か?
  • RQ3インタラクティブ定理証明を用いたCoqにおける安全特性の検証は、産業用PLCシステムにおいて実用的にどのような利点をもたらすか?
  • RQ4IL、LD、SFCの形式的意味論を、単一の検証フレームワーク内で関連づけ、一貫性を証明する方法は何か?
  • RQ5この形式的フレームワークを実際の産業用PLCアプリケーションに適用する際の実現可能性とスケーラビリティはいかがなものか?

主な発見

  • 著者らは、IL、SFC、LD、およびFBDの高レベルな抽象化の意味論をCoq上で成功裏に形式化し、PLCプログラムにおける形式的推論を可能にした。
  • 図解的SFC入力をもとに、Coqで利用可能なSFC表現および関連定理を自動生成するツールを開発した。これにより、手動での仕様記述作業が大幅に削減された。
  • このフレームワークにより、分類機デモ装置の安全特性の検証が可能となり、実用的応用の有効性が実証された。
  • 形式化はコード抽出をサポートしており、CompCertスタックを用いてPLC ILからCへの認証付きコンパイラの構築に道を拓いた。
  • 本アプローチは、再利用可能で形式的根拠を持つPLC検証の基盤を提供し、EasyLabのような開発環境への統合の可能性を秘めている。
  • 本研究は、インタラクティブ定理証明を用いたCoqによる産業用PLC検証が実現可能であることを示しており、一部の状況ではモデルチェックよりも強い保証を提供することが可能である。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。