activity
20062026
most citedEffectiveSan: Type and Memory Error Detection using Dynamically Typed C/C++

51 citations · 80 across the 12 of their papers we have counts for

collaborators
Showing cs.PLShow all

9 papers · 1 filter

cs.PL2026

When is LLM-Based Program Reasoning Correct? A Completion Semantics for LLM-Based Code Inference

Zhiyuan Liu, Yihe Li, Trevor E. Carlson +3

Due to token and cognitive limits, Large Language Models (LLMs) typically perform program reasoning over incomplete code fragments/prompts rather than complete programs. Such reaso…

cs.PL2026★ 1 cited

Persistent Iterators with Value Semantics

Yihe Li, Gregory J. Duck

Iterators are a fundamental programming abstraction for traversing and modifying elements in containers in mainstream imperative languages such as C++. Iterators provide a uniform…

cs.PL2025★ 10 cited

Large Language Model Powered Symbolic Execution

Yihe Li, Ruijie Meng, Gregory J. Duck

Large Language Models (LLMs) have emerged as a promising alternative to traditional static program analysis methods, such as symbolic execution, offering the ability to reason over…

cs.PL2018

Shape Neutral Analysis of Graph-based Data-structures

Gregory J. Duck, Joxan Jaffar, Roland H. C. Yap

Malformed data-structures can lead to runtime errors such as arbitrary memory access or corruption. Despite this, reasoning over data-structure properties for low-level heap manipu…

cs.PL2018★ 3 cited

An Extended Low Fat Allocator API and Applications

Gregory J. Duck, Roland H. C. Yap

The primary function of memory allocators is to allocate and deallocate chunks of memory primarily through the malloc API. Many memory allocators also implement other API extension…

cs.PL2017★ 51 cited

EffectiveSan: Type and Memory Error Detection using Dynamically Typed C/C++

Gregory J. Duck, Roland H. C. Yap

Low-level programming languages with weak/static type systems, such as C and C++, are vulnerable to errors relating to the misuse of memory at runtime, such as (sub-)object bounds…