structure
definition
Chain
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.Recognition on GitHub at line 35.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
-
Chain -
RecognitionStructure -
U -
succ -
RecognitionStructure -
M -
RecognitionStructure -
U -
M -
Chain -
RecognitionStructure -
succ -
RecognitionStructure
used by
-
GradedLedger -
Chain -
chainFlux -
Conserves -
last -
RecognitionStructure -
T3_continuity -
balance_determines_lambda -
lambda_rec_is_forced -
planck_gate_normalized -
eta -
Generator -
separable_forces_additive -
rcl_unconditional -
FrameworkConstraints -
concrete_implies_no_alternatives -
E_coh_pos -
J_cost_motivates_additive_composition -
minimal_closure_sufficient -
jcost_stationarity_implies_regge -
selfAware_max_richness -
voice_berry_positive -
fibonacci_connection_explained -
partial_weight_reduction -
jacobi_variation_structural -
n_s_at_55_from_jcost -
rs_exists_iff_zero_cost -
current_chain_distinct -
rh_from_composition_closure -
defect_implies_zero_free -
lepton_sector_is_derived -
structural_mass_bounds -
edge_over_cube_vertices_eq_face_over_face_vertices -
IsRecognizerInduced -
chainFlux -
chainFlux_zero_of_balanced -
chainFlux_zero_of_loop -
Conserves -
last -
twoStep
formal source
32 U : Type
33 R : U → U → Prop
34
35structure Chain (M : RecognitionStructure) where
36 n : Nat
37 f : Fin (n+1) → M.U
38 ok : ∀ i : Fin n, M.R (f i.castSucc) (f i.succ)
39
40namespace Chain
41variable {M : RecognitionStructure} (ch : Chain M)
42def head : M.U := by
43 have hpos : 0 < ch.n + 1 := Nat.succ_pos _
44 exact ch.f ⟨0, hpos⟩
45def last : M.U := by
46 have hlt : ch.n < ch.n + 1 := Nat.lt_succ_self _
47 exact ch.f ⟨ch.n, hlt⟩
48end Chain
49
50structure Ledger (M : RecognitionStructure) where
51 debit : M.U → ℤ
52 credit : M.U → ℤ
53
54@[simp] def Ledger.Carrier {M : RecognitionStructure} (_ : Ledger M) : Type :=
55 M.U
56
57def phi {M} (L : Ledger M) : M.U → ℤ := fun u => L.debit u - L.credit u
58
59def chainFlux {M} (L : Ledger M) (ch : Chain M) : ℤ :=
60 phi L (Chain.last ch) - phi L (Chain.head ch)
61
62class Conserves {M} (L : Ledger M) : Prop where
63 conserve : ∀ ch : Chain M, ch.head = ch.last → chainFlux L ch = 0
64
65lemma chainFlux_zero_of_loop {M} (L : Ledger M) [Conserves L] (ch : Chain M) (h : ch.head = ch.last) :