EDBT 2026 Demo / reviewers in the wild / expert
Aquinas Hobor
dblp:26/3410
· DBLP profile ↗
30ranked-venue papers
6as first author
4since 2021 · last 2025
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 22 · 6 first-author · 1 since 2021Theory of computation · 7 · 2 since 2021Security and privacy · 6 · 2 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Robust overlays meet blockchains: On handling high churn and catastrophic failures
Vijeth Aradhya, Seth Gilbert, Aquinas Hobor |
Theor. Comput. Sci. | 3 |
| 2023 | Robust Overlays Meet Blockchains - On Handling High Churn and Catastrophic Failures
Vijeth Aradhya, Seth Gilbert, Aquinas Hobor |
SSS | 3 |
| 2023 | Smart Learning to Find Dumb Contracts
Tamer Abdelaziz, Aquinas Hobor |
USENIX Security Symposium | 2 |
| 2021 | Functional Correctness of C Implementations of Dijkstra's, Kruskal's, and Prim's AlgorithmsabstractAbstract We develop machine-checked verifications of the full functional correctness of C implementations of the eponymous graph algorithms of Dijkstra, Kruskal, and Prim. We extend Wang et al.’s CertiGraph platform to reason about labels on edges, undirected graphs, and common spatial representations of edge-labeled graphs such as adjacency matrices and edge lists. We certify binary heaps, including Floyd’s bottom-up heap construction, heapsort, and increase/decrease priority. Our verifications uncover subtle overflows implicit in standard textbook code, including a nontrivial bound on edge weights necessary to execute Dijkstra’s algorithm; we show that the intuitive guess fails and provide a workable refinement. We observe that the common notion that Prim’s algorithm requires a connected graph is wrong: we verify that a standard textbook implementation of Prim’s algorithm can compute minimum spanning forests without finding components first. Our verification of Kruskal’s algorithm reasons about two graphs simultaneously: the undirected graph undergoing MSF construction, and the directed graph representing the forest inside union-find. Our binary heap verification exposes precise bounds for the heap to operate correctly, avoids a subtle overflow error, and shows how to recycle keys to avoid overflow. Anshuman Mohan, Wei Xiang Leow, Aquinas Hobor |
CAV (2) | 3 |
| 2020 | Reasoning over Permissions Regions in Concurrent Separation LogicabstractWe propose an extension of separation logic with fractional permissions, aimed at reasoning about concurrent programs that share arbitrary regions or data structures in memory. In existing formalisms, such reasoning typically either fails or is subject to stringent side conditions on formulas (notably precision ) that significantly impair automation. We suggest two formal syntactic additions that collectively remove the need for such side conditions: first, the use of both “weak” and “strong” forms of separating conjunction, and second, the use of nominal labels from hybrid logic. We contend that our suggested alterations bring formal reasoning with fractional permissions in separation logic considerably closer to common pen-and-paper intuition, while imposing only a modest bureaucratic overhead. James Brotherston, Diana Costa 0001, Aquinas Hobor, John Wickerson |
CAV (2) | 3 |
| 2020 | A functional proof pearl: inverting the Ackermann hierarchyabstractWe implement in Gallina a hierarchy of functions that calculate the upper inverses to the hyperoperation/Ackermann hierarchy. Our functions run in Θ(b) for inputs expressed in unary, and in O(b2) for inputs expressed in binary (where b = bitlength). We use our inverses to define linear-time functions—Θ(b) for both unary-represented and binary-represented inputs—that compute the upper inverse of the diagonal Ackermann function A(n). We show that these functions are consistent with the usual definition of the inverse Ackermann function α(n). Anshuman Mohan, Aquinas Hobor |
CPP | 3 |
| 2020 | BesFS: A POSIX Filesystem for Enclaves with a Mechanized Safety Proof
Shweta Shinde, Pinghai Yuan, Aquinas Hobor, Abhik Roychoudhury, Prateek Saxena |
USENIX Security Symposium | 4 |
| 2019 | Pumping, with or Without Choice
Aquinas Hobor, Elaine Li, Frank Stephan 0001 |
APLAS | 1 |
| 2019 | Exploiting the laws of order in smart contractsabstractWe investigate a family of bugs in blockchain-based smart contracts, which we dub event-ordering (or EO) bugs. These bugs are intimately related to the dynamic ordering of contract events, i.e. calls of its functions, and enable potential exploits of millions of USD worth of crypto-coins. Previous techniques to detect EO bugs have been restricted to those bugs that involve just one or two event orderings. Our work provides a new formulation of the general class of EO bugs arising in long permutations of such events by using techniques from concurrent program analysis. The technical challenge in detecting EO bugs in blockchain contracts is the inherent combinatorial blowup in path and state space analysis, even for simple contracts. We propose the first use of partial-order reduction techniques, using automatically extracted happens-before relations along with several dynamic symbolic execution optimizations. We build EthRacer, an automatic analysis tool that runs directly on Ethereum bytecode and requires no hints from users. It flags 8% of over 10, 000 contracts analyzed, providing compact event traces (witnesses) that human analysts can examine in only a few minutes per contract. More than half of the flagged contracts are likely to have unintended behaviour. Aashish Kolluri, Ivica Nikolic, Ilya Sergey, Aquinas Hobor, Prateek Saxena |
ISSTA | 4 |
| 2019 | Certifying graph-manipulating C programs via localizations within data structuresabstractWe develop powerful and general techniques to mechanically verify realistic programs that manipulate heap-represented graphs. These graphs can exhibit well-known organization principles, such as being a directed acyclic graph or a disjoint-forest; alternatively, these graphs can be totally unstructured. The common thread for such structures is that they exhibit deep intrinsic sharing and can be expressed using the language of graph theory. We construct a modular and general setup for reasoning about abstract mathematical graphs and use separation logic to define how such abstract graphs are represented concretely in the heap. We develop a Localize rule that enables modular reasoning about such programs, and show how this rule can support existential quantifiers in postconditions and smoothly handle modified program variables. We demonstrate the generality and power of our techniques by integrating them into the Verified Software Toolchain and certifying the correctness of seven graph-manipulating programs written in CompCert C, including a 400-line generational garbage collector for the CertiCoq project. While doing so, we identify two places where the semantics of C is too weak to define generational garbage collectors of the sort used in the OCaml runtime. Our proofs are entirely machine-checked in Coq. Qinxiang Cao, Anshuman Mohan, Aquinas Hobor |
Proc. ACM Program. Lang. | 4 |
| 2018 | Finding The Greedy, Prodigal, and Suicidal Contracts at ScaleabstractSmart contracts---stateful executable objects hosted on blockchains like Ethereum---carry billions of dollars worth of coins and cannot be updated once deployed. We present a new systematic characterization of a class of trace vulnerabilities, which result from analyzing multiple invocations of a contract over its lifetime. We focus attention on three example properties of such trace vulnerabilities: finding contracts that either lock funds indefinitely, leak them carelessly to arbitrary users, or can be killed by anyone. We implemented Maian, the first tool for specifying and reasoning about trace properties, which employs interprocedural symbolic analysis and concrete validator for exhibiting real exploits. Our analysis of nearly one million contracts flags 34, 200 (2, 365 distinct) contracts vulnerable, in 10 seconds per contract. On a subset of 3, 759 contracts which we sampled for concrete validation and manual analysis, we reproduce real exploits at a true positive rate of 89%, yielding exploits for 3, 686 contracts. Our tool finds exploits for the infamous Parity bug that indirectly locked $200 million US worth in Ether, which previous analyses failed to capture. Ivica Nikolic, Aashish Kolluri, Ilya Sergey, Prateek Saxena, Aquinas Hobor |
ACSAC | 5 |
| 2018 | Complexity Analysis of Tree Share Structure
Xuan Bach Le, Aquinas Hobor, Anthony Widjaja Lin |
APLAS | 2 |
| 2018 | Logical Reasoning for Disjoint PermissionsabstractResource sharing is a fundamental phenomenon in concurrent programming where several threads have permissions to access a common resource. Logics for verification need to capture the notion of permission ownership and transfer. One typical practice is the use of rational numbers in (0, 1] as permissions in which 1 is the full permission and the rest are fractional permissions. Rational permissions are not a good fit for separation logic because they remove the essential “disjointness” feature of the logic itself. We propose a general logic framework that supports permission reasoning in separation logic while preserving disjointness. Our framework is applicable to sophisticated verification tasks such as doing induction over the finiteness of the heap within the object logic or carrying out biabductive inference. We can also prove precision of recursive predicates within the object logic. We developed the ShareInfer tool to benchmark our techniques. We introduce “scaling separation algebras,” a compositional extension of separation algebras, to model our logic, and use them to construct a concrete model. Xuan Bach Le, Aquinas Hobor |
ESOP | 2 |
| 2018 | Temporal Properties of Smart Contracts
Ilya Sergey, Amrit Kumar 0001, Aquinas Hobor |
ISoLA (4) | 3 |
| 2017 | A Certified Decision Procedure for Tree Shares
Xuan Bach Le, Thanh-Toan Nguyen, Wei-Ngan Chin, Aquinas Hobor |
ICFEM | 4 |
| 2016 | Verifying Concurrent Graph Algorithms
Azalea Raad, Aquinas Hobor, Jules Villard, Philippa Gardner |
APLAS | 2 |
| 2016 | Making Smart Contracts SmarterabstractCryptocurrencies record transactions in a decentralized data structure called a blockchain. Two of the most popular cryptocurrencies, Bitcoin and Ethereum, support the feature to encode rules or scripts for processing transactions. This feature has evolved to give practical shape to the ideas of smart contracts, or full-fledged programs that are run on blockchains. Recently, Ethereum's smart contract system has seen steady adoption, supporting tens of thousands of contracts, holding millions dollars worth of virtual coins. Loi Luu, Duc-Hiep Chu, Hrishi Olickel, Prateek Saxena, Aquinas Hobor |
CCS | 5 |
| 2016 | Decidability and Complexity of Tree Share FormulasabstractFractional share models are used to reason about how multiple actors share ownership of resources. We examine the decidability and complexity of reasoning over the "tree share" model of Dockins et al. using first-order logic, or fragments thereof. We pinpoint a connection between the basic operations on trees union, intersection, and complement and countable atomless Boolean algebras, allowing us to obtain decidability with the precise complexity of both first-order and existential theories over the tree share model with the aforementioned operations. We establish a connection between the multiplication operation on trees and the theory of word equations, allowing us to derive the decidability of its existential theory and the undecidability of its full first-order theory. We prove that the full first-order theory over the model with both the Boolean operations and the restricted multiplication operation (with constants on the right hand side) is decidable via an embedding to tree-automatic structures. Xuan Bach Le, Aquinas Hobor, Anthony Widjaja Lin |
FSTTCS | 2 |
| 2015 | On Power Splitting Games in Distributed Computation: The Case of Bitcoin Pooled MiningabstractSeveral new services incentivize clients to compete in solving large computation tasks in exchange for financial rewards. This model of competitive distributed computation enables every user connected to the Internet to participate in a game in which he splits his computational power among a set of competing pools -- the game is called a computational power splitting game. We formally model this game and show its utility in analyzing the security of pool protocols that dictate how financial rewards are shared among the members of a pool. As a case study, we analyze the Bitcoin crypto currency which attracts computing power roughly equivalent to billions of desktop machines, over 70% of which is organized into public pools. We show that existing pool reward sharing protocols are insecure in our game-theoretic analysis under an attack strategy called the "block withholding attack". This attack is a topic of debate, initially thought to be ill-incentivized in today's pool protocols: i.e., causing a net loss to the attacker, and later argued to be always profitable. Our analysis shows that the attack is always well-incentivized in the long-run, but may not be so for a short duration. This implies that existing pool protocols are insecure, and if the attack is conducted systematically, Bitcoin pools could lose millions of dollars worth in months. The equilibrium state is a mixed strategy -- that is -- in equilibrium all clients are incentivized to probabilistically attack to maximize their payoffs rather than participate honestly. As a result, the Bitcoin network is incentivized to waste a part of its resources simply to compete. Loi Luu, Ratul Saha, Inian Parameshwaran, Prateek Saxena, Aquinas Hobor |
CSF | 5 |
| 2015 | Certified Reasoning with Infinity
Asankhaya Sharma, Andreea Costea, Aquinas Hobor, Wei-Ngan Chin |
FM | 4 |
| 2015 | Specifying Compatible Sharing in Data Structures
Asankhaya Sharma, Aquinas Hobor, Wei-Ngan Chin |
ICFEM | 2 |
| 2014 | A Resource-Based Logic for Termination and Non-termination Proofs
Ton Chanh Le, Cristian Gherghina, Aquinas Hobor, Wei-Ngan Chin |
ICFEM | 3 |
| 2013 | The ramifications of sharing in data structuresabstractPrograms manipulating mutable data structures with intrinsic sharing present a challenge for modular verification. Deep aliasing inside data structures dramatically complicates reasoning in isolation over parts of these objects because changes to one part of the structure (say, the left child of a dag node) can affect other parts (the right child or some of its descendants) that may point into it. The result is that finding intuitive and compositional proofs of correctness is usually a struggle. We propose a compositional proof system that enables local reasoning in the presence of sharing. Aquinas Hobor, Jules Villard |
POPL | 1 |
| 2012 | Decision Procedures over Sophisticated Fractional Permissions
Xuan Bach Le, Cristian Gherghina, Aquinas Hobor |
APLAS | 3 |
| 2011 | Teaching Experience: Logic and Formal Methods with Coq
Martin Henz, Aquinas Hobor |
CPP | 2 |
| 2011 | Barriers in Concurrent Separation Logic
Aquinas Hobor, Cristian Gherghina |
ESOP | 1 |
| 2010 | A Logical Mix of Approximation and Separation
Aquinas Hobor, Robert Dockins, Andrew W. Appel |
APLAS | 1 |
| 2010 | A theory of indirection via approximationabstractBuilding semantic models that account for various kinds of indirect reference has traditionally been a difficult problem. Indirect reference can appear in many guises, such as heap pointers, higher-order functions, object references, and shared-memory mutexes. Aquinas Hobor, Robert Dockins, Andrew W. Appel |
POPL | 1 |
| 2009 | A Fresh Look at Separation Algebras and Share Accounting
Robert Dockins, Aquinas Hobor, Andrew W. Appel |
APLAS | 2 |
| 2008 | Oracle Semantics for Concurrent Separation Logic
Aquinas Hobor, Andrew W. Appel, Francesco Zappa Nardelli |
ESOP | 1 |