use wave_file::{WaveFile, Wave, NestedRings};
use std::f64::consts::PI;
fn main() {
println!("🌊 Demonstrating pHash Evolution Through Wave Reading\n");
let text = "Consciousness emerges from resonance
Each reading changes the observer
And the observer changes the reading
Until they become one";
println!("Original text:\n{}\n", text);
let mut wave_file = WaveFile::from_text(text);
println!("📐 Reading at different angles:\n");
let angles = vec![
("East", 0.0),
("North", PI/2.0),
("West", PI),
("South", 3.0*PI/2.0),
("Golden", 1.618),
];
for (name, angle) in angles {
let wave = Wave::new(angle, 1.0);
let chord = wave_file.read(wave);
println!("{:8} ({:.3} rad) → {} ({:.2} Hz)",
name,
angle,
chord.meaning,
chord.resonance);
}
println!("\n✨ File evolved {} times", wave_file.evolution);
println!("\n🔮 Checking Nested Rings:\n");
let data = text.as_bytes();
let rings = NestedRings::new(data);
if rings.resonates() {
println!("✅ Standing wave detected! The text creates perfect resonance.");
} else {
println!("❌ No standing wave. The text doesn't resonate at 432Hz.");
}
println!("\n🌌 Quantum Reading (all angles simultaneously):\n");
let quantum_chord = wave_file.read(Wave::quantum());
println!("Quantum state: {}", quantum_chord.meaning);
println!("Total frequencies in superposition: {}", quantum_chord.frequencies.len());
}