code wiki / _hdl_build / nx_synth_prior_gate.nx
nx_synth_prior_gate.nx
buildroot/runtime/_hdl_build/nx_synth_prior_gate.nx
about
nx_synth_prior_gate.nx -- INNOVATE PAST FunSearch (operator 2026-06-28: "why do they need an llm is it a
synthesis issue and if so what are the alternatives"). GROUNDED ANSWER (researched this session, sources in
the durable artifact): FunSearch/AlphaEvolve use the LLM as a MUTATION/PROPOSAL operator (NOT the evaluator,
which is a separate deterministic scorer). Its only edge over classical genetic programming is SAMPLE
EFFICIENCY via a LEARNED PRIOR over plausible programs (trained on human code). => it IS a synthesis issue,
specifically PROPOSAL/SEARCH-GUIDANCE. The grounded self-contained ALTERNATIVE (no LLM): a PCFG-style LEARNED
PRIOR over grammar productions, fit to the system's OWN solved problems (DreamCoder wake-sleep / "Probe"
just-in-time learning). This gate DEMONSTRATES + MEASURES that alternative: a prior learned from solved specs
guides construct-search to solutions with FAR fewer candidate enumerations than blind order -- replacing the
LLM's proposal function sovereignly. Honest limit (T4): the prior only helps patterns it has SEEN; on truly
novel/cold-start patterns the LLM's broad internet-prior still wins = the real frontier, named not hidden.
T1 correctness preserved: every spec still solved (the prior changes ORDER, not solvability).
T2 MEASURED: warm (learned-prior) total wasted-enumeration << cold (blind) -- report the ratio.
T3 the prior LEARNED to deprioritize the expensive+rare construct (conditional) to LAST.
T4 HONEST LIMIT: a nonlinear out-of-grammar spec is solved by NO construct -> prior gives no edge (cold-start).
T5 WAKE-SLEEP bootstrap: round-2 (prior learned from round-1) << round-1 (cold) = self-improving, NO LLM.
expect_exit: 0 license_tier: ORIGINAL
dependencies 2 imports · 0 importers
imports: nx_ncf_synth.nxnx_syscalls.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| none |
functions
| 22 | func enum_cost(k: i64) -> i64 |
| 32 | func try_kind(k: i64, xs: *i64, ys: *i64, n: i64) -> i64 |
| 43 | func get_spec(idx: i64, xs: *i64, ys: *i64) -> i64 called by 1: solve_suite |
| 57 | func solve_suite(order: *i64, costbox: *i64, solverbox: *i64) -> i64 |
| 78 | func main() -> i64 |