Demo Data from SIGIR 2026 / reviewers in the wild / expert
Dilian Gurov
dblp:47/1237
· DBLP profile ↗
48ranked-venue papers
10as first author
15since 2021 · last 2026
0000-0002-0074-8786ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 36 · 5 first-author · 10 since 2021Theory of computation · 11 · 3 first-author · 5 since 2021Artificial intelligence and machine learning · 3 · 1 first-author · 2 since 2021Security and privacy · 3 · 1 first-authorDatabases, data management, data science and information retrieval · 1 · 1 since 2021
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
4 papers |
Program verification · 43% Program analysis · 20% Compilers and program optimization · 18% | |
| Artificial intelligence
1 paper |
Knowledge representation and reasoning · 67% Multi-agent systems · 33% | |
| Theoretical computer science
1 paper |
Automated reasoning and model checking · 100% |
Topics — the 16 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program verification
deductive verification |
0.7 | 1 | 2023 | Automatic Program Instrumentation for Automatic Verification · CAV (3) 2023 |
Compilers and program optimization
program instrumentation |
0.7 | 1 | 2023 | Automatic Program Instrumentation for Automatic Verification · CAV (3) 2023 |
Program verification › model checking
software model checking |
0.7 | 1 | 2023 | Automatic Program Instrumentation for Automatic Verification · CAV (3) 2023 |
Requirements engineering and software design › formal specification
specification transformation |
0.7 | 1 | 2023 | Automatic Program Instrumentation for Automatic Verification · CAV (3) 2023 |
Program analysis
static analysis |
0.7 | 1 | 2023 | Automatic Program Instrumentation for Automatic Verification · CAV (3) 2023 |
Knowledge, reasoning and agents › Knowledge representation and reasoning
epistemic reasoning |
0.6 | 1 | 2022 | Knowledge-based strategies for multi-agent teams playing against Nature · Artif. Intell. 2022 |
Knowledge, reasoning and agents › Knowledge representation and reasoning › logic in computer science › logical foundations › non-classical logics › epistemic logic
higher-order knowledge |
0.6 | 1 | 2022 | Knowledge-based strategies for multi-agent teams playing against Nature · Artif. Intell. 2022 |
Knowledge, reasoning and agents › Multi-agent systems › game theory
multi-agent games |
0.6 | 1 | 2022 | Knowledge-based strategies for multi-agent teams playing against Nature · Artif. Intell. 2022 |
Automated reasoning and model checking › synthesis
strategy synthesis |
0.6 | 1 | 2022 | Knowledge-based strategies for multi-agent teams playing against Nature · Artif. Intell. 2022 |
Program verification
modular verification |
0.1 | 1 | 2008 | Compositional verification of sequential programs with procedures · Inf. Comput. 2008 |
Program analysis › dynamic analysis
runtime monitoring |
0.1 | 1 | 2008 | Provably Correct Runtime Monitoring · FM 2008 |
Program verification › dynamic verification
runtime verification |
0.1 | 1 | 2008 | Provably Correct Runtime Monitoring · FM 2008 |
Program verification › mechanized verification
semi-automated verification |
0.0 | 1 | 2001 | Semi-Automated Verification of Erlang Code · ASE 2001 |
Program verification
temporal logic verification |
0.0 | 1 | 2001 | Semi-Automated Verification of Erlang Code · ASE 2001 |
Programming languages and type systems
functional language |
0.0 | 1 | 2001 | Semi-Automated Verification of Erlang Code · ASE 2001 |
Concurrent programming
message passing |
0.0 | 1 | 2001 | Semi-Automated Verification of Erlang Code · ASE 2001 |
Methods — techniques the papers use, named apart from their topics
knowledge-based subset construction · 1.1software model checking · 0.7program instrumentation · 0.7deductive verification · 0.7proof system · 0.0goal-directed proof search · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | A program instrumentation framework for automatic verificationabstractAbstract In deductive verification and software model checking, dealing with certain specification language constructs can be problematic when the back-end solver is not sufficiently powerful or lacks the required theories. One way to deal with this is to transform, for verification purposes, the program to an equivalent one not using the problematic constructs, and to reason about this equivalent program instead. In this article, we propose program instrumentation as a unifying verification paradigm that subsumes various existing ad-hoc approaches, has a clear formal correctness criterion, can be applied automatically, and can transfer back witnesses and counterexamples. We illustrate our approach on the automated verification of programs that involve quantification and aggregation operations over arrays, such as the maximum value or sum of the elements in a given segment of the array, which are known to be difficult to reason about automatically. We implement our approach in the MonoCera tool, which is tailored to the verification of programs with aggregation, and evaluate it on example programs, including SV-COMP programs. Jesper Amilon, Zafer Esen, Dilian Gurov, Christian Lidström, Philipp Rümmer, Marten Voorberg |
Formal Methods Syst. Des. | 3 |
| 2025 | An Expressive Trace Logic for Recursive ProgramsabstractWe present an expressive logic over trace formulas, based on binary state predicates, chop, and least fixed-points, for precise specification of programs with recursive procedures. Both, programs and trace formulas, are equipped with a direct-style, fully compositional, denotational semantics that on programs coincides with the standard SOS of recursive programs. We design a compositional proof calculus for proving finite-trace program properties, and prove soundness as well as (relative) completeness. We show that each program can be mapped to a semantics-preserving trace formula and, vice versa, each trace formula can be mapped to a canonical program over slightly extended programs, resulting in a Galois connection between programs and formulas. Our results shed light on the correspondence between programming constructs and logical connectives. Dilian Gurov, Reiner Hähnle |
FSCD | 1 |
| 2025 | Multi-perspective Correctness of Programs
Eduard Kamburjan, Dilian Gurov |
ICTAC | 2 |
| 2025 | Machine-Checked Compositional Specification and Proofs for Embedded Systems
Karl Palmskog, Mattias Nyberg, Dilian Gurov |
TASE | 3 |
| 2024 | Deductively Verified Program Models for Software Model Checking
Jesper Amilon, Dilian Gurov |
ISoLA (3) | 2 |
| 2024 | Post-Hoc Formal Verification of Automotive Software with Informal Requirements: An Experience ReportabstractIn this paper, we report on our experience with formally specifying and verifying an industrial software module, provided to us by a company from the heavy-vehicle industry. We start with a set of 32 informally stated requirements, also provided by the company. We discuss at length the formalization process of informally stated requirements for the purposes of their subsequent formal verification. Depending on the nature of each requirement, one of three languages was used: ACSL contracts, LTL or MITL. We use the Frama-C deductive verification framework to verify the source code of the module against the formalized requirements, with the outcome that 21 requirements are successfully verified while 6 are not. The remaining 5 requirements could not be verified for the module itself, as they specify behavior outside it. We illustrate what steps we took to convert LTL and MITL formulas into ACSL contracts to enable their verification in Frama-C. Finally, we discuss conclusions we drew from our work, notably that formal-verification-driven development of modules and verified breakdown of system requirements could likely remedy some problems we encountered. Gustav Ung, Jesper Amilon, Dilian Gurov, Christian Lidström, Mattias Nyberg, Karl Palmskog |
RE | 3 |
| 2023 | Automatic Program Instrumentation for Automatic VerificationabstractAbstract In deductive verification and software model checking, dealing with certain specification language constructs can be problematic when the back-end solver is not sufficiently powerful or lacks the required theories. One way to deal with this is to transform, for verification purposes, the program to an equivalent one not using the problematic constructs, and to reason about its correctness instead. In this paper, we propose instrumentation as a unifying verification paradigm that subsumes various existing ad-hoc approaches, has a clear formal correctness criterion, can be applied automatically, and can transfer back witnesses and counterexamples. We illustrate our approach on the automated verification of programs that involve quantification and aggregation operations over arrays, such as the maximum value or sum of the elements in a given segment of the array, which are known to be difficult to reason about automatically. We implement our approach in the MonoCera tool, which is tailored to the verification of programs with aggregation, and evaluate it on example programs, including SV-COMP programs. Jesper Amilon, Zafer Esen, Dilian Gurov, Christian Lidström, Philipp Rümmer |
CAV (3) | 3 |
| 2023 | Trace-based Deductive VerificationabstractContracts specifying a procedure’s behavior in terms of pre- and postconditions are essential for scalable software verification, but cannot express any constraints on the events occurring during execution of the procedure. This necessitates to annotate code with intermediate assertions, preventing full specification abstraction. We propose a logic over symbolic traces able to specify recursive procedures in a mod- ular manner that refers to specified programs only in terms of events. We also provide a deduction system based on symbolic execution and induction that we prove to be sound relative to a trace semantics. Our work generalizes contract-based to trace-based deductive verification by extending the notion of state-based contracts to trace-based contracts. Richard Bubel, Dilian Gurov, Reiner Hähnle, Marco Scaletta |
LPAR | 2 |
| 2023 | Contract Based Embedded Software Design
Christian Lidström, Dilian Gurov |
TASE | 2 |
| 2022 | TriCo - Triple Co-piloting of Implementation, Specification and Tests
Wolfgang Ahrendt, Dilian Gurov, Moa Johansson 0001, Philipp Rümmer |
ISoLA (1) | 2 |
| 2022 | Deductive Verification Based Abstraction for Software Model Checking
Jesper Amilon, Christian Lidström, Dilian Gurov |
ISoLA (1) | 3 |
| 2022 | Knowledge-based strategies for multi-agent teams playing against NatureabstractWe study teams of agents that play against Nature towards achieving a common objective. The agents are assumed to have imperfect information due to partial observability, and have no communication during the play of the game. We propose a natural notion of higher-order knowledge of agents. Based on this notion, we define a class of knowledge-based strategies, and consider the problem of synthesis of strategies of this class. We introduce a multi-agent extension, MKBSC, of the well-known knowledge-based subset construction applied to such games. Its iterative applications turn out to compute higher-order knowledge of the agents. We show how the MKBSC can be used for the design of knowledge-based strategy profiles, and investigate the transfer of existence of such strategies between the original game and in the iterated applications of the MKBSC, under some natural assumptions. We also relate and compare the “intensional” view on knowledge-based strategies based on explicit knowledge representation and update, with the “extensional” view on finite memory strategies based on finite transducers and show that, in a certain sense, these are equivalent. Dilian Gurov, Valentin Goranko, Edvin Lundberg |
Artif. Intell. | 1 |
| 2021 | Category Theory Framework for Variability Models with Non-functional Requirements
Daniel-Jesus Munoz, Dilian Gurov, Monica Pinto 0001, Lidia Fuentes |
CAiSE | 2 |
| 2021 | Dynamic Vulnerability Detection on Smart Contracts Using Machine LearningabstractIn this work we propose Dynamit, a monitoring framework to detect reentrancy vulnerabilities in Ethereum smart contracts. The novelty of our framework is that it relies only on transaction metadata and balance data from the blockchain system; our approach requires no domain knowledge, code instrumentation, or special execution environment. Dynamit extracts features from transaction data and uses a machine learning model to classify transactions as benign or harmful. Therefore, not only can we find the contracts that are vulnerable to reentrancy attacks, but we also get an execution trace that reproduces the attack. Using a random forest classifier, our model achieved more than 90 percent accuracy on 105 transactions, showing the potential of our technique. Mojtaba Eshghie, Cyrille Artho, Dilian Gurov |
EASE | 3 |
| 2021 | An Abstract Contract Theory for Programs with ProceduresabstractAbstract When developing complex software and systems, contracts provide a means for controlling the complexity by dividing the responsibilities among the components of the system in a hierarchical fashion. In specific application areas, dedicated contract theories formalise the notion of contract and the operations on contracts in a manner that supports best the development of systems in that area. At the other end, contract meta-theories attempt to provide a systematic view on the various contract theories by axiomatising their desired properties. However, there exists a noticeable gap between the most well-known contract meta-theory of Benveniste et al. [5], which focuses on the design of embedded and cyber-physical systems, and the established way of using contracts when developing general software, following Meyer’s design-by-contract methodology [18]. At the core of this gap appears to be the notion of procedure: while it is a central unit of composition in software development, the meta-theory does not suggest an obvious way of treating procedures as components. In this paper, we provide a first step towards a contract theory that takes procedures as the basic building block, and is at the same time an instantiation of the meta-theory. To this end, we propose an abstract contract theory for sequential programming languages with procedures, based on denotational semantics. We show that, on the one hand, the specification of contracts of procedures in Hoare logic, and their procedure-modular verification, can be cast naturally in the framework of our abstract contract theory. On the other hand, we also show our contract theory to fulfil the axioms of the meta-theory. In this way, we give further evidence for the utility of the meta-theory, and prepare the ground for combining our instantiation with other, already existing instantiations. Christian Lidström, Dilian Gurov |
FASE | 2 |
| 2020 | Who Carries the Burden of Modularity? - Introduction to ISoLA 2020 Track on Modularity and (De-)composition in Verification
Dilian Gurov, Reiner Hähnle, Eduard Kamburjan |
ISoLA (1) | 1 |
| 2020 | Automated Verification of Embedded Control Software - Track Introduction
Dilian Gurov, Paula Herber, Ina Schaefer |
ISoLA (3) | 1 |
| 2020 | Formally Proving Compositionality in Industrial Systems with Informal Specifications
Mattias Nyberg, Jonas Westman, Dilian Gurov |
ISoLA (3) | 3 |
| 2020 | Practical Abstractions for Automated Verification of Shared-Memory Concurrency
Wytse Oortwijn, Dilian Gurov, Marieke Huisman |
VMCAI | 2 |
| 2018 | Formal Methods in Industrial Practice - Bridging the Gap (Track Summary)
Michael Felderer, Dilian Gurov, Marieke Huisman, Björn Lisper, Rupert Schlick |
ISoLA (4) | 2 |
| 2018 | Formal Verification in Automotive Industry: Enablers and Obstacles
Mattias Nyberg, Dilian Gurov, Christian Lidström, Andreas Rasmusson, Jonas Westman |
ISoLA (4) | 2 |
| 2018 | Specification and verification of synchronization with condition variables
Pedro de Carvalho Gomes, Dilian Gurov, Marieke Huisman, Cyrille Artho |
Sci. Comput. Program. | 2 |
| 2017 | Formal architecture modeling of sequential non-recursive C programs
Jonas Westman, Mattias Nyberg, Joakim Gustavsson, Dilian Gurov |
Sci. Comput. Program. | 4 |
| 2016 | Static and Runtime Verification, Competitors or Friends? (Track Summary)
Dilian Gurov, Klaus Havelund, Marieke Huisman, Rosemary Monahan |
ISoLA (1) | 1 |
| 2016 | Algorithmic verification of procedural programs in the presence of code variability
Siavash Soleimanifard, Dilian Gurov |
Sci. Comput. Program. | 2 |
| 2016 | Provably correct control flow graphs from Java bytecode programs with exceptions
Afshin Amighi, Pedro de Carvalho Gomes, Dilian Gurov, Marieke Huisman |
Int. J. Softw. Tools Technol. Transf. | 3 |
| 2015 | Privacy preserving business process matchingabstractBusiness process matching is the activity of checking whether a given business process can interoperate with another one in a correct manner. In case the check fails, it is desirable to obtain information about how the first process can be corrected with as few modifications as possible to achieve interoperability. In case the two business processes belong to two separate enterprises that want to build a virtual enterprise, business process matching based on revealing the business processes poses a clear threat to privacy, as it may expose sensitive information about the inner operation of the enterprises. In this paper we propose a solution to this problem for business processes described by means of service automata. We propose a measure for similarity between service automata and use this measure to devise an algorithm that constructs the most similar automaton to the first one that can interoperate with the second one. To achieve privacy, we implement this algorithm in the programming language SecreC, executing on the Sharemind platform for secure multiparty computation. As a result, only the correction information is leaked to the first enterprise and no more. Dilian Gurov, Peeter Laud, Roberto Guanciale |
PST | 1 |
| 2015 | Procedure-modular specification and verification of temporal safety properties
Siavash Soleimanifard, Dilian Gurov, Marieke Huisman |
Softw. Syst. Model. | 2 |
| 2014 | Sound Control Flow Graph Extraction from Incomplete Java Bytecode Programs
Pedro de Carvalho Gomes, Attilio Picoco, Dilian Gurov |
FASE | 3 |
| 2014 | Private intersection of regular languagesabstractThis paper addresses the problem of computing the intersection of regular languages in a privacy-preserving fashion. Private set intersection has been addressed earlier in the literature, but for finite sets only. We discuss the various possibilities for solving the problem efficiently, and argue for an approach based on minimal deterministic finite automata (DFA) as a suitable, non-leaking representation of regular language intersection. We propose two different algorithms for DFA minimization in a secure multiparty computation setting, illustrating different aspects of programming based on universal composability and the constraints this sets on existing algorithms. The implementation of our algorithms is based on the programming language SECREC, executing on the SHAREMIND platform for secure multiparty computation. As one application domain we consider fusion of virtual enterprise business processes. Roberto Guanciale, Dilian Gurov, Peeter Laud |
PST | 2 |
| 2013 | Reducing behavioural to structural properties of programs with procedures
Dilian Gurov, Marieke Huisman |
Theor. Comput. Sci. | 1 |
| 2012 | Sound Control-Flow Graph Extraction for Java Programs with Exceptions
Afshin Amighi, Pedro de Carvalho Gomes, Dilian Gurov, Marieke Huisman |
SEFM | 3 |
| 2011 | ProMoVer: Modular Verification of Temporal Safety Properties
Siavash Soleimanifard, Dilian Gurov, Marieke Huisman |
SEFM | 2 |
| 2010 | Procedure-modular verification of control flow safety propertiesabstractThis paper describes a novel technique for fully automated procedure-modular verification of Java programs equipped with method-local and global assertions that specify safety properties of sequences of method invocations. Modularity of verification is achieved by relativizing the correctness of global properties on the local properties rather than on the implementations of methods, and is based on the construction of maximal models. Tool support is provided by means of ProMoVer, a tool that is essentially a wrapper around a previously developed tool set for compositional verification of control flow safety properties, where program data is abstracted away completely. We evaluate the technique on a small but realistic case study. Siavash Soleimanifard, Dilian Gurov, Marieke Huisman |
FTfJP@ECOOP | 2 |
| 2009 | Reducing Behavioural to Structural Properties of Programs with Procedures
Dilian Gurov, Marieke Huisman |
VMCAI | 1 |
| 2008 | Provably Correct Runtime Monitoring
Irem Aktug, Mads Dam, Dilian Gurov |
FM | 3 |
| 2008 | Program Models for Compositional Verification
Marieke Huisman, Irem Aktug, Dilian Gurov |
ICFEM | 3 |
| 2008 | Compositional verification of sequential programs with procedures
Dilian Gurov, Marieke Huisman, Christoph Sprenger 0001 |
Inf. Comput. | 1 |
| 2005 | Interface Abstraction for Compositional VerificationabstractTo support dynamic loading of applications on portable devices, one needs compositional reasoning techniques to ensure that newly loaded applications cannot break the overall security of a device. In earlier work, we developed an algorithmic verification technique for control flow based safety properties of smart card applications, which allows global system properties to be inferred from the properties of the components. Application of the technique requires knowledge of the names of all methods implemented by these components. In a truly compositional setting, however, one only knows the public interface of the new applet and does not have access to any implementation details. To compositionally verify interface properties of applets, one therefore has to combine our verification technique with an abstraction which preserves the interface behaviour and reduces the set of implemented methods to the set of public methods. In this paper, we develop such an abstraction technique: we formally define the notion of interface behaviour, and propose an inlining transformation which we prove to preserve the interface properties expressible in our specification language. In addition, we show on a concrete case study how the reduction in the number of methods resulting from the interface abstraction drastically improves the performance of the computationally most expensive step of the compositional verification technique. Dilian Gurov, Marieke Huisman |
SEFM | 1 |
| 2004 | Checking Absence of Illicit Applet Interactions: A Case Study
Marieke Huisman, Dilian Gurov, Christoph Sprenger 0001, Gennady Chugunov |
FASE | 2 |
| 2004 | Compositional verification for secure loading of smart card appletsabstractWe present an algorithmic compositional verification method for smart card applets and control flow based safety properties expressed in a modal logic with simultaneous greatest fixed points. Our method builds on a technique proposed by Grumberg and Long who use maximal models to reduce compositional verification of finite-state parallel processes to standard model checking. We adapt this technique to applets, a class of infinite-state sequential processes. This requires a refinement of the method, since for a given applet interface and behavioural formula a maximal applet does not always exist. We therefore propose a two-level approach, where local assumptions restrict the control flow structure of applets, while the global guarantee restricts the control flow behaviour of the system. We present a novel maximal model construction for our logic and then adapt it to applets. By separating the tasks of verifying global and local properties our method supports secure post-issuance loading of applets onto a smart card. Christoph Sprenger 0001, Dilian Gurov, Marieke Huisman |
MEMOCODE | 2 |
| 2003 | A verification tool for ERLANG
Lars-Åke Fredlund, Dilian Gurov, Thomas Noll 0001, Mads Dam, Thomas Arts, Gennady Chugunov |
Int. J. Softw. Tools Technol. Transf. | 2 |
| 2002 | Model Checking of Multi-Applet JavaCard Applications
Gennady Chugunov, Lars-Åke Fredlund, Dilian Gurov |
CARDIS | 3 |
| 2002 | Compositional Verification of Secure Applet Interactions
Gilles Barthe, Dilian Gurov, Marieke Huisman |
FASE | 2 |
| 2002 | µ-Calculus with Explicit Points and ApproximationsabstractWe present a Gentzen‐style sequent calculus for program verification which accommodates both model checking‐like verification based on global state space exploration, and compositional reasoning. To handle the complexities arising from the presence of fixed‐point formulas, programs with dynamically evolving architecture, and cut rules we use transition assertions, and introduce fixed‐point approximants explicitly into the assertion language. We address, in a game‐based manner, the semantical basis of this approach, as it applies to the entailment subproblem. Soundness and completeness results are obtained, and examples are shown illustrating some of the concepts. Mads Dam, Dilian Gurov |
J. Log. Comput. | 2 |
| 2001 | Semi-Automated Verification of Erlang CodeabstractErlang is a functional programming language with support for concurrency and message passing communication that is used at Ericsson for developing telecommunication applications. We consider the challenge of verifying temporal properties of systems programmed in Erlang with dynamically evolving process structures. To accomplish this, a rich verification framework for goal-directed, proof system-based verification is used. The paper investigates the problem of semi-automating the verification task by identifying the proof parameters crucial for successful proof search. Lars-Åke Fredlund, Dilian Gurov, Thomas Noll 0001 |
ASE | 2 |
| 2001 | The Erlang Verification Tool
Thomas Noll 0001, Lars-Åke Fredlund, Dilian Gurov |
TACAS | 3 |
| 1998 | System Description: Verification of Distributed Erlang Programs
Thomas Arts, Mads Dam, Lars-Åke Fredlund, Dilian Gurov |
CADE | 4 |