adam_strandberg comments on Confound it! Correlation is (usually) not causation! But why not? - LessWrong

44 Post author: gwern 09 July 2014 03:04AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (34)

You are viewing a single comment's thread.

Comment author: adam_strandberg 09 July 2014 04:14:07AM *  6 points [-]

(How many different DAGs are possible if you have 600 nodes? Apparently, >2^600.)

Naively, I would expect it to be closer to 600^600 (the number of possible directed graphs with 600 nodes).

And in fact, it is some complicated thing that seems to scale much more like n^n than like 2^n: http://en.wikipedia.org/wiki/Directed_acyclic_graph#Combinatorial_enumeration

Comment author: topynate 09 July 2014 03:31:08PM 8 points [-]

There's an asymptotic approximation in the OEIS: a(n) ~ n!2^(n(n-1)/2)/(M*p^n), with M and p constants. So log(a(n)) = O(n^2), as opposed to log(2^n) = O(n), log(n!) = O(n log(n)), log(n^n) = O(n log(n)).

Comment author: gwern 09 July 2014 03:42:14PM 5 points [-]

It appears I've accidentally nerdsniped everyone! I was just trying to give an idea that it was really really big. (I had done some googling for the exact answer but they all seemed rather complicated, and rather than try and get an exact answer wrong, just give a lower bound.)

Comment author: IlyaShpitser 09 July 2014 08:57:01AM *  3 points [-]

If we allow cycles, then there are three possibilities for an edge between a pair of vertices in a directed graph: no edge, or an arrow in either direction. Since a graph of n vertices has n choose 2 pairs, the total number of DAGs of n vertices has an upper bound of 3^(n choose 2). This is much smaller than n^n.

edit: the last sentence is wrong.


Gwern, thanks for writing more, I will have more to say later.

Comment author: RichardKennaway 09 July 2014 10:27:44AM *  9 points [-]

Since a graph of n vertices has n choose 2 pairs, the total number of DAGs of n vertices has an upper bound of 3^(n choose 2). This is much smaller than n^n.

It is much larger. = , and is much larger than n.

3^(10 choose 2) is about 10^21.

Since the nodes of these graphs are all distinguishable, there is no need to factor out by graph isomorphism, so 3^(n choose 2) is the exact number.

Comment author: [deleted] 09 July 2014 02:59:21PM 6 points [-]

The precise asymptotic is , as shown on page 4 of this article. Here lambda and omega are constants between 1 and 2.

Comment author: mcallisterjp 09 July 2014 12:50:30PM 5 points [-]

That's the number of all directed graphs, some of which certainly have cycles.

Comment author: RichardKennaway 09 July 2014 01:08:45PM 6 points [-]

That's the number of all directed graphs, some of which certainly have cycles.

So it is. 3^(n choose 2) >> n^n stands though.

A lower bound for the number of DAGs can be found by observing that if we drop the directedness of the edges, there are 2^(n choose 2) undirected graphs on a set of n distinguishable vertices, and each of these corresponds to at least 1 DAG. Therefore there are at least that many DAGs, and 2^(n choose 2) is also much larger than n.

Comment author: IlyaShpitser 09 July 2014 03:48:47PM 4 points [-]

Yup you are right, re: what is larger.