Forge Research | Programme Synthesis Status

The 2025 Forge report describes an experimental synthesis programme, not production readiness, and publishes no benchmark results.

What is Dweve Forge?

Forge is Dweve’s program-synthesis research programme. The 2025 report records an experimental system, not a production-ready release, and contains no published benchmark results.

  • Forge research access is separate from a supported product, general licence or release commitment.
  • The 2025 report does not establish production readiness and publishes no benchmark results.
  • Any future synthesis result needs a bounded specification, verification evidence, target details and a reproducible measurement plan.

Choose the audience that matches your question

The page contains three selectable readings of the same subject.

For consumers

Forge is Dweve research into program synthesis for bounded tasks. The 2025 report describes an experiment, not a production-ready product, and gives no published benchmark result.

For businesses

Forge studies whether synthesis can find a better implementation under a defined contract. The 2025 report records no production readiness and no published benchmark results.

For engineers

Forge is a research programme for typed candidate search and bounded verification. Its 2025 report is explicit that the system is not production ready and publishes no benchmark results.

Kodavimo agentas ir operatoriaus pagalba. Demonstraciniai rodikliai yra iliustratyvūs.

Terminalas, paieška, lint, testai, git ir kt.

Prisimena jūsų kodų bazę ir komandos kontekstą.

Specializuoti agentai bendradarbiauja įvairiose srityse.

Kiekvienas veiksmas įrašomas su laiko žymomis.

Politikos, patikros ir testai visada vykdomi.

Peržiūrėkite pakeitimus, prašykite pakeitimų, galutinis patvirtinimas.

Atkurkite bet kurią sesiją bitas po bito, kai reikia peržiūros.

Autonominiai agentai, kurie rašo kodą ir saugo įrašus

kad būtų tvarkomi tinklo laiko limitai, 5xx atsakymai ir idempotentiškai saugios sąlygos. Gryna pagalbinė funkcija, visiškai padengta testais.

yra rezultatas, ir jis užfiksuojamas kaip vienas.

Trys būdai, kaip asmuo gali atsakyti. Paieška savaime nepriima nė vieno iš jų.

Penki pateikti pavyzdžiai ir kaip abu kandidatai į juos atsako

skaito tuščią seką kaip nepriklausančią leistinai įvesties sričiai

skaito tuščią seką kaip turinčią neutralią sumą

du kandidatai, dvi sąžiningos sustojimo vietos, abi pateiktos tokios, kokios yra

formali teorija už dabartinės sutarties ribų

Bet koks elgesys su tikslu, kurio įrašas neįvardija.

Kad užfiksuotos tapatybės yra tos, kurias sukūrė paleidimas.

grafas, planas, artefaktas ir rezultatas dalijasi vienu įrašu

tapatybė susieta nuo pradžios iki pabaigos

Bet kokia savybė, kurios sutartis neužkodavo, ir bet koks išleistas artefaktas.

Semantika, kuri buvo užkoduota, ir prielaidos, kurias paketas įtvirtino.

prielaidos yra įtvirtintos ir išvardytos

Elgesys už ribos, kuris niekada nebuvo ieškotas.

Kad deklaruota sritis yra ta, kurioje rezultatas bus naudojamas.

Elgesys su bet kokiu įvestimi už užfiksuoto rinkinio ribų.

Kad deklaruoti atvejai atspindi elgesį, kuris rūpi tyrėjui.

atvejai yra užfiksuoti kartu su rezultatu

Nieko apie elgesį su bet kokia įvestimi.

Tik tai, kad paketas įvardijo kalbą, iš kurios kandidatas buvo sukurtas.

Kad įrodymas, grafas, Kera planas ir rezultato tapatybė nurodo vienas į kitą.

Palaikoma simbolinė savybė, įrodyta per užkoduotą semantiką.

Kiekviena reikšmė baigtinėje deklaruotoje srityje, be nesėkmės.

Kiekvienas konkretus atvejis, kurį paketas deklaravo, paleistas ir palygintas.

Tipai, formos, efektai, nuosavybė ir deklaruota sąsaja.

Ženkliukas priklauso vienai konkrečiai programai

Atgal prie paprasto struktūrinio pavadinimo

Tas pats ženkliukas po vieno pakeisto žingsnio

Atimk bet kurį iš šių penkių ir tai bus kitoks teiginys.

Ženkliukas ir penkios dalys, kurias jis tvirtina

