Documentation

Studies.FaginHalpern1994

Fagin and Halpern (1994): Reasoning about Knowledge and Probability #

This file formalizes the Kripke structures for knowledge and probability of [FH94] and the probabilistic common knowledge of its Section 5. A KripkeProb adds to the accessibility relations of multi-agent epistemic logic (Logic/Modal/Epistemic) a probability space for each agent at each state: a sample space S_{i,s} of states and a probability measure μ_{i,s} carried by it. The probability formula w_i(φ) ≥ b, "according to agent i, φ holds with probability at least b", is the set of states AtLeast b i φ. Knowledge and probability are otherwise independent, so an agent need not know their own probability space, which is what lets the paper's coin-toss example come out right. The conditions the paper considers on the pair are CONS (the sample space lies within the states the agent considers possible), OBJ (all agents share one space), SDP (the space is determined by the agent's information cell) and UNIF (the space is the same at every state of the sample space); UNIF.of_cons_sdp is the paper's remark that the first and third imply the fourth. The correspondence of Section 4 between these conditions and axioms is proved in its sound direction: W7, knowledge implies probability one under CONS (real_eq_one_of_knows); W9, a probability formula true at a state has probability one there under UNIF (UNIF.real_atLeast_eq_one, UNIF.real_compl_atLeast_eq_one); W10, a probability formula true at a state is known there under SDP (SDP.knows_atLeast, SDP.knows_compl_atLeast); and Miller's principle w_i(φ) ≥ b · w_i(w_i(φ) ≥ b), which UNIF validates (UNIF.miller).

Section 5 defines E_G^b φ (EveryoneProb: every member of G knows that their probability of φ is at least b) and probabilistic common knowledge C_G^b φ (CommonProb) as the intersection of the iterates (F_G^b)^k φ of X ↦ E_G^b (φ ∩ X) rather than of the iterates of E_G^b alone. commonProb_eq_gfp is Lemma 5.1: C_G^b φ is the greatest fixed point of X ⇔ E_G^b (φ ∧ X). The four-state structure fig1 of Figure 1 is the paper's reason for the detour: the naive infinite conjunction E_G^b φ ∧ (E_G^b)² φ ∧ ⋯ (Naive) holds at s₁ (fig1_naive), E_G^{1/2} p fails at s₂ and s₃ (fig1_everyoneProb), and so the conjunction is not a solution of the equation (fig1_naive_not_fixedPoint) while the paper's C_G^{1/2} p is empty (fig1_commonProb).

Implementation notes #

References #

structure FaginHalpern1994.KripkeProb (E : Type u_1) (W : Type u_2) [MeasurableSpace W] :
Type (max u_1 u_2)

A Kripke structure for knowledge and probability (S, π, 𝒦₁, …, 𝒦ₙ, 𝒫): accessibility relations and, for each agent at each state, a probability space on a sample space of states. The valuation π is the ambient Set W.

  • access : E → SetRel W W

    Agent i considers t possible at s.

  • sample : E → W → Set W

    The sample space S_{i,s}.

  • prob : E → W → MeasureTheory.Measure W

    The probability measure μ_{i,s}.

  • isProbabilityMeasure (i : E) (s : W) : MeasureTheory.IsProbabilityMeasure (self.prob i s)
  • prob_compl_sample (i : E) (s : W) : (self.prob i s) (self.sample i s)ᶜ = 0

    μ_{i,s} is carried by the sample space.

