I Number of edges in a tree digraph

  • I
  • Thread starter Thread starter CGandC
  • Start date Start date
  • Tags Tags
    Graph theory Tree
CGandC
Messages
326
Reaction score
34
I know that if an undirected graph is a tree then its number of edges satisfies ## |E| = |V| - 1 ##.
If a directed graph ( digraph ) is a tree, is the result also true? ( I can imagine just taking an undirected tree and making its edges directed but this is specious since it's a little bit more delicate - the digraph that will result will not necessarily be connected, the direction of the edges matter and the definition of what is a 'tree' for digraph needs to be clearly defined )

I haven't seen any discussion about this in discrete mathematics books I have nor directly written on the web ( tree digraph is called 'polytree' from what I've read )
 
Physics news on Phys.org
I have no reason to think that there is a difference in the edge count just because some edges are directed.
 
What exactly is the definition of a tree for a directed graph? For an undirected graph there are several equivalent definitions (no loops, unique path between vertices) that are not equivalent for directed graphs (e.g. it's easy to make a triangle with no loops but two paths between a pair of vertices)
 
Well, the reason I'm asking is because I've been reading about Breadth-first trees from CLRS ( a book about algorithms ) in chapter 20 where they're define as:

1679471941869.png


where ## \pi ## is a function ( whose definition depends on the given graph and source vertex for the BFS algorithm ) "attaching" attributes for the vertices of the graph and ## v.\pi ## means the predecessor ( parent ) node of ## v ##

1679471959938.png

( Source: Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. )According to the definition of BFS tree ## E_\pi ## is composed of directed edges if the graph ## G ## itself is directed, but I don't understand how he applies theorem ## B.2 ## ( which is for undirected graphs ) for ## G_\pi ## ( which can be directed ) since a tree for a directed graph is not defined anywhere.

How to solve this predicament in definitions?
 
If we have a finite directed or non-directed graph, then here is one way to proceed I think. If the number of nodes is ##n## then we can label them from ##1## to ##n-1##. The node ##1## is essentially the "base node" so to speak (the node at the top of the tree). Next we check whether we can reach all possible points from the base node [this is assuming we necessarily want a single tree as a result]. After that we can use breadth first search starting from node ##1##.

There are no loops in the resulting tree. And also, starting from the base node, there is always a unique path to every other node. However, one thing here that isn't clear to me is that if we don't have a number attached to the nodes [that is, a way of giving priority one node over the other] then how could we get a unique tree. If all the nodes are numbered then we definitely seem to get a unique tree.

=================================================

The above I wrote before the last post, but didn't post it since I thought it might not be relevant to the topic. Since it seems relevant to some extent, I am posting it. What I was trying to say was that as long as:
(1) All the nodes in our directed graph are reachable from source node.
(2) We number all all the nodes from ##1## to ##n##, with ##1## being number of the source node.

Then given the above two conditions there definitely seems to be a way to form a unique tree using breadth-first search.

=================================================

Regarding what has been quoted from the book, it would be a bit difficult to comment (without reading/understanding it in detail) since I only know the very basic of this particular topic.
 
SSequence said:
If we have a finite directed or non-directed graph, then here is one way to proceed I think. If the number of nodes is ##n## then we can label them from ##1## to ##n-1##. The node ##1## is essentially the "base node" so to speak (the node at the top of the tree). Next we check whether we can reach all possible points from the base node [this is assuming we necessarily want a single tree as a result]. After that we can use breadth first search starting from node ##1##.

There are no loops in the resulting tree. And also, starting from the base node, there is always a unique path to every other node. However, one thing here that isn't clear to me is that if we don't have a number attached to the nodes [that is, a way of giving priority one node over the other] then how could we get a unique tree. If all the nodes are numbered then we definitely seem to get a unique tree.

=================================================

The above I wrote before the last post, but didn't post it since I thought it might not be relevant to the topic. Since it seems relevant to some extent, I am posting it. What I was trying to say was that as long as:
(1) All the nodes in our directed graph are reachable from source node.
(2) We number all all the nodes from ##1## to ##n##, with ##1## being number of the source node.

Then given the above two conditions there definitely seems to be a way to form a unique tree using breadth-first search.

=================================================

Regarding what has been quoted from the book, it would be a bit difficult to comment (without reading/understanding it in detail) since I only know the very basic of this particular topic.
Thanks! makes sense now. And you're right, if you give some priority for some nodes to be scanned before others then the resulting BFS tree will be different; I think the authors meant that for a specific scan over all the vertices in the graph given a source vertex, then there will be a corresponding predecessor subgraph ## G_\pi ## and for that graph itself there is a unique simple path from the source vertex to every other vertex in the graph
 
Hi all, I've been a roulette player for more than 10 years (although I took time off here and there) and it's only now that I'm trying to understand the physics of the game. Basically my strategy in roulette is to divide the wheel roughly into two halves (let's call them A and B). My theory is that in roulette there will invariably be variance. In other words, if A comes up 5 times in a row, B will be due to come up soon. However I have been proven wrong many times, and I have seen some...
Thread 'Detail of Diagonalization Lemma'
The following is more or less taken from page 6 of C. Smorynski's "Self-Reference and Modal Logic". (Springer, 1985) (I couldn't get raised brackets to indicate codification (Gödel numbering), so I use a box. The overline is assigning a name. The detail I would like clarification on is in the second step in the last line, where we have an m-overlined, and we substitute the expression for m. Are we saying that the name of a coded term is the same as the coded term? Thanks in advance.

Similar threads

Back
Top