Tag
A USENIX Security 2020 paper presenting Datalog Disassembly, a rule-based approach that recovers function boundaries and calls in stripped binaries by leveraging contextual, code-based features encoded as Datalog facts, outperforming prior disassembly heuristics.
The author developed a Datalog-based memory system for LLMs to maintain accurate state during investigations like vulnerability research, automatically updating conclusions when facts change.
This paper presents the first application of program embeddings from LLMCompiler, an LLM pretrained on IR code, to program analysis and optimization tasks, achieving a 1.54% error rate in algorithm classification and competitive accuracy on heterogeneous device mapping.
The Harness Handbook is a behavior-centric representation synthesized from agent harness codebases using static program analysis and LLM assistance, helping developers and coding agents locate code implementing specific behaviors. It introduces Behavior-Guided Progressive Disclosure (BGPD) to guide agents from high-level descriptions to relevant implementation details, improving localization accuracy and edit-plan quality.
TokenScope is an interactive interpretability tool for decoder-only large language models that provides token-level metrics, attention patterns, and counterfactual branching during code generation, enabling systematic investigation of model behavior.
Comprehensive notes on Datalog: what it is, how to implement it in various languages, and its applications in program analysis, with code examples and resources.
This paper introduces Constrained Diffusion for Code (CDC), a training-free neurosymbolic inference framework that integrates constraint satisfaction directly into the reverse denoising process of discrete diffusion models for code generation. CDC consistently improves constraint satisfaction in functional correctness, security, and syntax across benchmarks, outperforming existing diffusion and autoregressive baselines.
LaMR introduces a structured pruning framework for coding agents that decomposes code relevance into semantic evidence and dependency support dimensions, using dedicated CRFs and a mixture-of-experts gate to reduce token usage by up to 31% while maintaining or improving task performance.
The article explains why Tree-sitter is unsuitable for deep program analysis, highlighting how it discards critical tokens like operators and keywords. It advocates for using the Cubix framework as a more robust alternative for building semantic analysis and refactoring tools.
Practitioner Rory Sawyer reflects on a decade of applying program analysis to bridge the gap between code and human intent, emphasizing static analysis as a communication tool for correctness beyond execution.