Abstract: “This chapter describes the mathematics in the GraphBLAS standard. The GraphBLAS define an arrow set of mathematical operations that have been found to be useful for implementing a wide range of graph operations. At the heart of the GraphBLAS are 2D mathematical objects called matrices. The matrices are usually sparse, which implies that the majority of the elements in the matrix are zero and are often not stored to make their implementation more efficient. Sparsity is independent of the GraphBLAS mathematics. All the mathematics defined in the GraphBLAS will work regardless of whether the underlying matrix is sparse or dense.
Graphs represent connections between vertices with edges. Matrices can represent a wide range of graphs using adjacency matrices or incidence matrices. Adjacency matrices are often easier to analyze while incidence matrices are often better for representing data. Fortunately, the two are easily connected by the fundamental mathematical operation of the GraphBLAS: matrix-matrix multiply. One of the great features of the GraphBLAS mathematics is that no matter what kind of graph or matrix is being used, the core operations remain the same. In other words, a very small number of matrix operations can be used to manipulate a very wide range of graphs.
The mathematics of the GraphBLAS will be described using a “center outward” approach. Initially, the most important specific cases will be described that are at the center of GraphBLAS. The conditions on these cases will then be relaxed to arrive at more general definition. This approach has the advantage of being more easily understandable and describing the most important cases first.”
Note: It says release but I see no software yet.
I think that’s an old announcement; they’re up to 2.2 now, I think.
http://faculty.cse.tamu.edu/davis/suitesparse.html has implementations.