Definitions
Here we specify the definitions of objects and terms used in our benchmark specifications.
#
Unweighted GraphsWe consider both undirected (symmetric) and directed (asymmetric) graphs in GBBS. We refer to graphs as , where is a set of vertices, and is a set of edges. Each edge consists of a pair of vertices .
When not specified, we assume that the underlying graph is directed. The concrete formats supported by GBBS for unweighted graphs can be found in the formats page
#
Weighted GraphsWe also consider weighted graphs in GBBS, which we refer to as where is a weighted function . We refer to the weight of a edge as The benchmarks always specify the range, of the weight function, unless the algorithm is oblivious to it.
#
DistancesWe use to refer to the shortest path distance between and in the graph .
We use to refer to the diameter of the graph, or the longest shortest path distance in between any vertex and any vertex reachable from .
#
MappingMany of our benchmarks return -mapping, which are objects that
provide access to 's over a specified input domain. For
example, an int
-mapping for the domain can be represented
- using an array of
int
s, or - using a function from the domain to an
int
(implicitly represented).
The only requirement is that the returned object implements an array operator, and can be accessed at every index in the domain.