pub trait Delta<'a> {
type Node;
type Edge: Hyperedge;
// Required method
fn get_sematic_clusters(
&'a self,
u: &'a Self::Node,
v: &'a Self::Node,
) -> &'a Vec<(SematicCluster<'a, Self::Edge>, SematicCluster<'a, Self::Edge>)>;
}