Digitala Vetenskapliga Arkivet

Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
galápagos: Automated N-Version Programming with LLMs
KTH, School of Electrical Engineering and Computer Science (EECS), Theoretical Computer Science.ORCID iD: 0000-0001-6988-3102
KTH, School of Electrical Engineering and Computer Science (EECS), Theoretical Computer Science.ORCID iD: 0009-0005-1338-3295
Université de Montréal, Montreal, Canada.ORCID iD: 0000-0002-4015-4640
Show others and affiliations
2026 (English)In: ACM Transactions on Software Engineering and Methodology, ISSN 1049-331X, E-ISSN 1557-7392, Vol. 35, no 8, p. 1-29, article id 224Article in journal (Refereed) Published
Abstract [en]

N-Version Programming is a well-known methodology for developing fault-tolerant systems. It achieves fault detection and correction at runtime by adding diverse redundancy into programs, minimizing fault mode overlap between redundant program variants. In this work, we propose the automated generation of program variants using large language models. We design, develop, and evaluate Galápagos: a tool for generating program variants using LLMs, validating their correctness and equivalence, and using them to assemble N-Version binaries. We evaluate Galápagos by creating N-Version components of real-world C code. Our original results show that Galápagos can produce program variants that are proven to be functionally equivalent, even when the variants are written in a different programming language. Our systematic diversity measurement indicates that functionally equivalent variants produced by Galápagos are statically different after compilation and present diverging internal behavior at runtime. We demonstrate that the variants produced by Galápagos can protect C code against real miscompilation bugs which affect the Clang compiler. Overall, our article shows that producing N-Version software can be drastically automated by advanced usage of practical formal verification and generative language models.

Place, publisher, year, edition, pages
Association for Computing Machinery (ACM) , 2026. Vol. 35, no 8, p. 1-29, article id 224
Keywords [en]
Large Language Models, N-Version Programming
National Category
Computer Sciences Software Engineering Embedded Systems
Identifiers
URN: urn:nbn:se:kth:diva-386920DOI: 10.1145/3785363Scopus ID: 2-s2.0-105045986822OAI: oai:DiVA.org:kth-386920DiVA, id: diva2:2091297
Note

QC 20260811

Available from: 2026-08-11 Created: 2026-08-11 Last updated: 2026-08-11Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full textScopus

Search in DiVA

By author/editor
Ron, JavierGaspar, DiogoCabrera Arteaga, JavierBaudry, BenoitMonperrus, Martin
By organisation
Theoretical Computer ScienceKTH
In the same journal
ACM Transactions on Software Engineering and Methodology
Computer SciencesSoftware EngineeringEmbedded Systems

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 6 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf