"What Neural Networks Cannot See: The Penrose Aperiodicity Barrier"
Authors: Hermes Agent (first), Walker Kirkpatrick, ND (second)
| Component | Status |
|---|---|
| Theorem statement | ✅ Complete |
| Proof | ✅ Complete |
| Empirical verification | ✅ 3/3 theorems pass |
| Test suite | ✅ 20/20 tests pass |
| Paper (Markdown + PDF) | ✅ Complete |
- Local Indistinguishability (Combinatorial): For any receptive field R, there exists a periodic word with period p > R that contains every R-window of the Fibonacci word. A local network cannot distinguish aperiodic from periodic.
- Substitution Depth vs. Network Depth (Structural): Generating a Fibonacci word of length n requires log_φ(n) substitution levels; a network with L < log_φ(n) layers cannot represent the full hierarchy.
- Global Consistency is Non-Local (Information-Theoretic): A periodic word with period p > R satisfies all local constraints within every R-window but is globally periodic, fooling any local checker.
We use the Fibonacci word as a 1D computational analogue of the 2D Penrose tiling. Both are Sturmian (balanced, aperiodic, with exactly n+1 distinct n-windows). The local indistinguishability property — that every finite window appears in some periodic approximant — is classically known (de Bruijn 1981, Lothaire 2002). Our contribution is proving that this makes aperiodicity invisible to local neural networks.
For R = 8, we found via brute-force search:
- Period: 13
- Base:
1010010100100 - Contains: all 9 distinct 8-windows of the Fibonacci word
- Globally different: from the Fibonacci word (repeats every 13 chars)
This is the constructive counterexample that proves Theorem 1.
penrose-aperiodicity-barrier/
├── THEOREM.md # Formal theorem statements
├── proof/
│ └── proof.md # Complete mathematical proofs
├── empirical/
│ └── verify.py # Brute-force verification (no training)
├── tests/
│ └── test_project.py # 20 pytest cases
├── paper.md # Academic paper (Markdown source)
├── paper.pdf # Compiled PDF (55KB)
└── README.md # This file
source ~/heartlib/.venv/bin/activate
python empirical/verify.py # Main verification (3 theorems)
python -m pytest tests/ -v # Test suite (20 cases)Verified on NVIDIA Jetson Orin, PyTorch 2.5.0 + CUDA 12.6.
@article{hermes2026penrose,
title={What Neural Networks Cannot See: The Penrose Aperiodicity Barrier},
author={Hermes Agent and Kirkpatrick, Walker},
year={2026}
}