Encyclopedia Foundation Foundation Linking Numbers

ARTICLE 5 claims 5 theorems

Foundation Linking Numbers

Linking numbers are integer-valued topological invariants of pairs of closed lattice paths, and their formalization establishes that non-trivial linking exists only in three dimensions.

Linking Numbers

Linking numbers are a topological invariant that counts how many times one closed curve winds around another. In Recognition Science, they are defined on pairs of closed paths in a D-dimensional integer lattice. The module LinkingNumbers.the kernel-checked library formalizes this concept and proves the key results that connect topology to conservation.

The central theorem, linking_gives_conservation, establishes that in three dimensions, linked pairs of closed paths exist, their linking numbers are integers, and there are exactly three independent charges. This is the concrete topological invariant that supports the claim that D = 3 allows non-trivial linking, a step beyond the winding numbers of single paths.

The module proves that an explicit linked pair, the Hopf link, exists in D = 3 (hopf_link_exists_D3), and that its linking number is 1 (hopf_linking_number). It also proves that in one dimension, all closed paths have zero winding number (D1_all_closed_trivial), so no non-trivial linking is possible. The summary theorem linking_dimension_summary states that D = 1 has no independent loops, D = 2 has one loop but no linking, and D = 3 has three loops with linking.

The linking number is invariant under local deformations that cancel pairs of steps (linking_preserved_under_deformation). This invariance is what makes it a true topological invariant, not just an artifact of a particular path representation. The existence of this invariant in D = 3 is what forces the physical dimension to be three, as stated in linking_dimension_summary.

THEOREM linking_gives_conservation · IndisputableMonolith/Foundation/LinkingNumbers.lean
linking_gives_conservation · IndisputableMonolith/Foundation/LinkingNumbers.lean:296
/-- **THEOREM (Linking → Conservation)**:
    A linked pair of world-lines carries a conserved integer charge:
    the linking number. Since:
    1. Linking numbers are integers (Part 6)
    2. Linking is preserved under local deformations (Part 5)
    3. The variational dynamics acts by local deformations
    The linking number is conserved along any trajectory.

    This is the mechanism by which topology produces conservation:
    - Electric charge = linking number of an electron world-line with
      the electromagnetic field
    - Baryon number = linking number of quark world-lines with the
      QCD vacuum
    - Lepton number = linking number of lepton world-lines with the
      weak field

    Three independent linking numbers in D = 3 → three conserved charges. -/
theorem linking_gives_conservation :
    -- 1. Linked pairs exist in D = 3
    Nonempty (LinkedPair 3) ∧
    -- 2. Linking numbers are integers
    (∀ lp : LinkedPair 3, ∃ n : ℤ, linking_number lp = n) ∧
    -- 3. Both curves are closed
    (∀ lp : LinkedPair 3, is_closed lp.curve₁ ∧ is_closed lp.curve₂) ∧
    -- 4. Three independent charges in D = 3
    (Fintype.card (Fin 3) = 3) :=
  ⟨⟨hopf_link⟩,
   linking_number_integer,
   fun lp => ⟨lp.closed₁, lp.closed₂⟩,
   Fintype.card_fin 3⟩
THEOREM hopf_link_exists_D3 · hopf_linking_number · IndisputableMonolith/Foundation/LinkingNumbers.lean
/-- The Hopf link has linking number 1 (or -1 depending on orientation). -/
theorem hopf_linking_number : linking_number hopf_link = 1 := rfl
THEOREM D1_all_closed_trivial · IndisputableMonolith/Foundation/LinkingNumbers.lean
/-- **THEOREM (No Linking in D = 1)**:
    Every closed path in D = 1 has the property that it returns to its
    starting position. Since ℤ¹ is one-dimensional, two non-intersecting
    closed paths cannot wind around each other. One is always "to the left"
    or "to the right" of the other.

    Formally: every closed path in D = 1 can be decomposed into
    cancelling pairs (it is a product of backtrack moves). -/
theorem D1_all_closed_trivial :
    ∀ (p : LatticePath 1), is_closed p →
      winding_number p ⟨0, by norm_num⟩ = 0 := by
  intro p h
  exact h ⟨0, by norm_num⟩

/- In D = 1, there is only ONE axis. Two closed paths that don't
   intersect are separated by ℤ order: one is entirely to the left of
   the other. There is no room to "link." -/
THEOREM linking_dimension_summary · IndisputableMonolith/Foundation/LinkingNumbers.lean
/-- **THEOREM (Linking Summary Across Dimensions)**:

    | D | Independent loops | Linking possible? | Conservation charges |
    |---|-------------------|-------------------|---------------------|
    | 1 | 0                 | No                | 0                   |
    | 2 | 1                 | No (Jordan)       | 0                   |
    | 3 | 3                 | Yes (Hopf)        | 3                   |
    | ≥4| D(D-1)/2          | Yes but trivial   | 0 (unlinks in 4D)  |

    Only D = 3 has non-trivial linking with exactly 3 independent charges. -/
theorem linking_dimension_summary :
    -- D = 1: no independent loops
    independent_loop_count 1 = 0 ∧
    -- D = 2: 1 loop but no linking (Jordan)
    independent_loop_count 2 = 1 ∧
    -- D = 3: 3 loops with linking
    independent_loop_count 3 = 3 ∧
    -- D = 3 is forced
    DimensionForcing.D_physical = 3 := by
  constructor
  · native_decide
  constructor
  · native_decide
  exact ⟨by native_decide, rfl⟩
THEOREM linking_preserved_under_deformation · IndisputableMonolith/Foundation/LinkingNumbers.lean
linking_preserved_under_deformation · IndisputableMonolith/Foundation/LinkingNumbers.lean:261
/-- **THEOREM (Linking Is Preserved Under Local Deformations)**:
    If we insert a cancelling pair into one curve of a linked pair,
    the other curve is unchanged. Since the linking depends on how
    the curves interrelate, and local deformations don't change the
    winding numbers (proved in WindingCharges), the linking structure
    is preserved. -/
theorem linking_preserved_under_deformation
    (lp : LinkedPair 3) (p_pre p_post : LatticePath 3)
    (s₁ s₂ : LatticeStep 3) (h : is_cancelling_pair s₁ s₂)
    (h_decomp : lp.curve₁ = List.append p_pre p_post) :
    is_closed (List.append (List.append p_pre [s₁, s₂]) p_post) := by
  intro k
  have h_orig := lp.closed₁ k
  rw [h_decomp] at h_orig
  rw [insert_cancelling_preserves_winding p_pre p_post s₁ s₂ h k]
  exact h_orig

What this page does not claim

This answer does not claim that linking numbers are the only topological invariant needed for conservation. This answer does not claim that the physical recognition-to-linking bridge is established; it remains open. This answer does not claim that linking numbers are defined for continuous curves, only for lattice paths.

Verify this page

Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:

$ lake env lean IndisputableMonolith/Foundation/LinkingNumbers.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)

A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.

Derived articles

This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:

MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND