SLEMI: equivalence modulo input (EMI) based mutation of CPS models for finding compiler bugs in Simulink
Shafiul Azam Chowdhury, Sohil Lal Shrestha, Taylor T. Johnson, Christoph Csallner
Abstract
Finding bugs in commercial cyber-physical system development tools (or "model-based design" tools) such as MathWorks's Simulink is important in practice, as these tools are widely used to generate embedded code that gets deployed in safety-critical applications such as cars and planes. Equivalence Modulo Input (EMI) based mutation is a new twist on differential testing that promises lower use of computational resources and has already been successful at finding bugs in compilers for procedural languages. To provide EMI-based mutation for differential testing of cyber-physical system (CPS) development tools, this paper develops several novel mutation techniques. These techniques deal with CPS language features that are not found in procedural languages, such as an explicit notion of execution time and zombie code, which combines properties of live and dead procedural code. In our experiments the most closely related work (SLforge) found two bugs in the Simulink tool. In comparison, SLEMI found a super-set of issues, including 9 confirmed as bugs by MathWorks Support.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 7da3ec9d-8450-4d37-bde7-3d820bd49ee7Cited by top-tier papers14
- Finding typing compiler bugsStefanos Chaliasos, Thodoris Sotiropoulos, Diomidis Spinellis, Arthur Gervais et al.PLDI 2022 · 36 citations
- Well-typed programs can go wrong: a study of typing-related bugs in JVM compilersStefanos Chaliasos, Thodoris Sotiropoulos, Georgios-Petros Drosos, Charalambos Mitropoulos et al.OOPSLA 2021 · 31 citations
- Enriching Compiler Testing with Real Program from Bug ReportHao ZhongASE 2022 · 24 citations
- How Does Simulation-Based Testing for Self-Driving Cars Match Human Perception?Christian Birchler, Tanzil Kombarabettu Mohammed, Pooja Rani, Teodora Nechita et al.FSE 2024 · 21 citations
- Compiler Testing using Template Java ProgramsZhiqiang Zang, Nathan Wiatrek, Milos Gligoric, August ShiASE 2022 · 21 citations
Related papers
- Detecting Simulink compiler bugs via controllable zombie blocks mutationShikai Guo, He Jiang, Zhihao Xu, Xiaochen Li et al.FSE 2022 · 15 citations
- Live Region Mutation Testing for Commercial Cyber-Physical System Development Tool ChainLehuan Zhang, Shikai Guo, Zixuan Wang, Xiaoyu Wang et al.DAC 2025
- Fuzzing for CPS Mutation TestingJaekwon Lee, Enrico Viganò, Oscar Cornejo, Fabrizio Pastore et al.ASE 2023 · 4 citations
- Partition Based Differential Testing for Finding Embedded Code Generation Bugs in SimulinkHe Jiang, Hongyi Cheng, Shikai Guo, Xiaochen LiDAC 2023 · 2 citations
- CFTCG: Test Case Generation for Simulink Model through Code Based FuzzingZhuo Su, Zehong Yu, Dongyan Wang, Rui Wang et al.DAC 2024 · 1 citation
