pith. machine review for the scientific record. sign in

IndisputableMonolith.Foundation.OptionAEmpiricalQueue

IndisputableMonolith/Foundation/OptionAEmpiricalQueue.lean · 205 lines · 34 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: pending

   1import Mathlib
   2import IndisputableMonolith.Foundation.OptionAEmpiricalProtocol
   3
   4/-!
   5# Option A Empirical Queue
   6
   7Priority queue for the empirical tests attached to the C1-C9 cross-domain
   8theorems. This is not evidence for the empirical claims. It records which
   9protocols should be tested first and proves that every queued item is already
  10covered by the formal empirical protocol.
  11
  12Lean status: 0 sorry, 0 axiom.
  13-/
  14
  15namespace IndisputableMonolith
  16namespace Foundation
  17namespace OptionAEmpiricalQueue
  18
  19open OptionAFalsifierRegistry
  20open OptionAEmpiricalProtocol
  21
  22inductive Priority where
  23  | immediate
  24  | high
  25  | medium
  26  | defer
  27  deriving DecidableEq, Repr, Fintype
  28
  29theorem priority_count : Fintype.card Priority = 4 := by
  30  decide
  31
  32/-- Empirical priority for the implemented Option A combinations. -/
  33def empiricalPriority : CombinationID → Priority
  34  | .c3OncologyTensor => .immediate
  35  | .c8MillerSpan => .immediate
  36  | .c5AttentionTensor => .high
  37  | .c2PlanetStrata => .high
  38  | .c1CognitiveTensor => .medium
  39  | .c7UniversalResponse => .medium
  40  | .c4QuantumMolecularDepth => .defer
  41  | .c6EriksonReverse => .defer
  42  | .c9RegulatoryCeiling => .high
  43
  44def isImmediate (c : CombinationID) : Prop :=
  45  empiricalPriority c = .immediate
  46
  47def isHighOrImmediate (c : CombinationID) : Prop :=
  48  empiricalPriority c = .immediate ∨ empiricalPriority c = .high
  49
  50theorem c3_immediate : isImmediate .c3OncologyTensor := rfl
  51
  52theorem c8_immediate : isImmediate .c8MillerSpan := rfl
  53
  54theorem c5_high : empiricalPriority .c5AttentionTensor = .high := rfl
  55
  56theorem c2_high : empiricalPriority .c2PlanetStrata = .high := rfl
  57
  58theorem c9_high : empiricalPriority .c9RegulatoryCeiling = .high := rfl
  59
  60theorem c3_protocol_covered :
  61    ProtocolFalsifiable .c3OncologyTensor :=
  62  protocolFalsifiable_all .c3OncologyTensor
  63
  64theorem c8_protocol_covered :
  65    ProtocolFalsifiable .c8MillerSpan :=
  66  protocolFalsifiable_all .c8MillerSpan
  67
  68theorem every_priority_has_protocol (c : CombinationID) :
  69    ProtocolFalsifiable c :=
  70  protocolFalsifiable_all c
  71
  72/-- The two immediate tests are C3 and C8. -/
  73theorem immediate_iff (c : CombinationID) :
  74    isImmediate c ↔ c = .c3OncologyTensor ∨ c = .c8MillerSpan := by
  75  cases c <;> simp [isImmediate, empiricalPriority]
  76
  77/-- High-or-immediate items are the five tests that should precede the rest. -/
  78theorem high_or_immediate_iff (c : CombinationID) :
  79    isHighOrImmediate c ↔
  80      c = .c2PlanetStrata ∨
  81      c = .c3OncologyTensor ∨
  82      c = .c5AttentionTensor ∨
  83      c = .c8MillerSpan ∨
  84      c = .c9RegulatoryCeiling := by
  85  cases c <;> simp [isHighOrImmediate, empiricalPriority]
  86
  87/-- Immediate empirical tests. -/
  88def immediateTests : List CombinationID :=
  89  [.c3OncologyTensor, .c8MillerSpan]
  90
  91/-- High-priority empirical tests after the immediate pair. -/
  92def highPriorityTests : List CombinationID :=
  93  [.c2PlanetStrata, .c5AttentionTensor, .c9RegulatoryCeiling]
  94
  95/-- Medium-priority empirical tests. -/
  96def mediumPriorityTests : List CombinationID :=
  97  [.c1CognitiveTensor, .c7UniversalResponse]
  98
  99/-- Deferred empirical tests. -/
 100def deferredTests : List CombinationID :=
 101  [.c4QuantumMolecularDepth, .c6EriksonReverse]
 102
 103theorem immediateTests_length : immediateTests.length = 2 := by
 104  decide
 105
 106theorem highPriorityTests_length : highPriorityTests.length = 3 := by
 107  decide
 108
 109theorem mediumPriorityTests_length : mediumPriorityTests.length = 2 := by
 110  decide
 111
 112theorem deferredTests_length : deferredTests.length = 2 := by
 113  decide
 114
 115theorem immediateTests_nodup : immediateTests.Nodup := by
 116  decide
 117
 118theorem highPriorityTests_nodup : highPriorityTests.Nodup := by
 119  decide
 120
 121theorem mediumPriorityTests_nodup : mediumPriorityTests.Nodup := by
 122  decide
 123
 124theorem deferredTests_nodup : deferredTests.Nodup := by
 125  decide
 126
 127theorem immediateTests_exact (c : CombinationID) :
 128    c ∈ immediateTests ↔ empiricalPriority c = .immediate := by
 129  cases c <;> simp [immediateTests, empiricalPriority]
 130
 131theorem highPriorityTests_exact (c : CombinationID) :
 132    c ∈ highPriorityTests ↔ empiricalPriority c = .high := by
 133  cases c <;> simp [highPriorityTests, empiricalPriority]
 134
 135theorem mediumPriorityTests_exact (c : CombinationID) :
 136    c ∈ mediumPriorityTests ↔ empiricalPriority c = .medium := by
 137  cases c <;> simp [mediumPriorityTests, empiricalPriority]
 138
 139theorem deferredTests_exact (c : CombinationID) :
 140    c ∈ deferredTests ↔ empiricalPriority c = .defer := by
 141  cases c <;> simp [deferredTests, empiricalPriority]
 142
 143theorem priorityBucketTotal :
 144    immediateTests.length + highPriorityTests.length +
 145      mediumPriorityTests.length + deferredTests.length = 9 := by
 146  rw [immediateTests_length, highPriorityTests_length,
 147    mediumPriorityTests_length, deferredTests_length]
 148
 149structure EmpiricalQueueCert where
 150  four_priorities : Fintype.card Priority = 4
 151  c3_now : isImmediate .c3OncologyTensor
 152  c8_now : isImmediate .c8MillerSpan
 153  c5_next : empiricalPriority .c5AttentionTensor = .high
 154  c2_next : empiricalPriority .c2PlanetStrata = .high
 155  c9_next : empiricalPriority .c9RegulatoryCeiling = .high
 156  all_have_protocol : ∀ c : CombinationID, ProtocolFalsifiable c
 157  immediate_classification :
 158    ∀ c : CombinationID, isImmediate c ↔
 159      c = .c3OncologyTensor ∨ c = .c8MillerSpan
 160  high_or_immediate_classification :
 161    ∀ c : CombinationID, isHighOrImmediate c ↔
 162      c = .c2PlanetStrata ∨
 163      c = .c3OncologyTensor ∨
 164      c = .c5AttentionTensor ∨
 165      c = .c8MillerSpan ∨
 166      c = .c9RegulatoryCeiling
 167  immediate_count : immediateTests.length = 2
 168  high_count : highPriorityTests.length = 3
 169  medium_count : mediumPriorityTests.length = 2
 170  defer_count : deferredTests.length = 2
 171  bucket_total : immediateTests.length + highPriorityTests.length +
 172    mediumPriorityTests.length + deferredTests.length = 9
 173  immediate_exact : ∀ c : CombinationID,
 174    c ∈ immediateTests ↔ empiricalPriority c = .immediate
 175  high_exact : ∀ c : CombinationID,
 176    c ∈ highPriorityTests ↔ empiricalPriority c = .high
 177  medium_exact : ∀ c : CombinationID,
 178    c ∈ mediumPriorityTests ↔ empiricalPriority c = .medium
 179  defer_exact : ∀ c : CombinationID,
 180    c ∈ deferredTests ↔ empiricalPriority c = .defer
 181
 182def empiricalQueueCert : EmpiricalQueueCert where
 183  four_priorities := priority_count
 184  c3_now := c3_immediate
 185  c8_now := c8_immediate
 186  c5_next := c5_high
 187  c2_next := c2_high
 188  c9_next := c9_high
 189  all_have_protocol := every_priority_has_protocol
 190  immediate_classification := immediate_iff
 191  high_or_immediate_classification := high_or_immediate_iff
 192  immediate_count := immediateTests_length
 193  high_count := highPriorityTests_length
 194  medium_count := mediumPriorityTests_length
 195  defer_count := deferredTests_length
 196  bucket_total := priorityBucketTotal
 197  immediate_exact := immediateTests_exact
 198  high_exact := highPriorityTests_exact
 199  medium_exact := mediumPriorityTests_exact
 200  defer_exact := deferredTests_exact
 201
 202end OptionAEmpiricalQueue
 203end Foundation
 204end IndisputableMonolith
 205

source mirrored from github.com/jonwashburn/shape-of-logic