University of Illinois Urbana-Champaign
Efficient static checking of safety properties in concurrent smart environments
Abstract
dc:descriptionThe Internet of Things (IoT) space in smart environments, including homes and buildings, presents key challenges in the realm of automation safety. Users can control smart devices with routines, or command sequences that operate serially individually but out of order with respect to each other. While this concurrency can be useful for parallelizing tasks, it can also make the smart environment susceptible to entering undesirable or unpredictable states. As smart device effects have real-world consequences for end users and their property, preventing aberrant executions is of critical importance. This thesis presents verification methods for the static version of this problem, where safety is checked at routine submission time. It will contribute (i) a method of safety specification, by which users can express safety conditions to be held as invariants, and (ii) solutions for static checking of routines against specified safety conditions. As the latter problem is NP-hard, the thesis first presents a system of algorithms that demonstrate model-specific optimizations which improve runtime performance through a conservative approach to safety, provably catching 100% of safety violations. The thesis secondly contributes a generic formal model of the smart environment in a popular specification and verification language called Maude, which enables users to model check a given configuration of devices and routines against safety conditions to find any violations.
Degree
thesis:*- Name thesis:degree_name
- M.S.
- Level thesis:degree_level
- Thesis
- Discipline thesis:degree_discipline
- Computer Science
- Grantor
- University of Illinois Urbana-Champaign
- Year dc:date
- 2025
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Menezes, Rishabh
- Contributors dc:contributor
-
- Gupta, Indranil
Subjects
dc:subject × 7Rights
dc:rights- Statement dc:rights
-
- Copyright 2025 Rishabh Menezes
- Language dc:language
- en, eng
Identifiers
dc:identifier.*- Handle dc:identifier
- https://hdl.handle.net/2142/129213