Simulation Log Replay for Faster Program Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing simulation systems require significant time for program verification, as they demand repeated reproduction of simulations to ensure program correctness, leading to inefficient program debugging processes.
Innovation Solution
A simulation system that allows users to check positional information of objects and variable values at each execution time, enabling efficient program debugging by reproducing simulations step-by-step and displaying relevant logs and graphs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If simulations are repeatedly reproduced to verify programs, then program verification reliability is improved, but time consumption increases
Solution Approach 1:
The system performs preliminary actions by recording positional information and variable values at each execution time during the initial simulation run. This recorded data is then reused for multiple verification purposes, eliminating the need to re-run simulations repeatedly and thus reducing time consumption while maintaining verification reliability
Solution Approach 2:
The system creates copies of simulation data (positional information and variable values) at different execution times and presents them in a time-series display. This allows users to verify program correctness by examining copied data from multiple time points without re-executing the simulation, thereby reducing time consumption while maintaining verification reliability
2Productivity
If positional information and variable values are displayed for each execution time, then program debugging efficiency is improved, but data processing complexity increases
Solution Approach 1:
The system segments the simulation data by execution time, creating distinct data sets for each time point. This segmentation allows the display to present positional information and variable values in an organized, time-ordered manner, making it easier to debug programs by examining specific execution moments without being overwhelmed by the overall complexity of the entire simulation data set
Solution Approach 2:
The system introduces an intermediary data structure that stores and manages the relationship between execution times, positional information, and variable values. This intermediary layer simplifies the processing complexity by providing a structured interface between the raw simulation data and the display function, enabling efficient debugging through organized data presentation
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Provided is a simulation technique that allows the program verification to be more efficiently performed. A simulation system (500) includes: a simulator (520) that executes simulation of an operation of one or more devices; a data input unit (551) that obtains one or more execution times in the simulation, positional information (252) of each one of one or more objects in the simulation, and a value (254) of each one of one or more variables referred to by a program (253) to operate the one or more devices; a data recorder (554) that stores, as a first log (250), positional information (252) of the one or more objects and value (254) of the one or more variables for each of the one or more execution times in a manner that positional information (252) and value (254) are associated with each other; and a displayer that displays positional information (252) of the one or more objects and value (254) of the one or more variables for each of the one or more execution times included in first log (250).