Nieko nesako apie dešimtainę aritmetiką.

Formalus rezultatas ir atskiras jo patikrinimas.

Tik sveikieji skaičiai ir nieko už programos ribų.

Galioja kiekvienam sveikajam skaičiui nurodytame diapazone.

Ši tiksli programa, žingsnis po žingsnio.

Viena eilutė yra bendrinama. Visa kita atsakomybė tenka tik vienai ribos pusei.

Tyrimų programa, ne programinės įrangos pasiūlymas

Siluetai yra struktūriniai, o ne šaltinis. Juostų ilgiai yra santykinės pozicijos viename fronte.

Kandidatas E yra dominuojamas kandidato D aktyvioje tikslų aibėje

Subalansuota yra taip pat pirmenybė, ir ji užfiksuota kaip tokia.

Kiekvienas iš šių keturių yra teisingas, todėl tai yra pirmenybė, o ne reitingas.

B mažiausiai nusileidžia bet kuriuo atskiru rodikliu.

C veikia plačiausiame palaikomų mašinų rinkinyje.

B perkelia mažiausiai duomenų ir užtrunka ilgiau.

A baigia greičiausiai ir dirbdamas laiko daugiausiai duomenų.

D atsisako vieno perrašymo, kad būtų paprasta patikrinti.

C perkelia daugiau duomenų, kad ten patektų.

Šioje lentoje nė viena juosta nesibaigia sugeneruotu atsarginės logikos kodu. Kiekviena baigiasi pavadintu rezultatu ir asmeniu, kuriam priklauso kitas ėjimas.

rezultatas gaunamas per fiksuotą laiko langą

koreguojantis įrašas gali sumažinti bendrą kiekį

rezultatas yra tikslus iki paskutinio vieneto

bendras kiekis niekada nemažėja, kai pridedami įrašai

kiekviena suma lieka deklaruotame diapazone

Laikykite kiekvieną skaitymą saugioje riboje

Palyginimas, kuris perkeliamas į kitą eksperimento paketą.

Dvi linijos susikerta, todėl nė vienas kandidatas nėra atsakymas pats savaime.

Tuščias langelis yra teiginys: įrodymų sudėtingumas buvo modeliuojamas, bet niekada neišmatuotas.

Vieta, kur modelio išvestis gali pakeisti matavimą.

Keturi tikslai, du kandidatai, vienas eksperimentas

Santykinės pozicijos viename eksperimente, aukščiau reiškia brangiau.

Vienas balas, pagal kurį galima reitinguoti du kandidatus.

ĮRODYMAI, KURIUOS TURI ATITIKTI KITAS KANDIDATAS

Trečiasis kandidatas atitinka visus užfiksuotus įsipareigojimus. Tikrintuvas neranda jokio pažeidžiančio įvesties duomenų palaikomoje srityje ir grąžina įrodymą su šalia jo išvardytomis prielaidomis.

FORMAI PATVIRTINTA, prielaidos išvardytos

visiems x iš i32, plius abu užfiksuoti atvejai

Antrasis kandidatas turi atitikti pavyzdžius ir perpildymo atvejį kartu. Jis išplečia tarpinį rezultatą prieš daugindamas, o tikrintuvas grąžina antrą atvejį, kurio specifikacija niekada nebuvo numačiusi: tuščią įvestį.

visiems x iš i32, plius užfiksuotas atvejis

Pirmasis kandidatas atitinka tris pateiktus pavyzdžius. Tikrintuvas išieško visą i32 ir grąžina vieną konkretų įvesties duomenį, kai padidintas produktas palieka deklaruotą diapazoną.

niekas šiame lape nesuveda keturių tikslų į vieną skaičių

ilgesnis audito kelias, vietoj to įgyjant platesnę tikslo atitiktį

ilgesnis audito kelias, vietoj to įgyjant mažesnį judėjimą

ilgesnis audito kelias nei pasirinktas narys aktyviame rinkinyje

Reguliuojama programa skaito tą pačią ribą išilgai įrodymų ašies ir pasirenka narį D.

veikia su mažiau palaikomų tikslų, mainant aprėptį į audito kelią

veikia su mažiau palaikomų tikslų, mainant aprėptį į judėjimą

veikia su mažiau palaikomų tikslų nei pasirinktas narys

Valda, išskirstyta per mišrią įrangą, skaito tą pačią ribą išilgai tikslo ašies ir pasirenka narį C.

