En el vertiginoso mundo del desarrollo de software, la verificación formal de sistemas críticos ha sido durante mucho tiempo un bastión de precisión matemática y rigor lógico. Lenguajes como TLA+ permiten modelar el comportamiento de sistemas distribuidos, protocolos de consenso o bases de datos, garantizando que no existan estados inconsistentes o bloqueos. Sin embargo, escribir especificaciones TLA+ correctas a partir de descripciones en lenguaje natural sigue siendo una tarea que requiere años de experiencia y una comprensión profunda de la lógica temporal. Con la irrupción de los grandes modelos de lenguaje (LLMs), la pregunta inevitable surge: ¿pueden estos sistemas de inteligencia artificial generar especificaciones TLA+ fiables sin supervisión experta?
Un estudio reciente, publicado en arXiv con el código 2606.05792v1, ha tratado de responder a esta cuestión mediante la primera evaluación sistemática de síntesis de especificaciones TLA+ basada en LLMs. Los investigadores analizaron 30 modelos diferentes, desde pesos abiertos hasta propietarios, empleando 205 especificaciones reales del repositorio TLA+ Examples, un total de más de 2.600 ejecuciones con distintas estrategias de prompting. Los resultados, aunque reveladores, no son alentadores para quienes esperan una automatización inmediata: la tasa de corrección sintáctica alcanzó apenas un 26,6 %, y la corrección semántica (es decir, que la especificación no solo compile sino que cumpla la propiedad deseada) se desplomó a un escaso 8,6 %. Además, todos los aciertos semánticos se produjeron exclusivamente bajo una estrategia de 'prompting progresivo', donde el modelo va refinando la especificación paso a paso.
Una de las sorpresas del estudio fue que el tamaño del modelo no es un predictor fiable de calidad. Por ejemplo, la variante DeepSeek R1 de 8 mil millones de parámetros superó sistemáticamente a su versión de 70B en todas las estrategias evaluadas. Esto sugiere que la clave no reside en la cantidad de parámetros, sino en el alineamiento del razonamiento con lenguajes formales. De hecho, los modelos especializados en código (como CodeLlama o StarCoder) obtuvieron peores resultados que los modelos de uso general, probablemente debido a un fenómeno de transferencia negativa: su entrenamiento masivo en lenguajes de programación convencionales (Python, Java, C++) los predispone a patrones que no encajan con la lógica declarativa y temporal de TLA+.
El equipo identificó cinco categorías recurrentes de alucinaciones, todas relacionadas con sesgos específicos en los datos de entrenamiento: errores en el uso de operadores temporales, confusión entre asignación y definición, generación de expresiones sin sentido sintáctico pero que el modelo considera plausibles, omisión de variables de estado clave, y mezcla de patrones de otros lenguajes. Estas alucinaciones no son simples fallos de sintaxis; representan una falta de comprensión del dominio formal. Por tanto, los LLMs actuales no pueden generar especificaciones TLA+ fiables sin supervisión experta.
Sin embargo, la investigación no descarta el potencial de estas herramientas como asistentes en el proceso, especialmente cuando se combinan con validadores como SANY y el model checker TLC. Para una empresa de desarrollo de software como Q2BSTUDIO, este hallazgo tiene implicaciones directas. La integración de inteligencia artificial en los flujos de trabajo de verificación formal podría acelerar la redacción de borradores, pero siempre bajo la revisión de un ingeniero experto. De hecho, en el contexto de aplicaciones a medida para sectores como banca, logística o salud, donde los requisitos de precisión son extremos, contar con herramientas que automaticen parte del modelado puede liberar tiempo para el análisis profundo. Combinado con nuestros servicios de ciberseguridad y la implementación en servicios cloud AWS y Azure, el uso de LLMs como apoyo a la especificación formal puede encajar en una estrategia más amplia de garantía de calidad.
Un enfoque práctico consiste en emplear los LLMs para generar una primera versión de la especificación a partir de una descripción en lenguaje natural, y luego verificar y corregir manualmente cada línea. Este proceso se beneficia especialmente del prompting progresivo mencionado en el estudio, que permite al modelo corregir errores iterativamente. Además, la capacidad de los modelos para explicar sus decisiones puede servir como punto de partida para la documentación. Es aquí donde los agentes IA especializados podrían evolucionar: un agente que no solo genere código, sino que razone sobre propiedades temporales y sea capaz de detectar sus propias alucinaciones. Aunque todavía no existen agentes robustos para TLA+, el camino se vislumbra prometedor.
Por otro lado, el estudio libera el conjunto de datos, el código y el marco de evaluación, lo que permite a la comunidad investigar nuevas estrategias. En Q2BSTUDIO, ofrecemos servicios inteligencia de negocio y power bi para visualizar métricas de calidad del software, pero también podemos aplicar estos mismos principios de verificación en proyectos de ia para empresas. La intersección entre verificación formal y aprendizaje automático es un campo en ebullición. Mientras los LLMs no sean capaces de producir especificaciones semánticamente correctas de forma autónoma, su uso como asistentes inteligentes, supervisados por humanos y validados por herramientas formales, ya aporta valor real. Y en ese escenario, contar con un equipo experto que entienda tanto de lógica temporal como de software a medida marca la diferencia.


.jpg)
