La Simulación de Ejecución Automática Mejora los Modelos de Codificación
Self-Execution Simulation Improves Coding Models
March 11, 2026
Autores: Gallil Maimon, Ori Yoran, Felix Kreuk, Michael Hassid, Gal Cohen, Pierre Chambon, Yossi Adi
cs.AI
Resumen
Una dirección de investigación prometedora para permitir que los LLM generen código consistentemente correcto implica abordar su incapacidad para estimar adecuadamente la ejecución de programas, particularmente para el código que ellos mismos generan. En este trabajo, demostramos que los Code LLM pueden ser entrenados para simular la ejecución de programas de manera paso a paso, y que esta capacidad puede aprovecharse para mejorar el rendimiento en programación competitiva. Nuestro enfoque combina el ajuste fino supervisado en trazas de ejecución en lenguaje natural —explicaciones textuales basadas en la ejecución real— con el aprendizaje por refuerzo utilizando recompensas verificables. Introducimos dos objetivos complementarios: la predicción de la salida dado un código y sus entradas, y la resolución de tareas de programación competitiva utilizando retroalimentación de ejecución ya sea de referencia o auto-predicha. Estos objetivos permiten a los modelos realizar autoverificación sobre múltiples soluciones candidatas y auto-corrección iterativa mediante la simulación de pruebas de ejecución. En múltiples benchmarks de programación competitiva, nuestro método produce mejoras consistentes respecto a los enfoques de razonamiento estándar. Además, presentamos ablaciones y análisis para elucidar el papel de la simulación de ejecución y sus limitaciones.
English
A promising research direction in enabling LLMs to generate consistently correct code involves addressing their inability to properly estimate program execution, particularly for code they generate. In this work, we demonstrate that Code LLMs can be trained to simulate program execution in a step-by-step manner and that this capability can be leveraged to improve competitive programming performance. Our approach combines supervised fine-tuning on natural language execution traces, textual explanations grounded in true execution, with reinforcement learning using verifiable rewards. We introduce two complementary objectives: output prediction given code and inputs, and solving competitive programming tasks with either ground-truth or self-predicted execution feedback. These objectives enable models to perform self-verification over multiple candidate solutions, and iterative self-fixing by simulating test execution. Across multiple competitive programming benchmarks, our method yields consistent improvements over standard reasoning approaches. We further present ablations and analysis to elucidate the role of execution simulation and its limitations.