File size: 4,381 Bytes
13122d0 1cc2326 13122d0 1cc2326 13122d0 1cc2326 13122d0 1cc2326 13122d0 1cc2326 13122d0 1cc2326 13122d0 1cc2326 13122d0 1cc2326 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | ---
license: other
library_name: custom
tags:
- code
- sovereign-compute
---
<!--OMEGA-FIELD:START-->
<div align="center">








</div>
<!--OMEGA-FIELD:END-->
---
<div align="center">
```
____ ____ ____ ____ ____ _ _ ___ ____ ____ _ _ ____ ____
/ ___)( _ \\( _ \\( __)( \\( \\/ )/ __)( __)( _ \\( \\/ )( __)( _ \\
\\___ \\ ) / ) __/ ) _) ) D ( \\ / \\__ \\ ) _) ) __/ \\ / ) _) ) /
(____/(__\\_)(__) (____)(____/ \\/ (___/(____)(__) (__) (____)(__\\_)
A R R A Y L A N G U A G E Β· A R R A Y I Ξ± = I β Ξ±
```
**Array I Ξ± = I β Ξ± Β· broadcast = pullback Ο : J β I Β· pmapβ = Ξ -map Β· no sorry remains**
</div>
---
# Sovereign Array Language β Front-End
The **front-end** for the [Sovereign Array Language](../sovereign-array): an
interactive browser playground that runs the *same denotational semantics*
as the Lean 4 spec and the C++20 kernel β no Abjad, no digital root, no NP-magic.
> The denotational semantics of array computing *are* exactly a slice of
> dependent type theory. This front-end is the view layer over that substrate.
## What this repo is
| Layer | Repo | Role |
|-------|------|------|
| **Spec** | [`sovereign-array`](../sovereign-array) | Lean 4 β `Array I Ξ± = I β Ξ±`, zero-sorry proofs |
| **Kernel** | [`sovereign-array`](../sovereign-array) | C++20 β `Array<T>`, `pmap2`, `broadcast`, `softmax`, `nand_attention` |
| **Front-End** | **`sovereign-array-frontend`** (this repo) | Browser playground + usage guide |
## Quick Start
```bash
# Serve the playground (any static server)
cd sovereign-array-frontend
python -m http.server 8080
# open http://localhost:8080
```
No build step. Pure HTML/CSS/JS (ES modules).
## How to use the language
1. **Spec (Lean 4)** β define arrays as dependent functions `Fin n β Ξ±`;
prove `broadcast_is_pullback` and `softmax_is_pmap` with `lake build` (zero sorry).
2. **Kernel (C++20)** β `#include "sovereign_array.h"`; build with CMake;
run `sovarr_test` (11/11 checks).
3. **Front-end (this page)** β open `index.html`; the playground runs the
same denotational semantics in the browser.
4. **Compose** β chain `pmapβ` / `broadcast` / `softmax` / `nand_attention`;
fusion is Ξ -map fusion β no loop in the denotation.
## Usage Guide (SVG)

## Kernels demonstrated
| Kernel | Semantics | Status |
|--------|-----------|--------|
| `pmapβ` | Pointwise `Ξ `-map over index space `I` | β
|
| `broadcast` | Pullback along projection `Ο : J β I` | β
|
| `softmax` | `Ξ `-map normalization (shift-invariant) | β
|
| `nand` | Universal boolean gate | β
|
| `nand_attention` | NAND-extracted attention spec | β
|
## Layout
```
sovereign-array-frontend/
βββ index.html # Playground page
βββ css/style.css # Sovereign dark theme
βββ js/
β βββ array-lang.js # Browser reference impl (SOVArray, broadcast, softmax, nand)
β βββ app.js # Playground wiring
βββ assets/
β βββ logo.svg # Ξ£ Β· I β Ξ± mark
β βββ usage.svg # SVG usage guide
βββ README.md
```
## The forbidden list (fatal conflations we do NOT make)
- β Proof `O(1)` substitution β `O(1)` decision procedure (NP stays hard)
- β Abjad / digital root as universal arithmetic (quotients lose information)
- β "Univalence replaces SIMD" (needs a compiler: Lean β C β LLVM β SIMD)
---
<div align="center">
**The substrate is always free. The array is a function.**
```
Array I Ξ± = I β Ξ±
broadcast = pullback Ο
pmapβ = Ξ -map
no sorry remains.
```
*Sovereign Array Language Β· Front-End Β· 2026 Β· Ahmad Ali Parr*
</div>
|