Emmanuel Anaya Gonzalez

dblp:378/1622 · DBLP profile ↗
← Back
4ranked-venue papers
2as first author
4since 2021 · last 2025
0009-0002-9013-2228ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Artificial intelligence and machine learning · 2 · 1 first-author · 2 since 2021Software engineering, systems software and programming languages · 1 · 1 since 2021Human-computer interaction and ubiquitous computing · 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
2 papers
Program verification · 52% Software testing · 26% Program synthesis and code generation · 22%
Artificial intelligence
2 papers
Language models and text generation · 56% Probabilistic and Bayesian machine learning · 44%

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

TopicWeightPapersLastEvidence papers
Natural language and speech › Language models and text generation › decoding
constrained decoding
0.912025
Constrained Sampling for Language Models Should Be Easy: An MCMC Perspective · NeurIPS 2025
Machine learning › Probabilistic and Bayesian machine learning › sampling
constrained sampling
0.912025
Constrained Sampling for Language Models Should Be Easy: An MCMC Perspective · NeurIPS 2025
Software testing › test oracle › test oracle generation
assertion generation
0.912025
Laurel: Unblocking Automated Verification with Large Language Models · Proc. ACM Program. Lang. 2025
Program verification › proof assistants
proof engineering
0.912025
Laurel: Unblocking Automated Verification with Large Language Models · Proc. ACM Program. Lang. 2025
Program verification
SMT-based verification
0.912025
Laurel: Unblocking Automated Verification with Large Language Models · Proc. ACM Program. Lang. 2025
Program synthesis and code generation › neural program synthesis
LLM-based program synthesis
0.812024
HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesis · NeurIPS 2024
Natural language and speech › Language models and text generation
large language model
0.212024
HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesis · NeurIPS 2024

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

large language model · 2.4context-free surrogate model · 1.5combinatorial search · 1.5proof similarity metric · 0.9metropolis-hastings · 0.9markov chain monte carlo · 0.9domain-specific prompting · 0.9
YearPublicationVenuePosition
2025 Constrained Sampling for Language Models Should Be Easy: An MCMC Perspective
abstract
Constrained decoding enables Language Models (LMs) to produce samples that provably satisfy hard constraints. However, existing constrained-decoding approaches often distort the underlying model distribution, a limitation that is especially problematic in applications like program fuzzing, where one wants to generate diverse and valid program inputs for testing purposes. We propose a new constrained sampling framework based on Markov Chain Monte Carlo (MCMC) that simultaneously satisfies three core desiderata: constraint satisfying (every sample satisfies the constraint), monotonically converging (the sampling process converges to the true conditional distribution), and efficient (high-quality samples emerge in few steps). Our method constructs a proposal distribution over valid outputs and applies a Metropolis-Hastings acceptance criterion based on the LM’s likelihood, ensuring principled and efficient exploration of the constrained space. Empirically, our sampler outperforms existing methods on both synthetic benchmarks and real-world program fuzzing tasks.
Emmanuel Anaya Gonzalez, Sairam Vaidya, Kanghee Park, Ruyi Ji, Taylor Berg-Kirkpatrick, Loris D'Antoni
NeurIPS1
2025 HiLDE: Intentional Code Generation via Human-in-the-Loop Decoding
abstract
While AI programming tools hold the promise of increasing programmers’ capabilities and productivity to a remarkable degree, they often exclude users from essential decisionmaking processes, causing many to effectively “turn off their brains” and over-rely on solutions provided by these systems. These behaviors can have severe consequences in critical domains, like software security. We propose Human-in-the-Loop Decoding, a novel interaction technique that allows users to observe and directly influence LLM decisions during code generation, in order to align the model’s output with their personal requirements. We implement this technique in HiLDE, a code completion assistant that highlights critical decisions made by the LLM and provides local alternatives for the user to explore. In a within-subjects study ($\mathrm{N}=18$) on security-related tasks, we found that HiLDE led participants to generate significantly fewer vulnerabilities and better align code generation with their goals compared to a traditional code completion assistant.
Emmanuel Anaya Gonzalez, Raven Rothkopf, Sorin Lerner, Nadia Polikarpova
VL/HCC1
2025 Laurel: Unblocking Automated Verification with Large Language Models
abstract
Program verifiers such as Dafny automate proofs by outsourcing them to an SMT solver. This automation is not perfect, however, and the solver often requires hints in the form of assertions, creating a burden for the proof engineer. In this paper, we propose Laurel, a tool that alleviates this burden by automatically generating assertions using large language models (LLMs). To improve the success rate of LLMs in this task, we design two domain-specific prompting techniques. First, we help the LLM determine the location of the missing assertion by analyzing the verifier’s error message and inserting an assertion placeholder at that location. Second, we provide the LLM with example assertions from the same codebase, which we select based on a new proof similarity metric. We evaluate our techniques on our new benchmark DafnyGym , a dataset of complex lemmas we extracted from three real-world Dafny codebases. Our evaluation shows that Laurel is able to generate over 56.6 % of the required assertions given only a few attempts, making LLMs an affordable tool for unblocking program verifiers without human intervention.
Eric Mugnier, Emmanuel Anaya Gonzalez, Nadia Polikarpova, Ranjit Jhala, Yuanyuan Zhou 0001
Proc. ACM Program. Lang.2
2024 HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesis
abstract
Many structured prediction and reasoning tasks can be framed as program synthesis problems, where the goal is to generate a program in a \emph{domain-specific language} (DSL) that transforms input data into the desired output. Unfortunately, purely neural approaches, such as large language models (LLMs), often fail to produce fully correct programs in unfamiliar DSLs, while purely symbolic methods based on combinatorial search scale poorly to complex problems. Motivated by these limitations, we introduce a hybrid approach, where LLM completions for a given task are used to learn a task-specific, context-free surrogate model, which is then used to guide program synthesis. We evaluate this hybrid approach on three domains, and show that it outperforms both unguided search and direct sampling from LLMs, as well as existing program synthesizers.
Shraddha Barke, Emmanuel Anaya Gonzalez, Saketh Ram Kasibatla, Taylor Berg-Kirkpatrick, Nadia Polikarpova
NeurIPS2