Skip to main content

Phonemic analysis engine for ancient Egyptian texts — 16-position wheel, 408 grammar, bidirectional decode

Project description

Eye of Horus

DOI PyPI version License: CC0-1.0

A phonemic engine for reading ancient Egyptian through the 16-position wheel.

The 408 Grammar

T(16) = 136 wheel relations × 3 spine axes = 408

Sixteen phonemes on a vorticular wheel. Three scales on a spine. Trigonal decode across three modes. Every Egyptian utterance decoded through directed semantic relations.

Installation

pip install eye-of-horus

Quick Start

from eye_of_horus import load_pyramid_translations

# 1,316 Pyramid Text sentences, pre-translated
corpus = load_pyramid_translations()

for entry in corpus[:3]:
    print(entry['transliteration'])
    print(entry['ascend'])      # Rising (L→R)
    print(entry['penetrate'])   # Entering (R→L)
    print()

The Wheel (16 phonemes)

Each phoneme maps 1:1 to a deity, with masculine and feminine equilibrium verbs representing antithetic poles of the same semantic axis:

Pos Ph Deity F equilibrium M equilibrium
1 n Neith WEAVE INTEGRATE
2 w Wadjet FLOW RADIATE
3 s Sekhmet CRYSTALLISE EMERGE
4 sh Shu ALIGN DIRECT
5 A Atum TEND LEAD
6 t Seshat ETCH READ
7 H Horus INTERPRET EXPRESS
8 r Ra BASK SHINE
9 m Ma'at TRUST TRUE
10 a Anubis ALLOW HONOUR
11 y Isis RESTORE DEVOTE
12 b Bes CULTIVATE RECEIVE
13 p Ptah GATHER STORE
14 i Ihy PROTECT BESTOW
15 kh Khnum CAPACITY EMBODY
16 dj Thoth ACT DISCERN

The Spine (3 scales)

Spine phonemes operate across temporal scales, outside the wheel:

Phoneme Verb Scale
k CYCLE Ontogenic (individual lifecycle)
d DO Phylogenic (species/lineage)
x FUNDAMENT Cosmogenic (universal)

Secondary spine: g (GROUND), f (BREATHE), h (SEE).

Critical: Plain d and k are spine. The wheel has dj (palatalized), not plain d.

The Pyramidal Architecture (5 positions)

Each phoneme occupies five positions in a pyramidal structure (two pyramids apex-to-apex):

          max_masc
             △
            /|\
           / | \
          / min_m \
         /___△___\
              |
        eq_m ─┼─ eq_f
              |
         \___▽___/
          \ max_f /
           \ | /
            \|/
             ▽
          min_fem

Trigonal Decode

The three modes (equilibrium, feminine, masculine) generate five parallel interpretations:

Layer Mode Pole Pattern
core equilibrium all eq
f1 feminine min_fem (pole)(eq)(pole)(eq)...
f2 feminine max_fem (pole)(eq)(pole)(eq)...
m1 masculine min_masc (pole)(eq)(pole)(eq)...
m2 masculine max_masc (pole)(eq)(pole)(eq)...

The alternation creates rhythmic pulsing: reach to pole, return to center.

Bidirectional Reading

Direction determines layer order:

Direction Movement Layer Order
ASCEND (L→R) Rising, feminine leads core → f1 → f2 → m1 → m2
PENETRATE (R→L) Entering, masculine leads core → m1 → m2 → f1 → f2
from eye_of_horus import decode_bidirectional

results, ascend, penetrate = decode_bidirectional(1, 9, readable=True)
print(ascend)

Total Decode Space

3 modes (5 outputs) × 2 directions = 10 simultaneous readings
408 relations × 5 positions = 2,040 meaning-positions

Directed Pairs

The 136 wheel edges capture Egyptian vocabulary semantics:

from eye_of_horus import get_edge_signature

edge = get_edge_signature('a', 'n')  # ankh
print(edge['signatures']['life']['ratio'])  # 11.08x baseline
Edge Verbs Semantic field Egyptian
p→t STORE→READ sky 13x pt
a→n HONOUR→INTEGRATE life 11x ankh
m→w TRUE→RADIATE water 10x mw
dj→m DISCERN→TRUE speech 8x djed-medu

Fibonacci Breath

The Pyramid Texts' opening follows a 1+2+3+2+1 = 9 structure:

        1         ← Line 1: SEED
       / \
      2   2       ← Lines 2-3: Division
     / \ / \
    3   3   3     ← Lines 4-5-6: Peak
     \ / \ /
      2   2       ← Lines 7-8: Return
       \ /
        1         ← Line 9: Unity

The hourglass rotated 90°—same architecture at text level.

Semantic Network

240 directed edges validated against 12,773 TLA sentences:

from eye_of_horus import find_edges_by_signature

# Find all edges associated with "life" (>5x baseline)
for edge in find_edges_by_signature('life', 5.0):
    print(f"{edge['edge']} {edge['verbs']}{edge['ratio']}x")

Performance

Full corpus decode in 18ms on MacBook Air M4 (14µs per sentence).

Corpus

Dataset Sentences Source
Pyramid Texts 1,316 Old Kingdom walls (~2300 BCE)
Semantic Network 240 edges Derived from TLA corpus

API Reference

from eye_of_horus import (
    # Mapping
    leiden_to_wheel,
    phonemes_to_verbs,
    WHEEL_16,
    WHEEL_VERBS,
    
    # Pyramid Texts
    load_pyramid_translations,
    decode_bidirectional,
    decode_layered,
    
    # Semantic Network
    load_semantic_network,
    get_edge_signature,
    find_edges_by_signature,
    
    # Engine
    Mode, Pole, Scale,
    get_hourglass,
    triangular,
    total_grammar,
)

License

MIT

Citation

If you use this in academic work:

@software{brown_2025_eye_of_horus,
  author       = {Brown, Nicholas David},
  title        = {{Eye of Horus: A Phonemic Analysis Engine for Ancient Egyptian Texts}},
  year         = 2026,
  publisher    = {Zenodo},
  doi          = {10.5281/zenodo.18196732},
  url          = {https://doi.org/10.5281/zenodo.18196732}
}

Author

Nicholas David Brown
Independent Researcher


The wheel rotates. The spine holds. The layers speak simultaneously.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eye_of_horus-0.6.0.tar.gz (255.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eye_of_horus-0.6.0-py3-none-any.whl (269.2 kB view details)

Uploaded Python 3

File details

Details for the file eye_of_horus-0.6.0.tar.gz.

File metadata

  • Download URL: eye_of_horus-0.6.0.tar.gz
  • Upload date:
  • Size: 255.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for eye_of_horus-0.6.0.tar.gz
Algorithm Hash digest
SHA256 86126a5e2b60043d30822a6c9a447ad49bfaffae96f40b962b23b89c3eae251d
MD5 e79c7ada4e91f037530aa3ae30707505
BLAKE2b-256 0916d0c33081b7b3f21ae0c10057e02332cd800f2331db4d64134ef00fd2e4e6

See more details on using hashes here.

File details

Details for the file eye_of_horus-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: eye_of_horus-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 269.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for eye_of_horus-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4ed82feec69dc16d17fe0689d8ce29bf5cdbbb579c55c59c73c66ff7a6f7c221
MD5 bb9d9e0b8c107e7a3f23e49175fbf69a
BLAKE2b-256 49af7dec53e89f8a5c007c9177723f307970e4c65390eb792517f962bc63c67d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page