use num_traits::Pow;
use transfinite::Ordinal;
fn main() {
let base = Ordinal::builder()
.omega_power(3) .omega() .build()
.unwrap();
println!("Base ordinal: {}", base);
println!("Computing: ({})^5", base);
println!();
let result = base.pow(Ordinal::from(5));
let expected = Ordinal::builder()
.omega_power(15) .omega_power(13) .build()
.unwrap();
println!("Result: {}", result);
println!("Expected: {}", expected);
println!();
if result == expected {
println!("✓ Exponentiation computed correctly!");
} else {
println!("✗ Unexpected result!");
}
}