Hiromi Ogawa

dblp:32/734 · DBLP profile ↗
← Back
1ranked-venue papers
1as first author
1since 2021 · last 2025
0009-0007-0372-4863ORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 1 · 1 first-author · 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
1 paper
Program verification · 56% Programming languages and type systems · 44%

Topics — the 5 heaviest of 5, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program verification
automated verification
0.912025
Thrust: A Prophecy-Based Refinement Type System for Rust · Proc. ACM Program. Lang. 2025
Program verification › constraint-based verification
constrained horn clauses
0.912025
Thrust: A Prophecy-Based Refinement Type System for Rust · Proc. ACM Program. Lang. 2025
Programming languages and type systems › type systems
refinement types
0.912025
Thrust: A Prophecy-Based Refinement Type System for Rust · Proc. ACM Program. Lang. 2025
Programming languages and type systems › type systems › ownership types
borrow checking
0.312025
Thrust: A Prophecy-Based Refinement Type System for Rust · Proc. ACM Program. Lang. 2025
Programming languages and type systems
rust
0.312025
Thrust: A Prophecy-Based Refinement Type System for Rust · Proc. ACM Program. Lang. 2025

Methods — techniques the papers use, named apart from their topics

refinement type inference · 0.9prophecy variables · 0.9constrained horn clause solvers · 0.9
YearPublicationVenuePosition
2025 Thrust: A Prophecy-Based Refinement Type System for Rust
abstract
We introduce Thrust , a new verification tool for ensuring functional correctness in Rust , distinguished by its strengths in automated verification, including the synthesis of inductive invariants for loops and recursive functions. Thrust is built on a novel dependent refinement type system for Rust and refinement type inference techniques based on Constrained Horn Clause (CHC) solvers. Leveraging advantages of the type system, Thrust also supports semi-automated verification utilizing user type annotations to complement CHC solvers in cases where automatic constraint solving is unsuccessful, as well as modular verification at the function and subexpression levels. Thrust also achieves precise verification, especially for programs involving pointer aliasing and borrowing, without sacrificing the benefits of automated verification, by incorporating the notion of prophecy into the refinement type system: it not only enables strong updates by leveraging the “aliasing XOR mutability” guarantee provided by Rust ’s type system, but also achieves propagation of update information to the original owner upon mutable borrow release through the use of a prophecy variable. Incorporating prophecy into a refinement type system is itself challenging and requires certain tricks, as discussed in this paper, making a theoretical contribution and paving the way for further research into prophecy-based refinement type systems. While our type system addresses the challenge, we keep it simple for extensibility, specifically by delegating the guarantee of “aliasing XOR mutability,” and, more technically, the “well-borrowedness” of the program in the sense of the stacked borrows aliasing model, to Rust ’s type system, allowing us to focus on reasoning about functional correctness and propagating update information through prophecy variables. Compared to RustHorn , another automated verification tool based on prophecy, our approach leverages the strengths of refinement types to support modular verification, higher-order functions, and refinement of data stored in algebraic data structures. We implemented Thrust , a refinement type inference tool as a plugin for the Rust compiler, and evaluated it using RustHorn benchmarks, as well as additional new benchmarks, including those that are beyond the capabilities of RustHorn and other semi-automated verification tools, obtaining promising results.
Hiromi Ogawa, Taro Sekiyama, Hiroshi Unno 0001
Proc. ACM Program. Lang.1