pith. sign in
module module high

IndisputableMonolith.Patterns.GrayCycle

show as:
view Lean formalization →

This module defines the predicate OneBitDiff for patterns differing in exactly one coordinate and introduces GrayCycle and GrayCover types. It is imported by ledger-parity adjacency work and by explicit Gray cycle constructions in higher dimensions. The module supplies basic definitions and lemmas that downstream files extend with concrete realizations.

claimThe module introduces the predicate $\mathsf{OneBitDiff}(p,q)$ asserting that patterns $p$ and $q$ differ in exactly one coordinate (Hamming distance 1), together with the types $\mathsf{GrayCycle}\,d$ and $\mathsf{GrayCover}\,d\,n$ for cycles and covers in dimension $d$.

background

This module belongs to the Patterns domain and imports the parent Patterns module. Its central definition is the predicate OneBitDiff, which states that two patterns differ in exactly one coordinate. Sibling declarations include GrayCycle, GrayCover, grayCover_min_ticks and gray8At, which build sequences where consecutive elements satisfy the one-bit condition.

The local setting prepares the ground for Gray-code realizations of the eight-tick octave. The module does not yet construct explicit cycles; it only records the adjacency relation that later modules instantiate via BRGC recursion.

proof idea

This is a definition module, no proofs.

why it matters in Recognition Science

The module supplies the core one-bit adjacency predicate used by LedgerParityAdjacency to connect single-coordinate ledger updates to parity changes (Workstream B2). It is also imported by GrayCycleBRGC and GrayCycleGeneral, which realize axiom-free and general-dimension Gray cycles via the BRGC formula. It therefore anchors the pattern layer that supports the T7 eight-tick octave in the Recognition framework.

scope and limits

used by (3)

From the project-wide theorem graph. These declarations reference this one in their body.

depends on (1)

Lean names referenced from this declaration's body.

declarations in this module (20)