wifi-densepose/vendor/sublinear-time-solver/validation/mod.rs

84 lines
3.3 KiB
Rust
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//! Validation module for temporal neural solver
//!
//! This module provides comprehensive validation tools to verify
//! the claims made about the temporal neural solver system.
pub mod real_world_validation;
pub mod hardware_timing;
pub mod comprehensive_validation_report;
pub use real_world_validation::*;
pub use hardware_timing::*;
pub use comprehensive_validation_report::*;
use std::process::Command;
/// Run all validation tests
pub fn run_all_validations() -> Result<(), Box<dyn std::error::Error>> {
println!("🚀 STARTING COMPREHENSIVE TEMPORAL NEURAL SOLVER VALIDATION");
println!("=" * 60);
// 1. Real-world dataset validation
println!("\n1⃣ REAL-WORLD DATASET VALIDATION");
println!("-" * 40);
let real_world_report = real_world_validation::generate_real_world_validation_report()?;
std::fs::write("/workspaces/sublinear-time-solver/validation/real_world_report.md", real_world_report)?;
println!("✅ Real-world validation completed");
// 2. Baseline comparison (Python script)
println!("\n2⃣ BASELINE COMPARISON VALIDATION");
println!("-" * 40);
run_python_baseline_comparison()?;
println!("✅ Baseline comparison completed");
// 3. Hardware timing validation
println!("\n3⃣ HARDWARE TIMING VALIDATION");
println!("-" * 40);
let mut hw_validator = hardware_timing::HardwareTimingValidator::new()?;
let system_a_timing = hw_validator.validate_system_a(10000)?;
let system_b_timing = hw_validator.validate_system_b(10000)?;
let timing_report = hardware_timing::generate_hardware_timing_report(&system_a_timing, &system_b_timing);
std::fs::write("/workspaces/sublinear-time-solver/validation/hardware_timing_report.md", timing_report)?;
println!("✅ Hardware timing validation completed");
// 4. Comprehensive analysis
println!("\n4⃣ COMPREHENSIVE VALIDATION REPORT");
println!("-" * 40);
let comprehensive_report = comprehensive_validation_report::run_comprehensive_validation()?;
println!("✅ Comprehensive validation completed");
println!("\n🎉 ALL VALIDATIONS COMPLETED!");
println!("📄 Reports generated in /workspaces/sublinear-time-solver/validation/");
Ok(())
}
/// Run Python baseline comparison script
fn run_python_baseline_comparison() -> Result<(), Box<dyn std::error::Error>> {
let output = Command::new("python3")
.arg("/workspaces/sublinear-time-solver/validation/baseline_comparison.py")
.output()?;
if !output.status.success() {
eprintln!("Python baseline comparison failed:");
eprintln!("{}", String::from_utf8_lossy(&output.stderr));
return Err("Python baseline comparison failed".into());
}
println!("{}", String::from_utf8_lossy(&output.stdout));
Ok(())
}
/// Print validation summary
pub fn print_validation_summary() {
println!("📊 VALIDATION SUMMARY");
println!("=" * 30);
println!("✅ Real-world dataset validation");
println!("✅ Baseline model comparison");
println!("✅ Hardware timing validation");
println!("✅ Statistical significance testing");
println!("✅ Implementation code review");
println!("✅ Red flag detection");
println!("✅ Comprehensive analysis");
println!("\n📄 All reports available in validation/ directory");
}