Ronghui Gu
YOU?
Author Swipe
View article: Security Analysis and Formal Verification on Blockchain and its Applications
Security Analysis and Formal Verification on Blockchain and its Applications Open
Blockchains have become an integrated part of our finance infrastructures. Being monetary yet fully automated, blockchains and their applications are unanimously deemed impracticable before undergoing necessary verification. This monograph…
View article: Mostly Automated Verification of Liveness Properties for Distributed Protocols with Ranking Functions
Mostly Automated Verification of Liveness Properties for Distributed Protocols with Ranking Functions Open
Distributed protocols have long been formulated in terms of their safety and liveness properties. Much recent work has focused on automatically verifying the safety properties of distributed protocols, but doing so for liveness properties …
View article: The innovative and accurate detection of heavy metals in foods: A critical review on electrochemical sensors
The innovative and accurate detection of heavy metals in foods: A critical review on electrochemical sensors Open
Food safety has given rise to unprecedented concern worldwide. Heavy metal contamination in foods poses serious threats to food safety and human health due to undemanding bioaccumulation and high toxicity, even at low concentrations. The h…
View article: Giallar: push-button verification for the qiskit Quantum compiler
Giallar: push-button verification for the qiskit Quantum compiler Open
This paper presents Giallar, a fully-automated verification toolkit for quantum compilers. Giallar requires no manual specifications, invariants, or proofs, and can automatically verify that a compiler pass preserves the semantics of quant…
View article: Giallar: Push-Button Verification for the Qiskit Quantum Compiler
Giallar: Push-Button Verification for the Qiskit Quantum Compiler Open
This paper presents Giallar, a fully-automated verification toolkit for quantum compilers. Giallar requires no manual specifications, invariants, or proofs, and can automatically verify that a compiler pass preserves the semantics of quant…
View article: Formal Verification of a Multiprocessor Hypervisor on Arm Relaxed Memory Hardware
Formal Verification of a Multiprocessor Hypervisor on Arm Relaxed Memory Hardware Open
Concurrent systems software is widely-used, complex, and error-prone, posing a significant security risk. We introduce VRM, a new framework that makes it possible for the first time to verify concurrent systems software, such as operating …
View article: Gleipnir: toward practical error analysis for Quantum programs
Gleipnir: toward practical error analysis for Quantum programs Open
Practical error analysis is essential for the design, optimization, and evaluation of Noisy Intermediate-Scale Quantum(NISQ) computing. However, bounding errors in quantum programs is a grand challenge, because the effects of quantum error…
View article: Gleipnir: Toward Practical Error Analysis for Quantum Programs (Extended Version)
Gleipnir: Toward Practical Error Analysis for Quantum Programs (Extended Version) Open
Practical error analysis is essential for the design, optimization, and evaluation of Noisy Intermediate-Scale Quantum(NISQ) computing. However, bounding errors in quantum programs is a grand challenge, because the effects of quantum error…
View article: Artifact for PLDI 2021 Paper Gleipnir: Toward Practical Error Analysis for Quantum Programs
Artifact for PLDI 2021 Paper Gleipnir: Toward Practical Error Analysis for Quantum Programs Open
Artifact for PLDI 2021 Paper Gleipnir: Toward Practical Error Analysis for Quantum Programs The artifact contains the docker image file needed to reproduce the results presented in the paper.
View article: SciviK: A Versatile Framework for Specifying and Verifying Smart Contracts
SciviK: A Versatile Framework for Specifying and Verifying Smart Contracts Open
The growing adoption of smart contracts on blockchains poses new security risks that can lead to significant monetary loss, while existing approaches either provide no (or partial) security guarantees for smart contracts or require huge pr…
View article: Learning nonlinear loop invariants with gated continuous logic networks
Learning nonlinear loop invariants with gated continuous logic networks Open
Verifying real-world programs often requires inferring loop invariants with nonlinear constraints. This is especially true in programs that perform many numerical operations, such as control systems for avionics or industrial plants. Recen…
View article: Virtual timeline: a formal abstraction for verifying preemptive schedulers with temporal isolation
Virtual timeline: a formal abstraction for verifying preemptive schedulers with temporal isolation Open
The reliability and security of safety-critical real-time systems are of utmost importance because the failure of these systems could incur severe consequences (e.g., loss of lives or failure of a mission). Such properties require strong i…
View article: Scaling symbolic evaluation for automated verification of systems code with Serval
Scaling symbolic evaluation for automated verification of systems code with Serval Open
This paper presents Serval, a framework for developing automated verifiers for systems software. Serval provides an extensible infrastructure for creating verifiers by lifting interpreters under symbolic evaluation, and a systematic approa…
View article: CLN2INV: Learning Loop Invariants with Continuous Logic Networks
CLN2INV: Learning Loop Invariants with Continuous Logic Networks Open
Program verification offers a framework for ensuring program correctness and therefore systematically eliminating different classes of bugs. Inferring loop invariants is one of the main challenges behind automated verification of real-worl…
View article: Building certified concurrent OS kernels
Building certified concurrent OS kernels Open
Operating system (OS) kernels form the backbone of system software. They can have a significant impact on the resilience and security of today's computers. Recent efforts have demonstrated the feasibility of formally verifying simple gener…
View article: CertiQ: A Mostly-automated Verification of a Realistic Quantum Compiler
CertiQ: A Mostly-automated Verification of a Realistic Quantum Compiler Open
We present CertiQ, a verification framework for writing and verifying compiler passes of Qiskit, the most widely-used quantum compiler. To our knowledge, CertiQ is the first effort enabling the verification of real-world quantum compiler p…
View article: Certified concurrent abstraction layers
Certified concurrent abstraction layers Open
Concurrent abstraction layers are ubiquitous in modern computer systems because of the pervasiveness of multithreaded programming and multicore hardware. Abstraction layers are used to hide the implementation details (e.g., fine-grained sy…
View article: Certified concurrent abstraction layers
Certified concurrent abstraction layers Open
Concurrent abstraction layers are ubiquitous in modern computer systems because of the pervasiveness of multithreaded programming and multicore hardware. Abstraction layers are used to hide the implementation details (e.g., fine-grained sy…
View article: Partial Order Aware Concurrency Sampling
Partial Order Aware Concurrency Sampling Open
We present POS, a concurrency testing approach that samples the partial order of concurrent programs. POS uses a novel priority-based scheduling algorithm that dynamically reassigns priorities regarding the partial order information and fo…
View article: End-to-end verification of information-flow security for C and assembly programs
End-to-end verification of information-flow security for C and assembly programs Open
Protecting the confidentiality of information manipulated by a computing system is one of the most important challenges facing today's cybersecurity community. A promising step toward conquering this challenge is to formally verify that th…
View article: Toward compositional verification of interruptible OS kernels and device drivers
Toward compositional verification of interruptible OS kernels and device drivers Open
An operating system (OS) kernel forms the lowest level of any system software stack. The correctness of the OS kernel is the basis for the correctness of the entire system. Recent efforts have demonstrated the feasibility of building forma…