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.
Coding-Agent und Operator-Unterstützung. Demokennzahlen sind illustrativ.
Terminal, Suche, Lint, Test, Git und mehr.
Merkt sich Ihre Codebasis und den Teamkontext.
Spezialisierte Agenten arbeiten fachübergreifend zusammen.
Jeder Schritt wird mit Zeitstempeln aufgezeichnet.
Richtlinien, Prüfungen und Tests laufen immer.
Diffs prüfen, Änderungen anfordern, endgültige Freigabe.
Jede Sitzung bitgenau wiedergeben, wenn etwas überprüft werden muss.
retry.ts lesen, Timeout-Fehler aufgespürt
Guard extrahieren + Wiederholungen begrenzen
Autonome Agenten, die Code schreiben und Belege aufbewahren
zur Behandlung von Netzwerk-Timeouts, 5xx-Antworten und idempotent-sicheren Bedingungen. Reine Hilfsfunktion, vollständig unit-getestet.
ist das Ergebnis, und es wird als eins aufgezeichnet.
Drei Möglichkeiten, wie eine Person antworten kann. Die Suche übernimmt keine davon von sich aus.
Die fünf gelieferten Beispiele und wie beide Kandidaten sie beantworten
den kleinsten Betrag in einer Sequenz melden
liest die leere Sequenz als außerhalb der zulässigen Eingabe
liest die leere Sequenz als mit einem neutralen Betrag
zwei Kandidaten, zwei ehrliche Stopppunkte, beide so berichtet, wie sie sind
formale Theorie außerhalb des aktuellen Vertrags
Jedes Verhalten auf einem Ziel, das der Datensatz nicht nennt.
Dass die aufgezeichneten Identitäten diejenigen sind, die der Lauf erzeugt hat.
Graph, Plan, Artefakt und Ergebnis teilen einen Datensatz
Jede Eigenschaft, die der Vertrag nicht kodiert hat, und jedes ausgegebene Artefakt.
Die Semantik, die kodiert wurde, und die Annahmen, die das Paket festgelegt hat.
die Annahmen sind festgelegt und aufgelistet
Verhalten jenseits der Grenze, das nie durchsucht wurde.
Dass die deklarierte Domäne diejenige ist, in der das Ergebnis verwendet wird.
die Domäne wird mit der Behauptung deklariert
Verhalten bei jeder Eingabe außerhalb des aufgezeichneten Satzes.
Dass die deklarierten Fälle das Verhalten repräsentieren, das der Forscher betrachtet.
die Fälle werden mit dem Ergebnis aufgezeichnet
Nichts über Verhalten bei beliebiger Eingabe.
Nur dass das Paket die Sprache benannt hat, aus der der Kandidat erstellt wurde.
die deklarierte Sprache ist abgeschlossen
Dass der Beweis, der Graph, der Kera-Plan und die Ergebnisidentität aufeinander verweisen.
Die unterstützte symbolische Eigenschaft, bewiesen über die kodierte Semantik.
Jeder Wert in einer endlichen deklarierten Domäne, ohne Fehler.
Jeder konkrete Fall, den das Paket deklariert hat, ausgeführt und verglichen.
Typen, Formen, Effekte, Eigentum und die deklarierte Schnittstelle.
Das Abzeichen gehört zu genau einem Programm
Zurück zum schlichten strukturellen Label
Dasselbe Abzeichen nach einem geänderten Schritt
Nimm eines dieser fünf weg und es ist eine andere Aussage.
Das Abzeichen und die fünf Teile, die es behauptet
Ein formales Ergebnis und eine separate Prüfung davon.
Nur ganze Zahlen und nichts außerhalb des Programms.
Gilt für jede ganze Zahl im deklarierten Bereich.
Dieses genaue Programm, Schritt für Schritt.
Eine Zeile wird geteilt. Jede andere Verantwortung liegt auf genau einer Seite der Grenze.
Forschungsprogramm, kein Softwareangebot
Silhouetten sind strukturell, nicht Quelle. Bandlängen sind relative Positionen auf einer Grenzlinie.
Kandidat E wird von Kandidat D auf der aktiven Zielfläche dominiert
Ausgewogen ist ebenfalls eine Präferenz und wird als solche erfasst.
Alle diese vier sind korrekt, also ist dies eine Präferenz und keine Rangfolge.
B gibt bei jedem einzelnen Maß am wenigsten auf.
C läuft auf der breitesten Palette unterstützter Maschinen.
B bewegt am wenigsten Daten und dauert länger.
A ist am schnellsten fertig und hält während der Arbeit die meisten Daten.
D verzichtet auf eine Neufassung, um einfach zu prüfen zu bleiben.
C bewegt mehr Daten, um dorthin zu gelangen.
A hält während der Arbeit die meisten Daten.
Keine Lane auf diesem Board endet mit generiertem Fallback-Code. Jede endet mit einem benannten Ergebnis und der Person, die den nächsten Zug besitzt.
nicht durch den Verifikationsvertrag abgedeckt
das Ergebnis trifft innerhalb eines festen Echtzeitfensters ein
ein korrigierender Eintrag kann die Summe reduzieren
das Ergebnis ist bis zur letzten Einheit exakt
die Summe sinkt nie, wenn Einträge hinzugefügt werden
jeder Betrag bleibt innerhalb des deklarierten Bereichs
Ein Vergleich, der auf ein anderes Experimentpaket übertragen wird.
Die beiden Linien kreuzen sich, weshalb keiner der Kandidaten für sich genommen die Antwort ist.
Die leere Zelle ist die Behauptung: Die Beweiskomplexität wurde modelliert und nie gemessen.
Ein Ort, an dem eine Modellausgabe für eine Messung stehen kann.
Vier Ziele, zwei Kandidaten, ein Experiment
Relative Positionen in einem Experiment, höher bedeutet teurer.
Ein einzelner Wert, nach dem die beiden Kandidaten eingestuft werden können.
erstellt eine neue Spezifikationsidentität
der Lauf wird unter derselben Identität fortgesetzt
ZWEI LEGITIME ANTWORTEN AUF EINEN FEHLER
NACHWEIS, DEN DER NÄCHSTE KANDIDAT ERFÜLLEN MUSS
Wählen Sie eine Iteration der Verfeinerungsschleife
Der dritte Kandidat erfüllt jede aufgezeichnete Verpflichtung. Der Prüfer findet keine verletzende Eingabe innerhalb des unterstützten Bereichs und gibt einen Beweis mit den daneben aufgeführten Annahmen zurück.
für alle x in i32, plus beide aufgezeichneten Fälle
Der zweite Kandidat muss die Beispiele und den Überlauffall zusammen erfüllen. Er verbreitert den Zwischenwert vor der Multiplikation, und der Prüfer gibt einen zweiten Fall zurück, den die Spezifikation nie festgelegt hatte: eine leere Eingabe.
für alle x in i32, plus der aufgezeichnete Fall
Der erste Kandidat erfüllt die drei gelieferten Beispiele. Der Prüfer durchsucht den gesamten i32-Bereich und gibt eine konkrete Eingabe zurück, bei der das skalierte Produkt den deklarierten Bereich verlässt.
nichts auf diesem Blatt fasst die vier Ziele zu einer Zahl zusammen
ein längerer Prüfpfad, der stattdessen eine breitere Zielabdeckung erreicht
ein längerer Prüfpfad, der stattdessen geringere Bewegung erreicht
ein längerer Prüfpfad als das ausgewählte Mitglied auf der aktiven Menge
Ein reguliertes Programm liest dieselbe Grenze entlang der Beweisachse und nimmt Mitglied D.
läuft auf weniger unterstützten Zielen und tauscht Breite gegen Prüfpfad
läuft auf weniger unterstützten Zielen und tauscht Breite gegen Bewegung
läuft auf weniger unterstützten Zielen als das ausgewählte Mitglied
Ein Bestand, der über gemischte Hardware verteilt ist, liest dieselbe Grenze entlang der Zielachse und nimmt Mitglied C.
bewegt mehr Daten und behält stattdessen eine kürzere Ableitung
bewegt mehr Daten, verteilt über mehr unterstützte Ziele
bewegt mehr Daten als das ausgewählte Mitglied auf der aktiven Menge
Eine Bereitstellung, die durch Speicherverkehr eingeschränkt ist, liest dieselbe Grenze entlang der Bewegungsachse und nimmt Mitglied B.
höhere modellierte Latenz, und sein kürzerer Prüfpfad ist nicht die Achse
höhere modellierte Latenz, und seine Breite wird hier nicht bezahlt
höhere modellierte Latenz als das ausgewählte Mitglied auf der aktiven Menge
Ein technisches Team mit einer Zielmaschine liest die Grenze entlang der Latenzachse und nimmt Mitglied A.
nur relative Positionen, keine gemessenen Werte
Ein Ausdruck wird in vier Klassen äquivalenter Formen erweitert, wobei der Pfad zum ausgewählten Extraktionsziel beleuchtet ist und eine verweigerte Kante gezeichnet, aber nie beleuchtet wird
Ein Ausdruck wird in ein Netzwerk äquivalenter Formen erweitert, mit Bedingungen an den Kanten
Die Extraktion für Portabilität nimmt stattdessen die Stärkereduktion und die Layoutänderung. Sie führt mehr Operationen aus als die algebraische Form und erreicht die breiteste Menge unterstützter Ziele.
Die Extraktion für Bewegung trägt denselben algebraischen Schritt in die Fusionsklasse. Sie führt weniger Operationen aus als die Layoutform und hat die geringste Speicherbewegung der drei.
Die Extraktion für Latenz nimmt die algebraische Form und stoppt dort. Sie führt die wenigsten Operationen aus und bewegt mehr Daten als die fusionierte Form, und sie hat Anspruch auf die bewiesene Breitenbedingung.
Beförderung erfordert Belege, keine Kontrolle. Dieses Merkmal ist in jedem Zustand auf diesem Board nicht verfügbar, was die Regel ist, die gezogen wird.
ein Knoten wurde geändert, und das Label kehrt zu wohlgeformt zurück
die schwebende Region desselben Graphen, die diese Kodierung nicht darstellt
exakte Ganzzahl-Semantik und eine Region, die vom Paket als rein deklariert wurde
jede Eingabe, die die formale Theorie ausdrücken kann
die kodierte Relation über den gesamten unterstützten Bereich
eine unterstützte universelle Relation wurde unter den angegebenen Annahmen bewiesen
jede Eingabe außerhalb der bereitgestellten Menge, einschließlich der quantifizierten Bedingung
das mit dem Paket gelieferte Referenzverhalten, innerhalb seines eigenen Bereichs
die bereitgestellten Eingaben, eine nach der anderen
die konkreten Fälle, die in der Spezifikation festgehalten sind