# Inspectable Control for Structure-Preserving Software Regeneration

Canonical HTML: https://aogavrilov.com/sv/publications/inspectable-control/

Document language: sv

Granskningsbar styrning för strukturbevarande omgenerering av programvara

Styrbar partiell omgenerering av kod med hierarkiska diskreta latenta representationer.

[Alexey Gavrilov](https://orcid.org/0009-0006-3147-5430) 1 [Alan-Barsag Gazzaev](https://orcid.org/0009-0000-0334-312X) 1 [Mikhail Mozikov](https://orcid.org/0000-0003-0594-867X) 2 [Ilya Makarov](https://orcid.org/0000-0002-3308-8825) 2 [Sergey Muravyov](https://orcid.org/0000-0002-4251-1744) 1

1. [ITMO University, Saint Petersburg, Russian Federation](https://en.itmo.ru/)
2. [AXXX, Moskva, Ryska federationen](https://axxx.tech/)

[Läs hela artikeln i HTML-format](https://aogavrilov.com/publications/inspectable-control/full-text/) Sökbar text med formler, tabeller, figurer och referenser.

Författarens tryckfärdiga manuskript med slutlig författarlista och DOI. CC BY 4.0 author manuscript; the ACM DOI page remains the version of record. [Villkor för publicering och återanvändning](https://creativecommons.org/licenses/by/4.0/) .

## Artikeln på 30 sekunder

**Forskningsfråga** Hur kan en generativ modell modifiera utvalda delar av ett program och samtidigt bevara valda element i dess grova struktur?

### Problem

AI-assisterad kodmodifiering kräver ofta en avgränsad ändring samtidigt som utvalda delar av programstrukturen förblir oförändrade. Att generera om hela programmet kan påverka orelaterade regioner, och begränsningar på tokennivå ger inget grovkornigt styrgränssnitt.

### Metod

Studien kodar Python-funktioner med 64 token med hjälp av en hierarkisk VQ-VAE, låser utvalda grova diskreta koder och använder maskerad diskret generering för lokal omgenerering av kod i de återstående latenta positionerna.

### Huvudresultat

När fyra koder på högsta nivån låses ökar andelen parsingsbara program från 0.453 till 0.591, samtidigt som ändringsfrekvensen i olåsta positioner är fortsatt 0.936 och unikhetsgraden bland de villkorade exemplen är 0.998.

### Varför det är viktigt

Resultaten visar en mätbar avvägning mellan stabilitet och frihet vid styrbar kodredigering och partiell omgenerering av program. De ger preliminära belägg för ett granskningsbart latent styrskikt, inte bevis för semantisk ekvivalens eller funktionell korrekthet.

## Sammanfattning

Programvarutekniska arbetsflöden som begränsningsstyrd reparation, stegvis förfining och strukturbevarande modifiering kräver kontroll över vad som ändras och vad som förblir oförändrat. Generering på tokennivå är ett svagt styrgränssnitt för sådana operationer, eftersom den begränsar den lokala ytformen snarare än de övergripande strukturella invarianter som man ofta vill bevara inom programvaruteknik. Vi undersöker hierarkiska diskreta latenta representationer som en granskningsbar mellanrepresentation för programvaruartefakter: en hierarkisk VQ-VAE komprimerar en Python-funktion med 64 token till grova och finkorniga diskreta koder, varefter maskerad diskret generering endast genererar om utvalda positioner under partiella begränsningar. För 2,000 förbehandlade Python-funktioner ökar låsning av fyra koder på högsta nivån andelen parsingsbara program från 0.453 till 0.591. Samtidigt bibehålls en hög ändringsfrekvens i olåsta positioner (redigeringsfrihet, 0.936) och en nära maximal unikhetsgrad bland exemplen (mångfald, 0.998). När den grova kontexten hålls fast är förfiningen på lägre nivå svagare men fortfarande monoton, vilket stöder en tolkning av hierarkin från grovt till fint. Sammantaget ger resultaten preliminära belägg för ett praktiskt styrskikt som möjliggör avgränsad, strukturbevarande omgenerering av programvaruartefakter ovanför tokennivån.

Publicerad vid Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering

Typ av bidrag Styrmetod för latentutrymmet

5 juli 2026 s. 1406–1407 Tillhörande poster

DOI [https://doi.org/10.1145/3803437.3807386](https://doi.org/10.1145/3803437.3807386)

## Innehåll På denna sida

## Centrala resultat

| Inställning | Parsbarhet | Stomme | Signatur | Olåst ändring |
| --- | --- | --- | --- | --- |
| Indata (avkortade) | 0.994 | 0.994 | 0.994 | — |
| Kodekrekonstruktion | 0.857 | 0.848 | 0.493 | 0 |
| Ovillkorad generering | 0.453 | 0.08 | 0 | 0.995 |
| Villkorad, prefix k=4 | 0.591 | 0.295 | 0.061 | 0.936 |
| Villkorad, signaturspann | 0.6 | 0.302 | 0.063 | inte rapporterat |

**Huvudresultat.** Låsning av grova latenta positioner förbättrar den syntaktiska stabiliteten utan att förändringen i den redigerbara regionen kollapsar; resultatet påvisar strukturell styrning, inte garanterad funktionell ekvivalens.

Ladda ned resultat: [CSV](https://aogavrilov.com/publications/inspectable-control/results.csv) [JSON](https://aogavrilov.com/publications/inspectable-control/results.json) [Markdown](https://aogavrilov.com/publications/inspectable-control/results.md) Extern spegel: [Hugging Face-datasetkort](https://huggingface.co/datasets/aogavrilov/inspectable-control-results)

## PDF och citering

**Citera denna artikel** BibTeX är det rekommenderade formatet. Varje variant nedan genereras från samma publikationspost.

```
@inproceedings{Gavrilov2026InspectableControl,
  title      = {Inspectable Control for Structure-Preserving Software Regeneration},
  author     = {Gavrilov, Alexey and Gazzaev, Alan-Barsag and Mozikov, Mikhail and Makarov, Ilya and Muravyov, Sergey},
  booktitle  = {Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering},
  publisher  = {ACM},
  year       = {2026},
  pages      = {1406--1407},
  doi        = {10.1145/3803437.3807386},
  url        = {https://doi.org/10.1145/3803437.3807386},
  isbn       = {979-8-4007-2636-1},
}
```

Citeringsfiler: [APA-text](https://aogavrilov.com/publications/inspectable-control/citation-apa.txt) [IEEE-text](https://aogavrilov.com/publications/inspectable-control/citation-ieee.txt) [RIS](https://aogavrilov.com/publications/inspectable-control/citation.ris) [CSL-JSON](https://aogavrilov.com/publications/inspectable-control/citation.json) [Schema.org JSON-LD](https://aogavrilov.com/publications/inspectable-control/metadata.jsonld) [OAI-DC XML](https://aogavrilov.com/publications/inspectable-control/oai-dc.xml) [OpenAIRE v4 XML](https://aogavrilov.com/publications/inspectable-control/openaire.xml) [MODS XML](https://aogavrilov.com/publications/inspectable-control/mods.xml) [JATS 1.4-metadata i XML](https://aogavrilov.com/publications/inspectable-control/metadata.jats.xml) [Fulltext i JATS 1.4 XML](https://aogavrilov.com/publications/inspectable-control/full-text/article.jats.xml) [RDF Turtle](https://aogavrilov.com/publications/inspectable-control/metadata.ttl) [Länkuppsättning (JSON)](https://aogavrilov.com/publications/inspectable-control/linkset.json) [Länkuppsättning (HTTP)](https://aogavrilov.com/publications/inspectable-control/linkset) [RO-Crate](https://aogavrilov.com/publications/inspectable-control/ro-crate-metadata.json)

DOI: [https://doi.org/10.1145/3803437.3807386](https://doi.org/10.1145/3803437.3807386)

Fullständig guide

## Fullständig forskningsguide

## Metod

## 

Metoden komprimerar en kort Python-funktion till två nivåer av diskreta koder, fryser utvalda grova positioner och regenererar återstående positioner innan de avkodas tillbaka till kod.

1. Koda Komprimera en Python-funktion med 64 token till 16 koder på den övre nivån och 32 koder på den undre nivån med en hierarkisk VQ-VAE.
2. Lås Välj grova kodpositioner som representerar den struktur som ska bevaras, exempelvis ett prefix som täcker funktionssignaturens spann.
3. Generera på nytt Utför maskerad diskret generering enbart över olåsta positioner och avkoda den fullbordade hierarkin tillbaka till källkod.
4. Granska Mät parsbarhet, strukturella proxymått, förändringar i olåsta positioner och exemplens unikhetsgrad innan en omgenerering godtas.

![Utvalda grova programkoder hålls fasta medan maskerade fina diskreta koder genereras på nytt och avkodas till en modifierad Python-funktion.](https://aogavrilov.com/publications/inspectable-control/hierarchical-discrete-latent-code-editing.svg)

**Hierarkisk redigering av diskreta latenta koder bevarar utvald grov programstruktur samtidigt som finkorniga koder regenereras i den redigerbara regionen.* Källa: [Författarskapat förklarande diagram baserat på den publicerade metoden och resultaten.](https://doi.org/10.1145/3803437.3807386) . Villkor för återanvändning: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) . Föreslagen attribuering: Gavrilov et al. (2026), Inspectable Control for Structure-Preserving Software Regeneration. [Ladda ned SVG](https://aogavrilov.com/publications/inspectable-control/hierarchical-discrete-latent-code-editing.svg) .*

### Grundidé

Styrningen tillämpas på en inlärd representation ovanför tokennivån: grova latenta positioner anger uttryckliga ställen där strukturen kan frysas medan närliggande implementeringsdetaljer förblir redigerbara.

### Skillnad mot närliggande angreppssätt

Begränsningar på prompt- eller tokennivå verkar på yttexten. Det föreslagna gränssnittet exponerar grova och fina diskreta styrpunkter och mäter den resulterande avvägningen mellan stabilitet och frihet.

### Vad är nytt?

Arbetet introducerar och utvärderar ett granskningsbart hierarkiskt latent styrskikt för avgränsad omgenerering av programvaruartefakter.

## Frågor som artikeln bidrar till att besvara

## 

Öppna en fråga för ett kortfattat svar med stöd i artikeln. Detaljerade gränser för evidensen anges under Begränsningar.

1. Hur kan AI redigera kod utan att skriva om allting? Artikeln studerar partiell kodregenerering ovanför tokennivån. En hierarkisk VQ-VAE avbildar en kort Python-funktion till grova och fina diskreta koder; utvalda grova positioner låses och maskerad diskret generering ändrar endast de återstående latenta positionerna före avkodning. Detta ger en explicit bevarandegräns i stället för att hela funktionen regenereras.
2. Vilka metoder bevarar programstrukturen vid kodgenerering? Arbetet prövar hierarkisk diskret latent styrning. Grova latenta positioner kan hållas fasta medan olåsta positioner genereras om; därefter mäts parsbarhet och strukturella proxymått. Beläggen gäller probabilistisk strukturell stabilitet hos korta Python-funktioner och fastställer inte exakt AST-bevarande, semantisk ekvivalens eller funktionell korrekthet.
3. Kan hierarkiska diskreta latenta representationer ge lokal styrning av kod? I det redovisade experimentet med 2,000 funktioner ökade låsning av fyra koder på högsta nivån andelen parsingsbara program från 0.453 till 0.591. Samtidigt ändrades 0.936 av de olåsta positionerna och unikhetsgraden bland de villkorade exemplen var 0.998. Resultaten ger preliminära belägg för att grova latenta begränsningar kan bevara viss struktur utan att undanröja lokal redigeringsfrihet eller variation mellan exempel.
4. Hur kan kodgenerering balansera strukturell stabilitet mot variation? Artikeln utvärderar stabilitet och frihet gemensamt i stället för att enbart optimera giltighet. Låsning av grova koder höjer den syntaktiska giltigheten, samtidigt som förändringen i olåsta positioner förblir stor och de villkorade samplen nästan uteslutande är unika. Resultatet visar en mätbar avvägning mellan stabilitet och frihet under den testade konfigurationen, inte ett universellt optimum.
5. Hur förhåller sig detta arbete till LLM-assisterad kodredigering? Den testade modellen är en hierarkisk VQ-VAE med maskerad diskret generering, inte en stor språkmodell. Styrproblemet är ändå relevant för LLM-assisterad redigering, eftersom onödiga ändringar utanför det efterfrågade området utgör ett praktiskt problem. Artikeln bidrar med en kompletterande mekanism i latentrummet och ett utvärderingsramverk, inte ett benchmark för LLM-redigering.

## Jämförelse med närliggande angreppssätt

## 

| Förmåga | Styrning på tokennivå | Hierarkisk latent styrning |
| --- | --- | --- |
| Lås den grova strukturen | Begränsat | Inbyggd låsning av grovkoder |
| Partiell regenerering | Bräckliga ytbegränsningar | Maskerad omsampling av valda koder |
| Granskningsbara styrpunkter | Inget explicit mellanlager | Grova och fina diskreta positioner |
| Evidens i denna artikel | Inte utvärderad som en fullständig baslinje | Diagnostik av syntaktisk stabilitet och redigeringsfrihet |

Tabellen beskriver gränssnitt och studiens uppmätta evidens; den gör inga anspråk på funktionell korrekthet eller universell överlägsenhet.

## Relevans och avgränsning

## 

Artikeln är särskilt relevant för arbeten som kräver explicit kontroll över vad en AI-assisterad kodtransformation får ändra och vilka delar av ett program som ska förbli stabila.

1. Styrbar och strukturbevarande kodgenerering
2. Lokal programreparation och avgränsad refaktorering
3. Hierarkiska diskreta representationer för källkod
4. Maskerad diskret generering av källkod
5. Latent styrning av programvaruartefakter

## Begränsningar

## 

- Studien är begränsad till korta Python-funktioner som trunkerats till 64 token.
- Utvärderingen använder argmax-avkodning och syntaktiska eller strukturella proxymått i stället för tester av funktionell ekvivalens.
- Det exakta bevarandet av signaturer är fortfarande bristfälligt.
- Styrning på lägre nivå är svagare än styrning på högsta nivån.
- Latenta positioner är ännu inte anpassade till semantiska regioner såsom AST-intervall, signaturer eller kontrollflödesstruktur.
- Resultaten belägger inte korrekthet för praktisk reparation, refaktorisering eller ändringar på repositorienivå.

## Referenser som citeras i artikeln

## 

Dessa poster motsvarar den numrerade referensförteckningen i artikelns PDF-version.

1. Ali Razavi, Aaron van den Oord, Oriol Vinyals. 2019 . [Generating Diverse High-Fidelity Images with VQ-VAE-2](https://arxiv.org/abs/1906.00446) . Advances in Neural Information Processing Systems .
2. Jacob Austin, Daniel D. Johnson, Jonathan Ho, Daniel Tarlow, Rianne van den Berg. 2021 . [Structured Denoising Diffusion Models in Discrete State-Spaces](https://arxiv.org/abs/2107.03006) . Advances in Neural Information Processing Systems .
3. Subham Sekhar Sahoo, Marianne Arriola, Yair Schiff, Aaron Gokaslan, Edgar Marroquin, Justin T Chiu, Alexander Rush, Volodymyr Kuleshov. 2024 . [Simple and Effective Masked Diffusion Language Models](https://arxiv.org/abs/2406.07524) . Advances in Neural Information Processing Systems .
4. Shraddha Barke, Michael B. James, Nadia Polikarpova. 2023 . [Grounded Copilot: How Programmers Interact with Code-Generating Models](https://doi.org/10.1145/3586030) . Proceedings of the ACM on Programming Languages .
5. Fengji Zhang, Bei Chen, Yue Zhang, Jacky Keung, Jin Liu, Daoguang Zan, Yi Mao, Jian-Guang Lou, Weizhu Chen. 2023 . [RepoCoder: Repository-Level Code Completion Through Iterative Retrieval and Generation](https://doi.org/10.18653/v1/2023.emnlp-main.151) . Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing .

## Resurser och reproducerbarhet

## 

### Dataredogörelse

## Versioner

## 

1. **Publicerad version** [ACM FSE Companion, 2026](https://doi.org/10.1145/3803437.3807386)
2. **Författarmanuskript** [Textåtkomligt, tryckfärdigt manuskript med slutlig författarlista och DOI](https://aogavrilov.com/publications/inspectable-control/paper.pdf)
3. **Extern fulltextspegel** [Författarmanuskript med licensen CC BY 4.0 på Hugging Face](https://huggingface.co/datasets/aogavrilov/inspectable-control-results/resolve/main/paper.pdf)
4. **Öppna repositorieposten** [Zenodo-post indexerad av OpenAIRE](https://zenodo.org/records/21605395)
5. **Öppna fulltexten i repositoriet** [Författarmanuskript på Zenodo under CC BY 4.0; textmässigt likvärdigt med det lokala manuskriptet](https://zenodo.org/records/21605395/files/fse2026-posters-final11%20%284%29.pdf?download=1)
6. **Författarresurser** [Poster och presentationsbilder](https://aogavrilov.com/publications/inspectable-control/media/)
7. **Bibliografisk post** [DBLP](https://dblp.org/rec/conf/sigsoft/GavrilovGMMM26)
8. **Öppna den vetenskapliga posten** [OpenAlex](https://openalex.org/W7169573479)
9. **Post i citeringsgraf** [Semantic Scholar](https://www.semanticscholar.org/paper/93c3de037596ce177d9d882d214ccad5c5405b00)
10. **Fulltext delad av författaren** [ResearchGate](https://www.researchgate.net/publication/410435483_Inspectable_Control_for_Structure-Preserving_Software_Regeneration)
11. **Lättillgänglig sammanfattning** [Kudos](https://www.growkudos.com/publications/10.1145%252F3803437.3807386/reader)

Den publicerade DOI:n är den primära bibliografiska identifieraren. Denna sida förblir projektets enda kanoniska URL i samtliga versioner.

## Relaterad publikation

- [Where Quality Breaks in Compressed Short-Text Generation: Staged Bottleneck Localization](https://aogavrilov.com/sv/publications/where-quality-breaks/)

Läs [Styrbar kodredigering](https://aogavrilov.com/sv/projects/discrete-latent-generation/) forskningsguide. [Om författaren](https://aogavrilov.com/about/) .

### Fokuserade forskningsanteckningar

Avsiktsspecifika svar med tydligt avgränsat evidensstöd och länkar tillbaka till denna artikel.

- [Lokal kodmodifiering med generativa modeller](https://aogavrilov.com/sv/research-notes/localized-code-modification-generative-models/)
- [Begränsad kodgenerering för programvaruteknik](https://aogavrilov.com/sv/research-notes/constrained-code-generation-software-engineering/)
- [AI-assisterad refaktorering: metoder och evidens](https://aogavrilov.com/sv/research-notes/ai-assisted-refactoring-evidence/)
- [Förutsägbar kodgenerering kräver ett bevarandekontrakt](https://aogavrilov.com/sv/research-notes/predictable-code-generation-preservation-contract/)
