7 papers
Generics-Aware Fuzz Target Generation for Rust Libraries via Structured API Analysis
Yiming Chen, Kaiwen Zhang, Guanjun Liu +2
Fuzzing Rust library APIs requires constructing well-typed, compilable call sequences that satisfy ownership rules, generic parameters, and trait bounds; existing tools ignore thes…
From Resource Flow to Executable Tests: Petri-Net-Guided LLM Test Generation for Concurrent Stateful Rust APIs
Kaiwen Zhang, Guanjun Liu
Concurrent stateful library APIs expose behavior through evolving resource ownership, lifecycle states, and competing interleavings. Large language models can synthesize executable…
CIR+CVN: Bridging LLM Semantic Understanding and Petri-Net Verification for Concurrent Programs
Kaiwen Zhang, Guanjun Liu
Recovering concurrency structure directly from source code is difficult because shared-resource identity and protection relations are often obscured by aliasing, ownership, and API…
A Synthesis Method of Safe Rust Code Based on Pushdown Colored Petri Nets
Kaiwen Zhang, Guanjun Liu
Safe Rust guarantees memory safety through strict compile-time constraints: ownership can be transferred, borrowing can temporarily guarantee either shared read-only or exclusive w…
Deep Learning Based Concurrency Bug Detection and Localization
Zuocheng Feng, Kaiwen Zhang, Miaomiao Wang +4
Concurrency bugs, caused by improper synchronization of shared resources in multi-threaded or distributed systems, are notoriously hard to detect and thus compromise software relia…
Two Birds One Stone: Effective Static Detection of Resource and Communication Deadlocks in Rust Programs
Yu Zhang, Kaiwen Zhang, Guanjun Liu +2
Although Rust claims to enable fearless concurrency, concurrency errors remain prevalent in practical applications, with deadlocks particularly prominent and harmful. Current stati…
Petri Nets-based Methods on Automatically Detecting for Concurrency Bugs in Rust Programs
Kaiwen Zhang, Guanjun Liu
Rust's memory safety guarantees, notably ownership and lifetime systems, have driven its widespread adoption. Concurrency bugs still occur in Rust programs, and existing detection…