perkelia daugiau duomenų ir vietoj to išlaiko trumpesnę išvestį

perkelia daugiau duomenų, išskirstytų per daugiau palaikomų tikslų

perkelia daugiau duomenų nei pasirinktas narys aktyviame rinkinyje

Diegimas, apribotas atminties srauto, skaito tą pačią ribą išilgai judėjimo ašies ir pasirenka narį B.

didesnis modeliuojamas vėlavimas, o jo trumpesnis audito kelias nėra ašis

didesnis modeliuojamas vėlavimas, o jo aprėptis čia nėra apmokama

didesnis modeliuojamas vėlavimas nei pasirinktas narys aktyviame rinkinyje

Inžinerijos komanda su viena tiksline mašina skaito ribą išilgai vėlavimo ašies ir pasirenka narį A.

tik santykinės padėtys, be išmatuotų verčių

Viena išraiška išplėsta į keturias lygiaverčių formų klases, su keliu į pasirinktą išskyrimo tikslą apšviestu ir viena atmesta briauna nubrėžta, bet niekada neapšviesta

Išraiška išplėsta į lygiaverčių formų tinklą, su sąlygomis ant briaunų

Išskyrimas dėl perkeliamumo vietoj to taiko stiprumo mažinimą ir išdėstymo pakeitimą. Jis atlieka daugiau operacijų nei algebrinė forma ir pasiekia plačiausią palaikomų tikslų rinkinį.

Išskyrimas dėl judėjimo perkelia tą patį algebrinį žingsnį į suliejimo klasę. Jis atlieka mažiau operacijų nei išdėstymo forma ir turi mažiausią atminties judėjimą iš trijų.

Išskyrimas dėl delsos ima algebrinę formą ir ten sustoja. Jis atlieka mažiausiai operacijų ir perkelia daugiau duomenų nei sulieta forma, ir jam priklauso įrodyta pločio sąlyga.

Reklamai reikia įrodymų, o ne kontrolės. Ši galimybė neprieinama jokioje šios lentos būsenoje, ir būtent tai yra taisyklė, kuri nustatoma.

vienas mazgas pakeistas, ir etiketė vėl tampa taisyklinga

plaukiojantis to paties grafo regionas, kurio šis kodavimas neatspindi

tiksli sveikųjų skaičių semantika ir paketo deklaruotas grynas regionas

kiekviena įvestis, kurią gali išreikšti formalioji teorija

užkoduotas ryšys visoje palaikomoje srityje

palaikomas universalus ryšys įrodytas pagal nurodytas prielaidas

bet kokia įvestis už pateikto rinkinio ribų, įskaitant kiekybinę sąlygą

referencinis elgesys, pateiktas su paketu, jo paties srityje

konkretūs atvejai, įrašyti į specifikaciją

deklaruoti konkretūs atvejai praėjo, ir nieko daugiau nebuvo teigiama

elgesys tikslinėje profilyje, kurio vykdymo nuoroda neįvardija

skaitinė šeima ir paketo leisti efektai, abu fiksuoti

deklaruotas įvesties diapazonas viename palaikomame tikslinės profilyje

įrodytas ryšys, tada planas ir artefaktas, kuris jį įgyvendino

grafo, plano, artefakto ir rezultato tapatybė išlieka susieta

Nėra sukuriama jokia programa, ir priežastis įvardijama.

Keturios priežastys, kodėl atsakymas yra ne programa

Įtraukite paslaugą į modelį arba susiaurinkite teiginį.

Dalis elgesio yra už ribos, kurią tikrinimas gali apibūdinti.

Paieška pasiekė jai duotą ribą ir sustojo prieš išspręsdama klausimą.

viena taisyklė apie kiekvieną palaikomą įvestį

Du skirtingi elgesiai sutampa visais trimis pavyzdžiais ir nesutampa dėl ketvirtos įvesties.

Sušvelninkite vieną iš dviejų taisyklių.

Abi taisyklės susiduria tiesiogiai. Neigiama įvestis negali patenkinti abiejų vienu metu.

VIENAS MAZGAS, PAŽYMĖTAS VISUOSE TRIJUOSE ATVAIZDUOSE

operatorių pavadinimai atitinka mazgų pavadinimus

Tas pats semantinis grafikas, pateiktas kaip mazgų grafikas, kaip išraiška ir kaip duomenų srautas, su vienu mazgu, pažymėtu visuose trijuose atvaizduose ir sujungtu viena taisykle