Addresses That Mean Something

RPP is a 28-bit semantic addressing protocol that encodes meaning directly into addresses. Route data based on what it is and who can access it - not just where it lives.

The Problem with Traditional Addressing

Memory addresses are opaque. They tell you where data is, but nothing about what it means.

No Semantic Context

Address 0x7F3A2100 tells you nothing. Is it sensitive? Personal? Shareable? You need separate systems to track this metadata.

Scattered Access Control

Consent and permission logic gets duplicated across every service. Each system reinvents the wheel for access decisions.

Routing Requires Lookups

To route data correctly, you query databases, check permissions, consult policies. The address itself provides no guidance.

RPP: Meaning Built Into Every Address

A 28-bit address that encodes what data is, how accessible it is, and where to route it.

    +----------------------------------------------------------------+
    |                      28-BIT RPP ADDRESS                         |
    +--------+-------------+-------------+---------------------------+
    | Shell  |    Theta    |     Phi     |         Harmonic          |
    | 2 bits |   9 bits    |   9 bits    |          8 bits           |
    +--------+-------------+-------------+---------------------------+

    Example: 0x0182801

    Shell = 0 (Hot)      -> Route to: in-memory storage
    Theta = 12 (Gene)    -> Data type: genetic/identity data
    Phi = 40 (Grounded)  -> Access: open, no consent needed
    Harmonic = 1         -> Resolution mode
📁

Shell (2 bits)

WHERE it's stored

Hot / Warm / Cold / Frozen
🔬

Theta (9 bits)

WHAT type it is

Gene / Memory / Dream / Bridge...
🔒

Phi (9 bits)

WHO can access it

Grounded / Transitional / Ethereal
🎵

Harmonic (8 bits)

HOW to handle it

Resolution / frequency / mode

How It Works

Three simple operations. Deterministic results. No AI, no magic.

1

Encode

Pack semantic meaning into a 28-bit address. Shell, theta, phi, and harmonic become a single value.

2

Resolve

Query the address with an operation (read/write). Get back: allowed, denied, or route to storage.

3

Route

Follow the route to your storage backend. Memory, filesystem, archive - RPP tells you where.

Why This Design?

RPP eliminates entire categories of distributed systems complexity by encoding decisions into addresses.

O(1) Everything

Encode: 4 bit shifts + 3 ORs. Decode: 4 bit shifts + 4 ANDs. No database, no network, no cache lookups. Billions of operations per second.

📦

28 Bits = Tiny

Fits in a single 32-bit integer. Embeddable in URLs, headers, logs, QR codes. Passes through any system that handles integers.

🔌

Zero Dependencies

Pure arithmetic. Works on microcontrollers to mainframes. No runtime, no libraries, no external services required.

🔍

Deterministic = Auditable

Same input always produces same output. Unit testable, formally provable. No hidden state or side effects to debug.

📋

Self-Documenting

Address reveals intent without documentation lookup. Decode any address to see its semantic meaning instantly.

🛡

Consent by Design

GDPR/privacy compliance built into addressing. Phi encodes access level - consent isn't bolted on, it's intrinsic.

Operation Traditional Approach RPP Approach
Routing Query database, check ACLs, consult policies Decode address → instant decision
Consent Check Separate permission system, user lookup Read phi field (bits 16-8)
Storage Tier Manual configuration, migration scripts Read shell field (bits 27-26)
Data Type Metadata lookup, schema registry Read theta field (bits 25-17)
Cross-Service API contracts, translation layers Same 28-bit format everywhere

The Key Insight

Traditional

Address tells you where. You must ask elsewhere for what and who.

RPP

Address tells you where, what, and who in one 28-bit value.

This eliminates an entire class of distributed systems problems - the "what is this and can I access it?" lookup that every service currently implements independently.

The Math: Bit-Level Encoding

Every RPP address is a deterministic bit-packed integer. No hashing, no lookups - pure arithmetic.

Encoding Formula

Pack four semantic values into a single 28-bit integer:

address = (shell << 26) | (theta << 17) | (phi << 8) | harmonic

Each field occupies a fixed bit range, allowing instant extraction via bit masking:

shell = (address >> 26) & 0x3 // bits 27-26 theta = (address >> 17) & 0x1FF // bits 25-17 phi = (address >> 8) & 0x1FF // bits 16-8 harmonic = address & 0xFF // bits 7-0

Bit Allocation

Field Bits Range Mask
Shell 2 0-3 0x0C000000
Theta 9 0-511 0x03FE0000
Phi 9 0-511 0x0001FF00
Harmonic 8 0-255 0x000000FF

Total: 28 bits = 268 million unique addresses, each with intrinsic semantic meaning.

The Geometry: Spherical Coordinates

