bgraphs in Figure 1, so we will need a total of six vertices.

<pre>
typedef adjacency_list_traits<vecS, vecS, directedS> Traits;
typedef subgraph< adjacency_list<vecS, vecS, directedS,
  no_property, property<edge_index_t, int> > > Graph;

const int N = 6;
Graph G0(N);

enum { A, B, C, D, E, F};  // for conveniently refering to vertices in G0
</pre>

Next we create two empty subgraph objects, specifying <tt>G0</tt> as
their parent.

<pre>
Graph& G1 = G0.create_subgraph(), G2 = G0.create_subgraph();
enum { 