Qihao Lian

dblp:400/8031 · DBLP profile ↗
← Back
1ranked-venue papers
1as first author
1since 2021 · last 2025
0009-0000-8969-2805ORCID · 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 analysis · 70% Programming languages and type systems · 23% Program verification · 7%

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

TopicWeightPapersLastEvidence papers
Program analysis › resource analysis › amortized analysis
automatic amortized resource analysis
0.912025
Automatic Linear Resource Bound Analysis for Rust via Prophecy Potentials · Proc. ACM Program. Lang. 2025
Programming languages and type systems › type systems › ownership types
borrow checking
0.912025
Automatic Linear Resource Bound Analysis for Rust via Prophecy Potentials · Proc. ACM Program. Lang. 2025
Program analysis › resource analysis
resource bound analysis
0.912025
Automatic Linear Resource Bound Analysis for Rust via Prophecy Potentials · Proc. ACM Program. Lang. 2025
Program analysis
type-based analysis
0.912025
Automatic Linear Resource Bound Analysis for Rust via Prophecy Potentials · Proc. ACM Program. Lang. 2025
Program verification › formal proof
soundness proof
0.312025
Automatic Linear Resource Bound Analysis for Rust via Prophecy Potentials · Proc. ACM Program. Lang. 2025

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

type system design · 0.9operational semantics · 0.9automatic amortized resource analysis · 0.9
YearPublicationVenuePosition
2025 Automatic Linear Resource Bound Analysis for Rust via Prophecy Potentials
abstract
Rust has become a popular system programming language that strikes a balance between memory safety and performance. Rust’s type system ensures the safety of low-level memory controls; however, a well-typed Rust program is not guaranteed to enjoy high performance. This article studies static analysis for resource consumption of Rust programs, aiming at understanding the performance of Rust programs. Although there have been tons of studies on static resource analysis, exploiting Rust’s memory safety—especially the borrow mechanisms and their properties—to aid resource-bound analysis, remains unexplored. This article presents RaRust , a type-based linear resource-bound analysis for well-typed Rust programs. RaRust follows the methodology of automatic amortized resource analysis (AARA) to build a resource-aware type system. To support Rust’s borrow mechanisms, including shared and mutable borrows, RaRust introduces shared and novel prophecy potentials to reason about borrows compositionally. To prove the soundness of RaRust , this article proposes Resource-Aware Borrow Calculus (RABC) as a variant of recently proposed Low-Level Borrow Calculus (LLBC). The experimental evaluation of a prototype implementation of RaRust demonstrates that RaRust is capable of inferring symbolic linear resource bounds for Rust programs featuring shared and mutable borrows, reborrows, heap-allocated data structures, loops, and recursion.
Qihao Lian, Di Wang 0017
Proc. ACM Program. Lang.1