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 and operator assistance. Demo metrics are illustrative.
Terminal, search, lint, test, git, and more.
Remembers your codebase and team context.
Specialised agents collaborate across concerns.
Review diffs, request changes, final sign-off.
Replay any session bit-for-bit when something needs review.
Autonomous agents that write code and keep receipts
to handle network timeouts, 5xx responses, and idempotent-safe conditions. Pure helper, fully unit-tested.
is the result, and it is recorded as one.
Three ways a person can answer. The search takes none of them on its own.
The five supplied examples and how both candidates answer them
report the smallest amount in a sequence
reads the empty sequence as outside the permitted input
reads the empty sequence as having a neutral amount
two candidates, two honest stopping points, both reported as they stand
formal theory outside the current contract
Any behaviour on a target the record does not name.
That the recorded identities are the ones the run produced.
graph, plan, artefact and result share one record
Any property the contract did not encode, and any emitted artefact.
The semantics that were encoded and the assumptions the packet pinned.
Behaviour beyond the bound, which was never searched.
That the declared domain is the one the result will be used inside.
Behaviour on any input outside the recorded set.
That the declared cases represent the behaviour the researcher cares about.
Only that the packet named the language the candidate was built from.
That the proof, the graph, the Kera plan and the result identity refer to one another.
The supported symbolic property, proved over the encoded semantics.
Every value in a finite declared domain, without a failure.
Every concrete case the packet declared, run and compared.
Types, shapes, effects, ownership and the declared interface.
Take any one of these five away and it is a different statement.
A formal result, and a separate check of it.
Whole numbers only, and nothing outside the program.
Holds for every whole number in the declared range.
One row is shared. Every other responsibility sits on exactly one side of the boundary.
Research programme, not a software offer
Silhouettes are structural, not source. Ribbon lengths are relative positions on one frontier.
Candidate E is dominated by candidate D on the active objective set
Balanced is also a preference, and it is recorded as one.
Every one of these four is correct, so this is a preference and not a ranking.
B gives up the least on any single measure.
C runs on the widest set of supported machines.
B moves the least data, and takes longer to finish.
A finishes soonest, and holds the most data while it works.
D forgoes one rewrite to stay simple to check.
No lane on this board ends with generated fallback code. Each one ends with a named result and the person who owns the next move.
not represented by the verification contract
the result arrives inside a fixed wall clock window
the total never decreases as entries are added
every amount stays inside the declared range
Keep every reading inside the safe range
A comparison that carries across to another experiment packet.
The two lines cross, which is why neither candidate is the answer on its own.
The empty cell is the claim: proof complexity was modelled and never measured.
A place where a model output may stand in for a measurement.
Four objectives, two candidates, one experiment
Relative positions on one experiment, higher is more costly.
A single score the two candidates can be ranked by.
the run continues under the same identity
EVIDENCE THE NEXT CANDIDATE MUST SATISFY
Choose an iteration of the refinement loop
The third candidate satisfies every recorded obligation. The verifier finds no violating input inside the supported domain and returns a proof with its assumptions listed beside it.
for all x in i32, plus both recorded cases
The second candidate has to satisfy the examples and the overflow case together. It widens the intermediate before multiplying, and the verifier returns a second case the specification had never pinned: an empty input.
for all x in i32, plus the recorded case
The first candidate satisfies the three supplied examples. The verifier searches the whole of i32 and returns one concrete input where the scaled product leaves the declared range.
nothing on this sheet collapses the four objectives into one number
a longer audit path, gaining wider target fit instead
a longer audit path, gaining lower movement instead
a longer audit path than the selected member on the active set
A regulated programme reads the same frontier along the evidence axis and takes member D.
runs on fewer supported targets, trading breadth for audit path
runs on fewer supported targets, trading breadth for movement
runs on fewer supported targets than the selected member
An estate spread across mixed hardware reads the same frontier along the target axis and takes member C.
moves more data, and keeps a shorter derivation instead
moves more data, spread across more supported targets
moves more data than the selected member on the active set
A deployment constrained by memory traffic reads the same frontier along the movement axis and takes member B.
higher modelled latency, and its shorter audit path is not the axis
higher modelled latency, and its breadth is not being paid for here
higher modelled latency than the selected member on the active set
An engineering team with one target machine reads the frontier along the latency axis and takes member A.
relative positions only, no measured figures
One expression expanded into four classes of equivalent form, with the path to the selected extraction target lit and one refused edge drawn but never lit
An expression expanded into a network of equivalent forms, with conditions on the edges
Extracting for portability takes the strength reduction and the layout change instead. It runs more operations than the algebraic form and reaches the widest set of supported targets.
Extracting for movement carries the same algebraic step on into the fusion class. It runs fewer operations than the layout form and holds the lowest memory movement of the three.
Extracting for latency takes the algebraic form and stops there. It runs the fewest operations and moves more data than the fused form, and it is entitled to the width condition that was proved.
Promotion requires evidence, not a control. This affordance is unavailable in every state on this board, which is the rule being drawn.
one node changed, and the label returns to well formed
the floating region of the same graph, which this encoding does not represent
exact integer semantics and a region declared pure by the packet
every input the formal theory can express
the encoded relation across the whole supported domain
a supported universal relation was proved under stated assumptions
any input outside the supplied set, including the quantified condition
the reference behaviour supplied with the packet, inside its own domain
the concrete cases written into the specification
the declared concrete cases passed and nothing beyond them was claimed
behaviour on a target profile the execution link does not name
the numerical family and the effects the packet permitted, both pinned
the declared input range on one supported target profile
the proved relation, then the plan and the artefact that carried it into execution
graph, plan, artefact and result identity stay bound together
No program is produced, and the reason is named.
Bring the service inside the model, or narrow the claim.
Part of the behaviour rests outside the boundary the checking is able to describe.
The search reached the limit it was given and stopped before settling the question.
Two different behaviours agree on all three examples and disagree on the fourth input.
The two rules meet head on. A negative input cannot satisfy both of them at once.
ONE NODE, MARKED IN ALL THREE RENDERINGS
The same semantic graph rendered as a node graph, as an expression and as dataflow, with one node marked in all three renderings and joined by a single rule
One semantic graph drawn three ways, as a graph, as an expression and as dataflow, with the clamp node marked in all three
The shape is kept, the gaps are searched.
Checked on every reading the rule can name.
reading, the answer stays between 0 and 100, and never moves by more than one step.
It separates into three forms, and each one can be checked.
“Keep every reading inside the safe range, and never let it jump.”
A form is chosen, not merged. The record keeps which one carried the claim.
Three ways to state what a program should do
Both lanes leave the same requirement. Only one of them is still open at the bottom of the drawing.
behaviour, constraints and risks, written down once
verified semantic graph plus obligations
the curve is fixed while only the policy changes
the frontier belongs to the objective set
A trade-off plot of latency against memory movement, with target fit drawn as marker size, four non-dominated members joined by the frontier curve, and seven dominated candidates each joined to the member that dominates it