manyvalued
Safe HaskellNone
LanguageGHC2024

Circuit.Logics.Process

Description

Judgment processes: streaming machines that emit multi-valued logic.

Process obs H3 is the flagship shape — Moore machines whose timeline is a sequence of epistemic verdicts. This module is a compile target for agentsensorparser-style "are we decided yet?" stories on top of Circuit.Process.

Synopsis

Threshold judges

voteH3 :: Int -> Process Bool H3 Source #

Majority-style judge on Bool votes.

Emits HTrue / HFalse once one side reaches threshold k and leads; otherwise HUnknown. Verdicts are revisable if the other side catches up (no latch).

voteLatchH3 :: Int -> Process Bool H3 Source #

Like voteH3 but freezes the first decided verdict.

Combinators on H3 streams

consensusProc :: Process a H3 -> Process a H3 -> Process a H3 Source #

Pointwise consensus of two H3 streams (same observation).

State is a pair of sub-states; extract is consensusH3.

latchProc :: Process a H3 -> Process a H3 Source #

Running latch over an H3-producing process.

Gödel degree process

ewmaGoedel :: Double -> Process Double (Goedel Double) Source #

Exponentially weighted moving average of [0,1] samples as Gödel degrees.

ewmaGoedel alpha uses smoothing factor alpha ∈ (0,1].