Expand description
graphops: graph operators (walk/diffusion + related centralities).
This crate is the canonical home for operator implementations in this workspace.
Call sites should prefer graphops::* (and not refer to historical names).
Public invariants (must not drift):
- Node order: outputs are indexed by node id (0..n-1) consistent with the input graph’s
adapter semantics (e.g.
petgraph::NodeIndex::index()when using thepetgraphfeature). - Determinism: deterministic operators are deterministic given identical inputs + configs.
- No silent normalization: normalization behavior is explicit in the API/docs (e.g. personalization vectors in PPR).
Swappable (allowed to change without breaking the contract):
- iteration strategy (serial vs parallel)
- convergence details (so long as tolerance semantics remain correct)
- internal data structures (so long as invariants hold)
Re-exports§
pub use betweenness::betweenness_centrality;pub use graph::AdjacencyMatrix;pub use graph::Graph;pub use graph::GraphRef;pub use graph::WeightedGraph;pub use graph::WeightedGraphRef;pub use node2vec::generate_biased_walks_precomp_ref;pub use node2vec::generate_biased_walks_precomp_ref_from_nodes;pub use node2vec::generate_biased_walks_weighted_plus_ref;pub use node2vec::generate_biased_walks_weighted_ref;pub use node2vec::PrecomputedBiasedWalks;pub use node2vec::WeightedNode2VecPlusConfig;pub use node2vec::generate_biased_walks_precomp_ref_parallel_from_nodes;pub use random_walk::generate_biased_walks_ref_parallel;pub use random_walk::generate_biased_walks_ref_parallel_from_nodes;pub use random_walk::generate_walks_ref_parallel;pub use random_walk::generate_walks_ref_parallel_from_nodes;pub use pagerank::pagerank;pub use pagerank::pagerank_weighted;pub use pagerank::PageRankConfig;pub use pagerank::pagerank_checked;pub use pagerank::pagerank_weighted_checked;pub use pagerank::pagerank_checked_run;pub use pagerank::pagerank_run;pub use pagerank::pagerank_weighted_checked_run;pub use pagerank::pagerank_weighted_run;pub use pagerank::PageRankRun;pub use partition::connected_components;pub use partition::label_propagation;pub use ppr::personalized_pagerank;pub use ppr::personalized_pagerank_checked;pub use ppr::personalized_pagerank_checked_run;pub use ppr::personalized_pagerank_run;pub use random_walk::generate_biased_walks;pub use random_walk::generate_biased_walks_from_nodes;pub use random_walk::generate_biased_walks_ref;pub use random_walk::generate_biased_walks_ref_from_nodes;pub use random_walk::generate_biased_walks_ref_streaming_from_nodes;pub use random_walk::generate_walks;pub use random_walk::generate_walks_from_nodes;pub use random_walk::generate_walks_ref;pub use random_walk::generate_walks_ref_from_nodes;pub use random_walk::generate_walks_ref_streaming_from_nodes;pub use random_walk::sample_start_nodes_reservoir;pub use random_walk::WalkConfig;pub use reachability::reachability_counts_edges;pub use topk::normalize;pub use topk::top_k;
Modules§
- betweenness
- Betweenness centrality.
- graph
- Minimal graph adapter traits.
- node2vec
- Node2Vec / Node2Vec+ walk generation (OTF + PreComp).
- pagerank
- PageRank centrality.
- partition
- Graph partitioning / community detection.
- ppr
- Personalized PageRank.
- random_
walk - Random walk generation.
- reachability
- Reachability helpers (transitive closure counts).
- topk
- Ranking utilities.