Laegna / Octave Selector Number System

This document describes the JSON format, mathematical structure, and visualization model of the Laegna XYZ octave selector system. It is written for humans, AIs, Copilot, and tools that need to understand or process the format.

Laegna / Octave Selector JSON Format

This document describes the XYZ octave number system and its JSON representation.

5.2 Recomputing zoom from k

The octave multiplier is defined as: \( \text{zoom} = 2^k \). This is the fundamental octave relation: each step in k doubles or halves the scale.

Minimal Julia example

# Recompute zoom from k
zoom_from_k(k) = 2.0^k
      

This is intentionally minimal: it expresses the mathematical essence without implementation overhead. Users can paste it directly into a Julia REPL.

5.3 Projecting a value into the signed Laegna range

Signed Laegna visualization uses the interval \( [-2, -1, 0, 1, 2] \). Projection is linear: \( \text{DigitValue}(x) = x \cdot \text{Num} \).

Julia projection function

project_signed(x, Num) = x * Num
      

5.4 Reading the JSON file

This example shows how to load the octave-selector JSON and iterate through chapters and numbers. It is intentionally short and math-focused.

Julia JSON reader

using JSON

data = JSON.parsefile("octave_xyz.json")

for chapter in data["chapters"]
    R = chapter["R"]
    for num in chapter["numbers"]
        digits = num["Expr"]["Digits"]
        zoom   = num["Props"]["zoom"]
        println("R = $R, digits = $digits, zoom = $zoom")
    end
end