mirror of
https://github.com/blackboxprogramming/BlackRoad-Operating-System.git
synced 2026-03-17 06:57:17 -05:00
Create comprehensive research-lab pack structure with mathematical and quantum computing modules from blackroad-prism-console: Math Modules: - hilbert_core.py: Hilbert space symbolic reasoning - collatz/: Distributed Collatz conjecture verification - linmath/: Linear mathematics C library - lucidia_math_forge/: Symbolic proof engine - lucidia_math_lab/: Experimental mathematics Quantum Modules: - lucidia_quantum/: Quantum core - quantum_engine/: Circuit simulation Experiments: - br_math/: Gödel gap, quantum experiments Includes pack.yaml manifest and comprehensive README. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
70 lines
2.2 KiB
Python
70 lines
2.2 KiB
Python
"""Command line interface for the Lucidia Math Lab."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from datetime import datetime
|
|
from pathlib import Path
|
|
|
|
from .prime_explorer import PrimeVisualizer, plot_fourier, plot_residue, plot_ulam,
|
|
from .prime_explorer import fourier_prime_gaps, residue_grid, ulam_spiral
|
|
from .quantum_finance import QuantumFinanceSimulator
|
|
from .sine_wave_codex import plot_waves
|
|
from .trinary_logic import TrinaryLogicEngine
|
|
|
|
OUTPUT_DIR = Path("output")
|
|
|
|
|
|
def timestamp() -> str:
|
|
return datetime.utcnow().strftime("%Y%m%d_%H%M%S")
|
|
|
|
|
|
def main() -> None: # pragma: no cover - interactive
|
|
engine = TrinaryLogicEngine.from_json(Path(__file__).with_name("trinary_operators.json"))
|
|
visualizer = PrimeVisualizer(OUTPUT_DIR)
|
|
finance = QuantumFinanceSimulator(price=100.0, volatility=1.0)
|
|
|
|
menu = """
|
|
Lucidia Math Lab
|
|
-----------------
|
|
1. Show trinary logic AND table
|
|
2. Plot Ulam spiral
|
|
3. Plot residue grid (mod 10)
|
|
4. Fourier of prime gaps
|
|
5. Plot sine waves
|
|
6. Simulate quantum finance step
|
|
q. Quit
|
|
"""
|
|
while True:
|
|
choice = input(menu).strip()
|
|
if choice == "1":
|
|
print(engine.truth_table_ascii("AND"))
|
|
elif choice == "2":
|
|
grid, mask = ulam_spiral(25)
|
|
fig = plot_ulam(grid, mask)
|
|
visualizer.save_fig(fig, f"ulam_{timestamp()}")
|
|
elif choice == "3":
|
|
grid = residue_grid(10)
|
|
fig = plot_residue(grid)
|
|
visualizer.save_fig(fig, f"residue_{timestamp()}")
|
|
elif choice == "4":
|
|
gaps, fft = fourier_prime_gaps(100)
|
|
fig = plot_fourier(gaps, fft)
|
|
visualizer.save_fig(fig, f"fourier_{timestamp()}")
|
|
elif choice == "5":
|
|
fig = plot_waves([(1, 0, 1), (2, 0, 0.5)])
|
|
visualizer.save_fig(fig, f"waves_{timestamp()}")
|
|
elif choice == "6":
|
|
dist = finance.step()
|
|
price = finance.observe(dist)
|
|
fig = finance.plot(dist)
|
|
visualizer.save_fig(fig, f"finance_{timestamp()}")
|
|
print(f"Collapsed price: {price:.2f}")
|
|
elif choice.lower() == "q":
|
|
break
|
|
else:
|
|
print("Unknown option")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|