Documentation

Linglib.Core.Scales.EpistemicScale.Conditional

Conditional Plausibility and Probabilistic Update #

@cite{halpern-2003} @cite{jeffrey-1965}@cite{halpern-2003} axiomatizes conditional plausibility measures, generalizing Bayesian conditioning, Popper spaces, Jeffrey's rule, and imaging under a single algebraic framework (Cond1–Cond4).

This file formalizes:

  1. Conditional probability measures (Popper space axioms P1–P4)
  2. The ratio construction (Halpern Thm 3.3.1): FinAddMeasure → CondMeasure
  3. Jeffrey's rule: update under uncertain evidence
  4. Conditioning modes: classifying the update operations across linglib

Conditioning Unification #

Four conditioning operations in linglib are instances of conditional plausibility:

ModuleOperationMode
EpistemicScale/ConditionalcondMu A BBayesian (ratio)
BayesianSemanticsFinitePMF.probBayesian (marginalization)
Dynamic/Core/UpdateInfoState.update s φEliminative
SDS/MeasureTheory(placeholder)Continuous Bayesian

The eliminative mode is the special case where P(A|B) ∈ {0, 1}: each world either survives or is eliminated.

Classification of conditioning modes used across linglib.

  • eliminative: keep only worlds satisfying evidence. The resulting measure is 0/1-valued. (Dynamic/Core/Update.lean)
  • bayesian: P(A|B) = P(A ∩ B)/P(B). Standard ratio conditioning. (BayesianSemantics.lean, this file)
  • jeffrey: update with uncertain evidence over a partition. Generalizes Bayesian: P'(A) = Σᵢ P(A|Eᵢ) · q(Eᵢ).
Instances For
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      structure Core.Scale.CondMeasure (W : Type u_1) extends Core.Scale.FinAddMeasure W :
      Type u_1

      A conditional probability measure: P(A | B) axiomatized directly.

      Extends FinAddMeasure with a conditional component satisfying Popper's axioms (@cite{halpern-2003}, Ch. 3, Cond1–Cond4). A set B is normal if P(B|B) ≠ 0; for normal B, P(B|B) = 1. The only abnormal set (for finite W with positive singletons) is ∅.

      Instances For
        def Core.Scale.CondMeasure.condGe {W : Type u_1} (m : CondMeasure W) (A C B : Set W) :

        Conditional comparison: A ≿_B C iff P(A|B) ≥ P(C|B).

        Equations
        Instances For
          def Core.Scale.CondMeasure.posterior {W : Type u_1} (m : CondMeasure W) (B : Set W) :
          Set W

          Posterior measure given evidence B: P_B(A) := P(A|B).

          Equations
          Instances For
            theorem Core.Scale.CondMeasure.bayes {W : Type u_1} (m : CondMeasure W) (A B : Set W) :

            Bayes' theorem: P(A|B) · P(B) = P(B|A) · P(A). Follows from the chain rule applied in two directions: P(A ∩ B | Ω) = P(A | B) · P(B | Ω) = P(B | A) · P(A | Ω).

            Construct conditional probability via the ratio P(A|B) = μ(A ∩ B)/μ(B).

            @cite{halpern-2003}, Theorem 3.3.1: every finitely additive measure extends to a conditional measure satisfying P1–P4 via this construction. When μ(B) = 0, P(A|B) = 0 (B is "abnormal" in Popper's sense).

            In Lean's ℚ arithmetic, division by zero yields 0, so the abnormal case is handled automatically.

            Equations
            • m.toCondMeasure = { toFinAddMeasure := m, condMu := fun (A B : Set W) => m.mu (A B) / m.mu B, cond_nonneg := , cond_norm := , cond_additive := , cond_chain := , cond_univ := }
            Instances For
              structure Core.Scale.EvidencePartition (W : Type u_1) :
              Type u_1

              An evidence partition: a finite collection of mutually exclusive, exhaustive propositions with new probability assignments.

              Instances For
                def Core.Scale.jeffreyUpdate {W : Type u_1} (m : CondMeasure W) (ev : EvidencePartition W) :
                Set W

                Jeffrey's rule: update a conditional measure with uncertain evidence.

                Given a partition {E₁,..., Eₙ} with new probabilities q₁,..., qₙ: P'(A) = Σᵢ P(A | Eᵢ) · qᵢ

                This generalizes Bayesian conditioning: standard conditioning on E is the special case where qₑ = 1 and all other qᵢ = 0.

                @cite{jeffrey-1965}, The Logic of Decision; @cite{halpern-2003} §3.4.

                Equations
                Instances For
                  theorem Core.Scale.jeffreyUpdate_nonneg {W : Type u_1} (m : CondMeasure W) (ev : EvidencePartition W) (A : Set W) :
                  theorem Core.Scale.bayesian_is_jeffrey {W : Type u_1} (m : CondMeasure W) (B : Set W) (_hB : m.condMu B B 0) (A : Set W) :
                  m.condMu A B = jeffreyUpdate m { cells := [B], weights := [1], aligned := , weights_nonneg := , weights_sum := } A

                  Bayesian conditioning is Jeffrey conditioning with a point partition.

                  theorem Core.Scale.condMeasure_systemW_per_evidence {W : Type u_1} (m : CondMeasure W) (B : Set W) :
                  EpistemicAxiom.R fun (A C : Set W) => m.condGe A C B

                  A conditional measure induces a conditional epistemic comparison: A ≿_B C iff P(A|B) ≥ P(C|B). This conditional comparison satisfies reflexivity and monotonicity (System W axioms) for each fixed B.

                  def Core.Scale.CondMeasure.inducedCondGe {W : Type u_1} (m : CondMeasure W) (A C B : Set W) :

                  A conditional measure extends to a conditional comparison on propositions: A is conditionally at least as likely as C given B iff P(A|B) ≥ P(C|B). This is the conditional version of FinAddMeasure.inducedGe.

                  Equations
                  Instances For