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.5.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.5.0-py3-none-any.whl (269.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: eye_of_horus-0.5.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.5.0.tar.gz
Algorithm Hash digest
SHA256 a0cb93d45aba1eb87341d6bc9b7201c3c50bda559cdb232ff7913f12b4a06b3d
MD5 d96c4bbd978f4db9997a9161ce6766e3
BLAKE2b-256 77608ad8b74faa4ace5e9245efa4e511c2eebb2ad920e2b3c1864d394ce320dd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: eye_of_horus-0.5.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.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b358d156de731969a0b2ad7641077b04aca5f4b3ab2519a5cd6151a739cd3257
MD5 6a0662d295619f1dca4cbb07940abfac
BLAKE2b-256 f91f2dc241ceec3eae04f1273c45a3a8f7a5d17bc8be026318efe03311c2e98b

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