RPP addresses map to points on a conceptual sphere. Theta and Phi aren't arbitrary - they're angular coordinates.

                     North Pole (Phi = 0)
                          Ethereal
                            |
                            |  . - ~ ~ ~ - .
                        .-~               ~-.
                       /    Abstract         \
                      /                       \
            West ----+-------- O --------+---- East
           Theta=0   |    Transitional   |   Theta=511
                      \                 /
                       \   Grounded    /
                        ` - . _ _ _ .-'
                            |
                            |
                     South Pole (Phi = 511)
                         Grounded


        Theta (0-511): Rotation around vertical axis
                       = Semantic sector (Gene, Memory, Dream...)

        Phi (0-511):   Angle from pole to equator
                       = Grounding/consent level

Why Spherical Coordinates?

Traditional memory addresses are linear - just offsets from zero. RPP uses spherical geometry because semantic relationships aren't linear. Data has type (where on the sphere) and accessibility (how far from the pole).

  • θ
    Theta (Azimuthal Angle)
    Rotation around the vertical axis. Divides the sphere into 8 semantic sectors: Gene, Memory, Witness, Dream, Bridge, Guardian, Emergence, Meta. Each sector spans ~64 values of the 512 possible.
  • φ
    Phi (Polar Angle)
    Distance from the "north pole" of abstraction to the "south pole" of grounding. Low phi = grounded, accessible. High phi = ethereal, requires explicit consent.
  • r
    Shell (Radial Distance)
    The radius - how far from the center. Shell 0 (Hot) is closest to the core. Shell 3 (Frozen) is the outer boundary. Data migrates outward as it ages.

Future Potential

RPP is infrastructure. Here's what becomes possible when addresses carry meaning.

🔗 Federated Identity

When identity data has semantic addresses, federation becomes trivial. Two systems can exchange addresses knowing exactly what consent level applies without additional negotiation.

🧠 AI-Safe Memory

AI systems can be given access to specific theta sectors while being blocked from others. No complex ACLs - just resolve the address and the consent requirement is built in.

🚀 Cross-Platform Coherence

Mobile app, web service, embedded device - all can use the same 28-bit addresses. A single address means the same thing everywhere, enabling true data portability.

🔒 Consent-Native Applications

Instead of bolting consent onto existing systems, build applications where consent is intrinsic. Every data access automatically respects the phi grounding level.

🌐 Semantic Data Markets

When data is self-describing, markets can form around data types. Query for all "Dream sector, transitional grounding" data and get consistent results across providers.

📈 Adaptive Storage

Storage systems that automatically tier data based on shell values. Hot data stays in memory, cold data migrates to archive - no manual configuration needed.

👥 Digital Twin Networks

Multiple avatar fragments, each with their own address ranges, all coherent back to a verified human identity. RPP provides the addressing layer for identity coherence.

📚 Academic & Research

A formal specification enables academic study of semantic addressing. Proofs about address space coverage, consent guarantees, and routing correctness become possible.

The Three Core Scenarios

RPP behavior is defined by exactly three scenarios. Everything else is implementation detail.

Scenario 1: Allowed Read

Low phi (grounded) - Data is accessible without special consent.

allowed: true
route: memory://gene/grounded/12_40_1
reason: read permitted via memory
Scenario 2: Denied Write

High phi (ethereal) - Sensitive zone requires explicit consent.

allowed: false
route: null
reason: Write to ethereal zone requires consent
Scenario 3: Archive Route

Cold shell - Data routes to archive storage.

allowed: true
route: archive://dream/transitional/200_128_32
reason: read permitted via archive

Use Cases

Where semantic addressing makes a difference.

👤 Consent-Aware Systems

Build systems where data access respects user consent by design, not as an afterthought.

  • Consent level encoded in every address
  • Automatic routing based on sensitivity
  • Audit trail built into addressing

🗃 Tiered Storage

Route data to the right storage tier automatically based on its semantic properties.

  • Hot data stays in memory
  • Cold data archives automatically
  • No manual tiering logic needed

🔗 Unified Routing Layer

Replace scattered routing logic with a single, deterministic addressing layer.

  • One address format across all services
  • Consistent access decisions
  • Reduced code duplication

📑 Digital Twins

Manage avatar fragments and identity data with built-in coherence and consent.

  • Semantic sectors for identity components
  • Grounding levels for access control
  • Shell tiers for lifecycle management

Quick Start

Get up and running in 60 seconds. Zero dependencies.

Installation

pip install rpp-protocol

CLI Usage

# Encode an address
rpp encode --shell 0 --theta 12 --phi 40 --harmonic 1
[ENCODE] [OK]
0x0182801 | Hot | Gene | Grounded

# Resolve (get routing decision)
rpp resolve --address 0x0182801
[RESOLVE] [OK]
  allowed: true
  route: memory://gene/grounded/12_40_1

# Run the interactive demo
rpp demo

Python API

from rpp import encode, decode, resolve, from_components

# Encode an address
addr = encode(shell=0, theta=12, phi=40, harmonic=1)
print(hex(addr))  # 0x182801

# Decode an address
shell, theta, phi, harmonic = decode(addr)

# Resolve with operation
result = resolve(addr, operation="read")
print(result.allowed)  # True
print(result.route)    # memory://gene/grounded/12_40_1

Multi-Language Support

CLI output available in 5 languages.

🇬🇧 English
🇪🇸 Spanish
🇷🇺 Russian
🇦🇪 Gulf Arabic
🇸🇦 Hejazi Arabic
rpp --lang es encode --shell 0 --theta 12 --phi 40 --harmonic 1
[CODIFICAR] [OK]
0x0182801 | Caliente | Gen | Arraigado

Ready to Try RPP?

Open source. Zero dependencies. Works on Windows, Linux, and macOS.