LBANN  0.103.0
LivermoreBigArtificialNeuralNetworkToolkit
graph.hpp File Reference
#include "lbann/base.hpp"
#include <iostream>
#include <map>
#include <set>
#include <vector>
Include dependency graph for graph.hpp:

Go to the source code of this file.

Namespaces

 lbann
 
 lbann::graph
 

Functions

void lbann::graph::print (const std::set< El::Int > &nodes, const std::map< El::Int, std::set< El::Int >> &edges, std::ostream &os)
 
std::set< El::Int > lbann::graph::get_neighbors (El::Int node, const std::map< El::Int, std::set< El::Int >> &edges)
 
bool lbann::graph::is_closure (const std::set< El::Int > &nodes, const std::map< El::Int, std::set< El::Int >> &edges)
 
bool lbann::graph::is_topologically_sorted (const std::set< El::Int > &nodes, const std::map< El::Int, std::set< El::Int >> &edges)
 
bool lbann::graph::is_cyclic (const std::set< El::Int > &nodes, const std::map< El::Int, std::set< El::Int >> &edges)
 
std::map< El::Int, std::set< El::Int > > lbann::graph::transpose (const std::set< El::Int > &nodes, const std::map< El::Int, std::set< El::Int >> &edges)
 
std::map< El::Int, std::set< El::Int > > lbann::graph::induce_subgraph (const std::set< El::Int > &nodes, const std::map< El::Int, std::set< El::Int >> &edges)
 
std::vector< El::Int > lbann::graph::breadth_first_search (El::Int root, const std::map< El::Int, std::set< El::Int >> &edges)
 
std::vector< El::Int > lbann::graph::depth_first_search (El::Int root, const std::map< El::Int, std::set< El::Int >> &edges)
 
std::vector< El::Int > lbann::graph::topological_sort (const std::set< El::Int > &nodes, const std::map< El::Int, std::set< El::Int >> &edges)
 
void lbann::graph::condensation (const std::set< El::Int > &nodes, const std::map< El::Int, std::set< El::Int >> &edges, std::map< El::Int, std::set< El::Int >> &components, std::set< El::Int > &condensation_nodes, std::map< El::Int, std::set< El::Int >> &condensation_edges)