Skip to main content

Crate graphops

Crate graphops 

Source
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 the petgraph feature).
  • 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.

Enums§

Error

Type Aliases§

Result