Runtime Enforcement Using Knowledge Bases
Journal article, Peer reviewed
Published version
![Thumbnail](/bora-xmlui/bitstream/handle/11250/3145414/978-3-031-30826-0_12.pdf.jpg?sequence=6&isAllowed=y)
View/ Open
Date
2023Metadata
Show full item recordCollections
- Department of Informatics [967]
- Registrations from Cristin [10149]
Original version
Lecture Notes in Computer Science (LNCS). 2023, 13991, 220-240. 10.1007/978-3-031-30826-0_12Abstract
Knowledge bases have been extensively used to represent and reason about static domain knowledge. In this work, we show how to enforce domain knowledge about dynamic processes to guide executions at runtime. To do so, we map the execution trace to a knowledge base and require that this mapped knowledge base is always consistent with the domain knowledge. This means that we treat the consistency with domain knowledge as an invariant of the execution trace. This way, the domain knowledge guides the execution by determining the next possible steps, i.e., by exploring which steps are possible and rejecting those resulting in an inconsistent knowledge base. Using this invariant directly at runtime can be computationally heavy, as it requires to check the consistency of a large logical theory. Thus, we provide a transformation that generates a system which is able to perform the check only on the past events up to now, by evaluating a smaller formula. This transformation is transparent to domain users, who can interact with the transformed system in terms of the domain knowledge, e.g., to query computation results. Furthermore, we discuss different mapping strategies.