Instances For
    instance FaginHalpern1994.KripkeProb.instIsProbabilityMeasureProb {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (i : E) (s : W) :
    MeasureTheory.IsProbabilityMeasure (M.prob i s)
    theorem FaginHalpern1994.KripkeProb.prob_inter_sample {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (i : E) (s : W) (φ : Set W) :
    (M.prob i s) (φ ∩ M.sample i s) = (M.prob i s) φ

    μ_{i,s}(S_{i,s}(φ)) = μ_{i,s}(φ): cutting a proposition down to the sample space changes nothing.

    def FaginHalpern1994.KripkeProb.AtLeast {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (b : ℝ) (i : E) (φ : Set W) :
    Set W

    The probability formula w_i(φ) ≥ b.

    Equations
    • M.AtLeast b i φ = {s : W | b ≤ (M.prob i s).real φ}
    Instances For
      theorem FaginHalpern1994.KripkeProb.AtLeast.mono {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {b : ℝ} {φ ψ : Set W} (h : φ ⊆ ψ) :
      M.AtLeast b i φ ⊆ M.AtLeast b i ψ

      Conditions relating knowledge and probability #

      def FaginHalpern1994.KripkeProb.CONS {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) :

      CONS: the sample space lies within the states the agent considers possible.

      Equations
      Instances For
        def FaginHalpern1994.KripkeProb.OBJ {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) :

        OBJ: all agents have the same probability space at each state.

        Equations
        Instances For
          def FaginHalpern1994.KripkeProb.SDP {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) :

          SDP: the probability space is determined by the agent's information cell.

          Equations
          Instances For
            def FaginHalpern1994.KripkeProb.UNIF {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) :

            UNIF: the probability space is the same at every state of the sample space.

            Equations
            Instances For
              theorem FaginHalpern1994.KripkeProb.UNIF.of_cons_sdp {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} (hc : M.CONS) (hs : M.SDP) :

              CONS and SDP together imply UNIF.

              theorem FaginHalpern1994.KripkeProb.real_eq_one_of_sample_subset {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s : W} {φ : Set W} (h : M.sample i s ⊆ φ) :
              (M.prob i s).real φ = 1

              A superset of the sample space has probability one.

              theorem FaginHalpern1994.KripkeProb.real_eq_zero_of_subset_compl_sample {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s : W} {φ : Set W} (h : φ ⊆ (M.sample i s)ᶜ) :
              (M.prob i s).real φ = 0

              A set missing the sample space has probability zero.

              theorem FaginHalpern1994.KripkeProb.real_eq_one_of_knows {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s : W} {φ : Set W} (hc : M.CONS) (h : s ∈ (M.access i).core φ) :
              (M.prob i s).real φ = 1

              Axiom W7, K_i φ ⇒ (w_i(φ) = 1), sound under CONS.

              theorem FaginHalpern1994.KripkeProb.UNIF.mem_atLeast_iff {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s t : W} {b : ℝ} {φ : Set W} (hu : M.UNIF) (ht : t ∈ M.sample i s) :
              t ∈ M.AtLeast b i φ ↔ s ∈ M.AtLeast b i φ

              Under UNIF an i-probability formula has one truth value across S_{i,s}.

              theorem FaginHalpern1994.KripkeProb.UNIF.real_atLeast_eq_one {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s : W} {b : ℝ} {φ : Set W} (hu : M.UNIF) (hs : s ∈ M.AtLeast b i φ) :
              (M.prob i s).real (M.AtLeast b i φ) = 1

              Axiom W9 for a positive i-probability formula, sound under UNIF.

              theorem FaginHalpern1994.KripkeProb.UNIF.real_compl_atLeast_eq_one {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s : W} {b : ℝ} {φ : Set W} (hu : M.UNIF) (hs : s ∉ M.AtLeast b i φ) :
              (M.prob i s).real (M.AtLeast b i φ)ᶜ = 1

              Axiom W9 for the negation of an i-probability formula, sound under UNIF.

              theorem FaginHalpern1994.KripkeProb.UNIF.real_atLeast_eq_zero {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s : W} {b : ℝ} {φ : Set W} (hu : M.UNIF) (hs : s ∉ M.AtLeast b i φ) :
              (M.prob i s).real (M.AtLeast b i φ) = 0
              theorem FaginHalpern1994.KripkeProb.SDP.mem_atLeast_iff {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s t : W} {b : ℝ} {φ : Set W} (hs : M.SDP) (h : (s, t) ∈ M.access i) :
              t ∈ M.AtLeast b i φ ↔ s ∈ M.AtLeast b i φ

              Under SDP an i-probability formula has one truth value across 𝒦_i(s).

              theorem FaginHalpern1994.KripkeProb.SDP.knows_atLeast {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s : W} {b : ℝ} {φ : Set W} (hsdp : M.SDP) (h : s ∈ M.AtLeast b i φ) :
              s ∈ (M.access i).core (M.AtLeast b i φ)

              Axiom W10 for a positive i-probability formula, sound under SDP.

              theorem FaginHalpern1994.KripkeProb.SDP.knows_compl_atLeast {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {i : E} {s : W} {b : ℝ} {φ : Set W} (hsdp : M.SDP) (h : s ∉ M.AtLeast b i φ) :
              s ∈ (M.access i).core (M.AtLeast b i φ)ᶜ

              Axiom W10 for the negation of an i-probability formula, sound under SDP.

              theorem FaginHalpern1994.KripkeProb.UNIF.miller {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} (hu : M.UNIF) (b : ℝ) (i : E) (φ : Set W) (s : W) :
              b * (M.prob i s).real (M.AtLeast b i φ) ≤ (M.prob i s).real φ

              Miller's principle w_i(φ) ≥ b · w_i(w_i(φ) ≥ b), which UNIF validates.

              Probabilistic common knowledge #

              def FaginHalpern1994.KripkeProb.EveryoneProb {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (G : Set E) (b : ℝ) (φ : Set W) :
              Set W

              E_G^b φ: every member of G knows that their probability of φ is at least b.

              Equations
              Instances For
                theorem FaginHalpern1994.KripkeProb.EveryoneProb.mono {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {b : ℝ} {φ ψ : Set W} {G : Set E} (h : φ ⊆ ψ) :
                M.EveryoneProb G b φ ⊆ M.EveryoneProb G b ψ
                theorem FaginHalpern1994.KripkeProb.everyoneProb_empty {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {b : ℝ} {G : Set E} [∀ (i : E), (M.access i).IsRefl] (hG : G.Nonempty) (hb : 0 < b) :
                M.EveryoneProb G b ∅ = ∅

                With a reflexive accessibility and a positive threshold nobody assigns ∅ probability b.

                def FaginHalpern1994.KripkeProb.everyoneProbHom {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (G : Set E) (b : ℝ) (φ : Set W) :
                Set W →o Set W

                The operator X ↦ E_G^b (φ ∩ X) whose greatest fixed point is C_G^b φ.

                Equations
                Instances For
                  def FaginHalpern1994.KripkeProb.F {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (G : Set E) (b : ℝ) (φ : Set W) :
                  ℕ → Set W

                  The iterates (F_G^b)^k φ: (F_G^b)^0 φ = true and (F_G^b)^{k+1} φ = E_G^b(φ ∧ (F_G^b)^k φ).

                  Equations
                  • M.F G b φ 0 = Set.univ
                  • M.F G b φ k.succ = M.EveryoneProb G b (φ ∩ M.F G b φ k)
                  Instances For
                    def FaginHalpern1994.KripkeProb.CommonProb {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (G : Set E) (b : ℝ) (φ : Set W) :
                    Set W

                    C_G^b φ: (F_G^b)^k φ for all k ≥ 1.

                    Equations
                    • M.CommonProb G b φ = ⋂ (k : ℕ), M.F G b φ (k + 1)
                    Instances For
                      def FaginHalpern1994.KripkeProb.Naive {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (G : Set E) (b : ℝ) (φ : Set W) :
                      Set W

                      The naive infinite conjunction E_G^b φ ∧ (E_G^b)² φ ∧ ⋯.

                      Equations
                      Instances For
                        theorem FaginHalpern1994.KripkeProb.F_antitone {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (G : Set E) (b : ℝ) (φ : Set W) :
                        Antitone (M.F G b φ)
                        theorem FaginHalpern1994.KripkeProb.commonProb_subset_F {E : Type u_1} {W : Type u_2} [MeasurableSpace W] (M : KripkeProb E W) (G : Set E) (b : ℝ) (φ : Set W) (k : ℕ) :
                        M.CommonProb G b φ ⊆ M.F G b φ k
                        theorem FaginHalpern1994.KripkeProb.subset_commonProb {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {b : ℝ} {φ : Set W} {G : Set E} {X : Set W} (h : X ⊆ M.EveryoneProb G b (φ ∩ X)) :
                        X ⊆ M.CommonProb G b φ

                        Any solution of X ⊆ E_G^b(φ ∧ X) lies below C_G^b φ.

                        theorem FaginHalpern1994.KripkeProb.everyoneProb_inter_commonProb_subset {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {b : ℝ} {φ : Set W} {G : Set E} :
                        M.EveryoneProb G b (φ ∩ M.CommonProb G b φ) ⊆ M.CommonProb G b φ
                        theorem FaginHalpern1994.KripkeProb.commonProb_subset_everyoneProb_inter {E : Type u_1} {W : Type u_2} [MeasurableSpace W] {M : KripkeProb E W} {b : ℝ} {φ : Set W} {G : Set E} [DiscreteMeasurableSpace W] :
                        M.CommonProb G b φ ⊆ M.EveryoneProb G b (φ ∩ M.CommonProb G b φ)

                        C_G^b φ solves X ⊆ E_G^b(φ ∧ X): continuity from above turns the threshold on every φ ∧ (F_G^b)^k φ into the threshold on their intersection.

                        theorem FaginHalpern1994.KripkeProb.commonProb_eq_gfp {E : Type u_1} {W : Type u_2} [MeasurableSpace W] [DiscreteMeasurableSpace W] (M : KripkeProb E W) (G : Set E) (b : ℝ) (φ : Set W) :
                        M.CommonProb G b φ = OrderHom.gfp (M.everyoneProbHom G b φ)

                        Lemma 5.1: C_G^b φ is the greatest fixed point of X ⇔ E_G^b(φ ∧ X).

                        Figure 1 #

                        Four states s₁, …, s₄ (here 0, …, 3), agent 1 unable to distinguish s₁ from s₂ and s₃ from s₄, agent 2 unable to distinguish s₁ from s₃ and s₂ from s₄, p true at s₂ and s₃. The structure satisfies SDP: agent 1 at s₁, s₂ puts 1/2 on each of s₁, s₂, agent 2 at s₁, s₃ puts 1/2 on each of s₁, s₃, and both put probability one on s₄ at the states of their other cell.

                        def FaginHalpern1994.fig1Cell (i : Fin 2) (s : Fin 4) :
                        Fin 2

                        Agent i's information cell of state s.

                        Equations
                        • FaginHalpern1994.fig1Cell i s = match ↑i, ↑s with | 0, 0 => 0 | 0, 1 => 0 | 0, x => 1 | x, 0 => 0 | x, 2 => 0 | x, x_1 => 1
                        Instances For
                          def FaginHalpern1994.fig1Weight (i : Fin 2) (s t : Fin 4) :
                          ℕ

                          The weights of μ_{i,s} over the states.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def FaginHalpern1994.fig1P :
                            Set (Fin 4)

                            p of Figure 1, true at s₂ and s₃.

                            Equations
                            Instances For
                              theorem FaginHalpern1994.fig1Weight_pos (i : Fin 2) (s : Fin 4) :
                              0 < ∑ t : Fin 4, fig1Weight i s t
                              noncomputable def FaginHalpern1994.fig1 :
                              KripkeProb (Fin 2) (Fin 4)

                              The Kripke structure M of Figure 1.

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                theorem FaginHalpern1994.fig1_atLeast_iff (i : Fin 2) (t : Fin 4) (p : Fin 4 → Prop) [DecidablePred p] :
                                t ∈ fig1.AtLeast (1 / 2) i {u : Fin 4 | p u} ↔ ∑ u : Fin 4, fig1Weight i t u ≤ 2 * ∑ u : Fin 4 with p u, fig1Weight i t u

                                Every threshold comparison in fig1 is an inequality between weight sums.

                                E_G^{1/2} p holds at s₁ alone: (b) and (c) of the paper's check.

                                theorem FaginHalpern1994.fig1_naive :
                                fig1.Naive Set.univ (1 / 2) fig1P = {0}

                                (a): the naive conjunction E_G^{1/2} p ∧ (E_G^{1/2})² p ∧ ⋯ holds exactly at s₁.

                                theorem FaginHalpern1994.fig1_naive_not_fixedPoint :
                                ¬fig1.Naive Set.univ (1 / 2) fig1P ⊆ fig1.EveryoneProb Set.univ (1 / 2) (fig1P ∩ fig1.Naive Set.univ (1 / 2) fig1P)

                                The naive conjunction is not a solution of X ⇔ E_G^{1/2}(p ∧ X).

                                theorem FaginHalpern1994.fig1_commonProb :
                                fig1.CommonProb Set.univ (1 / 2) fig1P = ∅

                                C_G^{1/2} p is empty: (F_G^{1/2})² p = E_G^{1/2}(p ∧ E_G^{1/2} p) = ∅.