pub struct AtlasE8Embedding { /* private fields */ }Expand description
Atlas→E₈ embedding
Maps the 96 vertices of the Atlas to 96 of the 240 E₈ roots, preserving the graph structure.
Implementations§
Source§impl AtlasE8Embedding
impl AtlasE8Embedding
Sourcepub const fn new() -> Self
pub const fn new() -> Self
Create the canonical Atlas→E₈ embedding
This embedding was computed via backtracking search and certified in the Python implementation. It is the unique embedding (up to E₈ symmetry) that preserves edges and produces exactly 48 sign classes.
Sourcepub const fn map_vertex(&self, atlas_vertex: usize) -> usize
pub const fn map_vertex(&self, atlas_vertex: usize) -> usize
Sourcepub fn verify_root_norms(&self) -> bool
pub fn verify_root_norms(&self) -> bool
Verify all mapped roots have correct norm
All 96 embedded E₈ roots must have norm² = 2.
§Returns
true if all roots have norm² = 2
Sourcepub fn verify_injective(&self) -> bool
pub fn verify_injective(&self) -> bool
Verify that the embedding is injective
No two Atlas vertices should map to the same E₈ root.
Sourcepub fn count_sign_classes(&self) -> usize
pub fn count_sign_classes(&self) -> usize
Count sign classes in the embedding
A sign class is a pair of Atlas vertices that map to negatives of each other in E₈. The canonical embedding has exactly 48 sign classes.
§Returns
Number of sign class pairs (should be 48)
Sourcepub fn verify_all(&self) -> bool
pub fn verify_all(&self) -> bool
Verify all embedding properties
Checks:
- Injectivity (96 distinct roots)
- Root norms (all have norm² = 2)
- Sign classes (exactly 48 pairs)
§Returns
true if all properties verified
Trait Implementations§
Source§impl Clone for AtlasE8Embedding
impl Clone for AtlasE8Embedding
Source§fn clone(&self) -> AtlasE8Embedding
fn clone(&self) -> AtlasE8Embedding
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more