# Concept Distributed Edge List Graph

Contents

- Description
- Notation
- Refinement of
- Associated types
- Valid Expressions
- Models

# Description

A Distributed Edge List Graph is a graph whose vertices are distributed across multiple processes or address spaces. The `vertices` and `num_vertices` functions retain the same signatures as in the Edge List Graph concept, but return only the local set (and size of the local set) of vertices.

# Notation

G
  A type that models the Distributed Edge List Graph concept.
g
  An object of type `G`.

# Refinement of

> - Graph

# Associated types

Edge descriptor type | `graph_traits<G>::edge_descriptor` | Must model the Global Descriptor concept.
Edge iterator type | `graph_traits<G>::edge_iterator` | Iterates over edges stored locally. The value type must be `edge_descriptor`.
Edges size type | `graph_traits<G>::edges_size_type` | The unsigned integral type used to store the number of edges in the local subgraph.

# Valid Expressions

Name | Expression | Type | Semantics
--- | --- | --- | ---
Local edge set | `edges(g)` | `std::pair<` `edge_iterator,` `edge_iterator>` | Returns an iterator range providing access to the local edges in the graph.
Number of local edges. | `num_edges(g)` | `edges_size_type` | Returns the number of edges stored locally in the graph.

# Models

> - Distributed adjacency list

Copyright (C) 2005 The Trustees of Indiana University.

Authors: Douglas Gregor and Andrew Lumsdaine