Skip to main content
Top

2023 | Book

Verification of Data-Aware Processes via Satisfiability Modulo Theories

insite
SEARCH

About this book

This book is a revised version of the PhD dissertation written by the author at the Free University of Bozen-Bolzano in Italy.

It presents a new approach to safety verification of a particular class of infinite-state systems, called Data-Aware Processes (DAPs). To do so, the developed technical machinery requires to devise novel results for uniform interpolation and its combination in the context of automated reasoning. These results are then applied to the analysis of concrete business processes enriched with real data.

In 2022, the PhD dissertation won the “BPM Dissertation Award”, granted to outstanding PhD theses in the field of Business Process Management.

Table of Contents

Frontmatter
Chapter 1. Introduction
Abstract
In this first chapter, we provide an overview of the motivations and the contributions presented in this book, and a detailed introduction of its content. We introduce verification of data-aware processes and we show how this problem can be successfully attacked by exploiting Satisfiability Modulo Theories (SMT).
Alessandro Gianola
15. Correction to: Verification of Data-Aware Processes via Satisfiability Modulo Theories
Alessandro Gianola

Foundations of SMT-Based Safety Verification of Artifact Systems

Frontmatter
Chapter 2. Preliminaries from Model Theory and Logic
Abstract
In this chapter, we provide the basic preliminaries from first-order logic that are needed for the first part of the book. We also present some notations employed in this work and some notions from model theory that will be extensively used for the technical treatment. Finally, we summarize basic notions on classical relational databases.
Alessandro Gianola
Chapter 3. Array-Based Artifact Systems: General Framework
Abstract
In this chapter, we introduce Array-based Artifact Systems – a rich and powerful theoretical framework for the formal specification and verification of Data-Aware Processes (DAPs). Specifically, we present Simple Artifact Systems (SASs), Relational Artifact Systems (RASs) and Universal Relational Artifact Systems (U-RASs).
Alessandro Gianola
Chapter 4. Safety Verification of Artifact Systems
Abstract
In this chapter, we introduce the safety verification problem for SASs and (Universal) RASs. For both types of systems, we make use of a powerful and non-trivial extension of the SMT-based version of the backward reachability procedure studied in the context of array-based systems. We focus on the verification issues created by the presence of data in SASs and (Universal) RASs, and how to solve them with the use of quantifier elimination in model completions.
Alessandro Gianola
Chapter 5. Decidability Results via Termination of the Verification Machinery
Abstract
In this chapter, we study how to guarantee termination of the SMT-based backward reachability procedures for SASs and RASs in some notable cases. Termination is a difficult problem to attack in general, in the context of array-based systems. We provide guarantees of termination in three cases. The first one is for SASs, and requires that the DB schema is “acyclic”. The other two are about suitable subclasses of RASs, for which termination is proved by exploiting arguments based on well-quasi-orders (wqos). These two classes of RASs present orthogonal features: the first one, called “RASs with Local Updates”, restricts the syntax of transition formulae but only imposes that the DB signature is acyclic (as in the case of SASs); the second one, called “RASs with Tree-like Signatures”, does not pose restrictions on the syntactic format of the logical formulae of the system, but dictates that the (artifact setting over the) DB signature has a more restrictive shape, i.e., it is a tree. Both cases are sufficiently expressive to capture interesting and concrete DAP models.
Alessandro Gianola

Automated Reasoning Techniques for Data-Aware Process Verification

