Skip to main content

Module trace_genome

Module trace_genome 

Source
Expand description

The fugue trace encoding of genomes (ppl feature).

This module is the boundary between the classic evolutionary-computation layer and the PPL-native inference layer: a genome that implements TraceGenome can be round-tripped through a [fugue::Trace] and therefore driven by the trace-space machinery in crate::inference (MH rejuvenation, tempered SMC, block regeneration).

The encoding produced by TraceGenome::to_trace is canonical — an address→value map at the genome’s site addresses (gene#i, bit#i, perm#i, …) with zero stored log-probabilities. Probability mass is never carried by this encoding; it is recovered by scoring the trace under a genuine prior model (see crate::inference::prior::GenomePrior), which is also how the inference layer decodes a genome from a particle (decode-by-replay).

Enums§

ChoiceValue
Type-safe storage for values from different distribution types.

Traits§

TraceGenome
Extension trait: genomes that can be encoded as fugue traces.

Functions§

gene_address
Helper function to create a gene address for trace storage