IoT Event Detector Verification via Symbolic Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
IoT event detectors often produce errors due to faulty logic, leading to missed notifications and distrust among users, especially in large-scale deployments where minor errors are magnified, resulting in ignored alerts and potential operational failures.
Innovation Solution
Implementing a system for IoT event detector correctness verification that analyzes the detector model definition without executing it, using techniques like symbolic execution and bounded model checking to identify and address logical mistakes, ensuring all states and actions are reachable and correctly triggered, thereby preventing false positives and negatives.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional testing methods are used to verify detector logic, then the verification process is simple to implement, but the coverage is incomplete and cannot examine all possible execution paths
Solution Approach 1:
The patent replaces traditional mechanical testing approaches with formal methods including symbolic execution and bounded model checking. These mathematical-based verification techniques systematically explore all possible execution paths and states of the detector logic, providing complete coverage rather than relying on sample-based testing. The symbolic execution engine transforms detector code into symbolic representations that can be mathematically analyzed to verify correctness properties.
Solution Approach 2:
The patent performs verification activities before detector deployment and execution. By conducting formal verification in advance, the system identifies logical errors, unreachable states, and correctness issues before the detector is deployed to production environments. This preliminary verification prevents errors from propagating to large-scale IoT deployments.
2Reliability
If formal verification methods like symbolic execution are implemented, then verification accuracy and coverage improve, but the computational resources and time required increase
Solution Approach 1:
The patent implements bounded model checking that explores execution paths up to a specified depth bound rather than attempting exhaustive infinite-state verification. This approach provides sufficient verification coverage for practical purposes while limiting computational resources. The bound parameter allows tuning between verification thoroughness and computational cost, achieving acceptable reliability without excessive time consumption.
Solution Approach 2:
The verification process is divided into separate analysis phases including symbolic execution, model checking, and property verification. Each phase focuses on specific aspects of detector correctness and can be executed independently. This segmentation allows the system to perform targeted verification without requiring complete exhaustive analysis of all possible execution paths, reducing overall verification time.
3Measurement precision
If comprehensive verification of all execution paths is performed, then logical errors are detected, but the verification process becomes computationally expensive and complex
Solution Approach 1:
The patent introduces an intermediate symbolic representation layer that transforms detector code into a form suitable for formal analysis. The symbolic execution engine creates abstract symbolic states and transitions that mediate between the original code and the verification algorithms. This intermediate representation simplifies the verification process by providing a standardized format for analyzing execution paths and detecting logical errors.
Solution Approach 2:
The verification system creates copies of the detector logic in symbolic form for analysis without modifying the original detector code. Multiple symbolic representations and model instances are generated to explore different execution paths and verify correctness properties. These copies enable comprehensive analysis while preserving the original detector implementation.
Data Source
AI summary
System and methods for IoT event detector correctness verification. Detector models (e.g., state-based models including variables, states, transitions and actions) take IoT device data as input and detect, based on the data, events that triggers actions. To verify a correctness of the models prior to deploying the models at scale, an event detector model correctness checker obtains a representation of a definition of the model, verifies, based on analysis of the model definition, whether the model complies with correctness properties, and generates a report indicating whether the model complies. Example correctness properties include a reachability correctness property that indicates that respective states or actions are reachable according to the definition of the event detector model. The analysis may be accessed via an interface element and may result in generation of a report that identifies a location of non-compliance within the model definition.