Frontmatter
Chapter 6. Preliminaries For (Uniform) Interpolation
Abstract
In this chapter, we provide preliminaries and basic notions on the logical notion of (uniform) interpolation. We also relate it to other well-known concepts in logic and automated reasoning, such as the equality interpolating condition and Beth Definability.
Alessandro Gianola
Chapter 7. Uniform Interpolation for Database Theories
Abstract
This second part of the book is devoted to studying sophisticated automated reasoning techniques to solve efficiently the problem of eliminating quantifiers in model completions. In order to do so, we first show that eliminating quantifiers in model completions \(T^*\) is equivalent to the problem of computing \(T\)-covers. The notion of cover has been studied in symbolic model checking in the context of program synthesis and verification; covers are well-known also in the tradition of non-classical logics, but under the name of “uniform interpolants”. Given this equivalence, we can lift our focus to computing covers: in this chapter, we argue how computing covers is not only essential for verifying Artifact Systems, but also for slightly more general systems (that we call “declarative transition systems”) comprising different frameworks from the literature. We dedicate the majority of this chapter to attacking the problem of finding practical and efficient cover algorithms for useful theories for DB schemas.
Alessandro Gianola
Chapter 8. Combination of Uniform Interpolants for DAPs Verification
Abstract
In this chapter, we attack the problem of computing covers in theory combinations. Theory combination is an important topic in automated reasoning, and computing combined covers is particularly interesting in view of DAP verification. We would like to investigate a general method that works for combination of DB schemas for which cover algorithms exist: in this way, whenever we get such algorithms for the component theories, we can easily combine them so as to get a combined cover algorithm for the combined DB schema. In this chapter, we theoretically study the problem of combined covers from a general perspective, by identifying the equality interpolating property as the sufficient (and, in some sense, also necessary) condition. We do so by exhibiting a concrete combined algorithm (called \(\mathsf{ConvexCombCover}\)) that modularly exploits the cover algorithms for the component theories. The key feature of this algorithm relies on the extensive usage of the Beth Definability property. We conclude the chapter by giving a combined cover algorithm (called \(\mathsf{TameCombCover}\)) for possibly non-convex theories, in case the combination is ‘tame’: \(\mathsf{TameCombCover}\) has important applications in DAP verification because it can be used in case of DB extended-schemas.
Alessandro Gianola
Chapter 9. MCMT: a Concrete Model Checker for DAPs
Abstract
In this chapter, we give an overview of \(\mathsf{mcmt}\), the model checker that implements a prototype of our backward reachability algorithm for artifact systems, and we describe its working in the `database-driven' setting, which is the one employed for DAP verification. Finally, we provide an experimental evaluation consisting of running \(\mathsf{mcmt}\) over an interesting and significant benchmark of data-aware processes encoded into RASs.
Alessandro Gianola

Applications

Frontmatter
Chapter 10. Business Process Management and Petri Nets: Preliminaries
Abstract
In this chapter we provide a brief overview of the fundamental notions on the BPMN language, and basic concepts from Colored Petri nets that are useful for the BPM applications.
Alessandro Gianola
Chapter 11. DABs: a Theoretical Framework for Data-Aware BPMN
Abstract
In this chapter, we present the first application of our verification framework to business processes. Specifically, we define a general model of Data-Aware Processes, called DAB, which is a theoretical extension of the BPMN language with full-fledged relational data. We also show how DABs can be translated into RASs, so as to transfer the verification results for RASs to this BPMN-oriented model. DABs are similar in spirit to artifact systems concerning the treatment of relational data, but employ a fragment of the BPMN language to express the process schema.
Alessandro Gianola
Chapter 12. delta-BPMN: the operational and implemented counterpart of DABs
Abstract
In this chapter, we present an operational framework, called \emph{delta-BPMN}, that can be seen as a practice-oriented counterpart of DABs and that provides a concrete verifiable language and a proof-of-concept implementation for modeling and verifying data-aware business processes. In fact, although DABs present a more practical flavor than the RASs, they are far from being usable in practice: for instance, the (data manipulation) logic layer of DABs is expressed as a precondition/update language that natively matches the update language provided by RASs, but it does not adhere to any standard language (or variant) employed in practice. For this reason, we introduce here a framework where every layer (the process layer, the data layer and the logic layer) is expressed in terms of constructs of well-known standard languages.
Alessandro Gianola
Chapter 13. Catalog Object-Aware Nets
Abstract
In this chapter, we provide the second main application of the formal framework of U-RASs to the problem of modeling and verification of complex processes enriched with data. By taking advantage of the fruitful tradition of employing Petri nets as the main backbone for processes, we introduce Catalog and Object-Aware nets (COA-nets), an enrichment of colored Petri nets (CPNs) where transitions are equipped with guards that simultaneously inspect the content of tokens and query facts stored in a read-only persistent database (i.e., a catalog), and can inject data into tokens by extracting relevant values from the database or by generating genuinely fresh ones. This model is particularly tailored to represent the co-evolution of multiple objects, an essential feature when dealing with real-life processes.
Alessandro Gianola
Chapter 14. Conclusions
Abstract
This chapter concludes the book, summarizes the contributions, and discusses future work. In this book, we provided the foundations of Data-Aware Process (DAP) safety verification based on Satisfiability Modulo Theories (SMT) solving and on automated reasoning methods. To do so, we proposed a novel general framework that relies on model-theoretic algebra. In this framework, complex processes enriched with data can be faithfully modeled as symbolic array-based transition systems. These are dynamic systems that evolve over time, where the sets of states and transitions are described symbolically, specifically using logical formulae involving arrays: in such systems, data are formalized using an algebraic representation of relational databases. We verify DAPs against safety properties by employing an extension of the backward reachability procedure. This extension requires the development of sophisticated algorithmic techniques for the treatment of the quantified data variables that are used in transitions. The procedure has been implemented in the state-of-the-art \(\mathsf{mcmt}\) model checker. We showed how this framework can be successfully applied in the context of BPM to model and verify concrete data-aware business processes: to do so, we introduced different formalisms that on the one hand build on top of standard languages used in practice, on the other hand are able to capture expressive modeling capabilities.
Alessandro Gianola
Backmatter
Metadata
Title
Verification of Data-Aware Processes via Satisfiability Modulo Theories
Author
Alessandro Gianola
Copyright Year
2023
Electronic ISBN
978-3-031-42746-6
Print ISBN
978-3-031-42745-9
DOI
https://doi.org/10.1007/978-3-031-42746-6

Premium Partner