English

Verifying Correctness of PLC Software during System Evolution using Model Containment Approach

Software Engineering 2025-09-09 v1 Symbolic Computation

Abstract

Upgradation of Programmable Logic Controller (PLC) software is quite common to accommodate evolving industrial requirements. Verifying the correctness of such upgrades remains a significant challenge. In this paper, we propose a verification-based approach to ensure the correctness of the existing functionality in the upgraded version of a PLC software. The method converts the older and the newer versions of the sequential function chart (SFC) into two Petri net models. We then verify whether one model is contained within another, based on a novel containment checking algorithm grounded in symbolic path equivalence. For this purpose, we have developed a home-grown Petri net-based containment checker. Experimental evaluation on 80 real-world benchmarks from the OSCAT library highlights the scalability and effectiveness of the framework. We have compared our approach with verifAPS, a popular tool used for software upgradation, and observed nearly 4x performance improvement.

Keywords

Cite

@article{arxiv.2509.05596,
  title  = {Verifying Correctness of PLC Software during System Evolution using Model Containment Approach},
  author = {Soumyadip Bandyopadhyay and Santonu Sarkar},
  journal= {arXiv preprint arXiv:2509.05596},
  year   = {2025}
}

Comments

31 pages with appendix

R2 v1 2026-07-01T05:24:08.364Z