mercurial.consciousness.perception module

Bayesian perception as variational free energy minimization (MERCURIAL D).

class mercurial.consciousness.perception.VariationalPerception(prior_strength: float = 1.0, learning_rate: float = 0.1)[source]

Bases: object

Implements perception as pattern completion: - Bottom‑up: sensory input constrains conscious state - Top‑down: prior expectations bias interpretation - Minimizes variational free energy F_perc = KL[q||p] - E_q[log p(s|h)]

Methods

free_energy(sensory_input, hidden_state[, prior])

F = ||sensory - hidden||^2 + β_prior ||hidden - prior||^2 This is a simplified Gaussian approximation.

infer_hidden_state(sensory_input[, prior, ...])

Gradient descent on F to find the most likely hidden state (percept).

update_consciousness_from_reality(...)

Bottom‑up update: consciousness pattern is pulled toward reality pattern via variational inference.

free_energy(sensory_input: ndarray, hidden_state: ndarray, prior: ndarray | None = None) float[source]

F = ||sensory - hidden||^2 + β_prior ||hidden - prior||^2 This is a simplified Gaussian approximation.

infer_hidden_state(sensory_input: ndarray, prior: ndarray | None = None, max_iter: int = 20) ndarray[source]

Gradient descent on F to find the most likely hidden state (percept).

update_consciousness_from_reality(consciousness_pattern: Pattern, reality_pattern: Pattern) Pattern[source]

Bottom‑up update: consciousness pattern is pulled toward reality pattern via variational inference. This implements reality → consciousness causation.