pith. machine review for the scientific record. sign in
structure

ProtocolSpec

definition
show as:
view math explainer →
module
IndisputableMonolith.Foundation.OptionAEmpiricalProtocol
domain
Foundation
line
24 · github
papers citing
none yet

open explainer

Read the cached plain-language explainer.

open lean source

IndisputableMonolith.Foundation.OptionAEmpiricalProtocol on GitHub at line 24.

browse module

All declarations in this module, on Recognition.

explainer page

A cached Ask Recognition explainer exists for this declaration.

open explainer

depends on

used by

formal source

  21open OptionAFalsifierRegistry
  22
  23/-- Complete empirical protocol record for one combination. -/
  24structure ProtocolSpec where
  25  dataset : DatasetClass
  26  observable : PredictedObservable
  27  failure : FailureMode
  28  deriving DecidableEq, Repr
  29
  30/-- The empirical protocol associated to a combination. -/
  31def protocolSpec (c : CombinationID) : ProtocolSpec where
  32  dataset := datasetClass c
  33  observable := predictedObservable c
  34  failure := failureMode c
  35
  36/-- A combination is protocol-falsifiable when it has a dataset class, a
  37predicted observable, and a failure mode in the registry. -/
  38def ProtocolFalsifiable (c : CombinationID) : Prop :=
  39  ∃ d : DatasetClass, ∃ o : PredictedObservable, ∃ f : FailureMode,
  40    datasetClass c = d ∧ predictedObservable c = o ∧ failureMode c = f
  41
  42theorem protocolFalsifiable_all (c : CombinationID) :
  43    ProtocolFalsifiable c := by
  44  unfold ProtocolFalsifiable
  45  exact ⟨datasetClass c, predictedObservable c, failureMode c, rfl, rfl, rfl⟩
  46
  47/-- A concrete protocol record matches a combination when all three fields agree. -/
  48def ProtocolMatches (c : CombinationID) (p : ProtocolSpec) : Prop :=
  49  p.dataset = datasetClass c ∧
  50    p.observable = predictedObservable c ∧
  51    p.failure = failureMode c
  52
  53theorem protocolSpec_matches (c : CombinationID) :
  54    ProtocolMatches c (protocolSpec c) := by