Approximation algorithm for finding the maximum common subgraph in two DAGs

Suppose we have two directed acyclic graphs $A$ and $B$ and we look to find the subgraph that is common to both graphs and has the most number of vertices. That is to find the biggest graph which is a subgraph of both $A$ and $B$. The vertices are not labeled, but of course, the directions on edges do matter.

Noting that this solves the graph isomorphism, the problem is not known to be solvable in polynomial time. So I was looking for an approximation algorithm. Can you think of any?

• Isn't there a straightforward approximation-preserving reduction from maximum independent set (MIS) in undirected graphs to your problem? Given undirected graph G=(V,E), form DAG A=(V,E') by ordering the vertices arbitrarily and directing the edges accordingly, then take B=(V,{}) to be the DAG with the same vertices but no edges. Any subgraph common to A and B corresponds to an independent set in G, and vice versa, no? (If this reduction is correct, then your problem is as hard to approximate as MIS; which is to say, forget about it. :-). What am I missing? May 20 '13 at 3:00
• You are right Mr.Young . I guess it won't work. I think you should post that as an answer. May 20 '13 at 8:49
• @Unititled: okay. May 20 '13 at 15:21
• I interpreted the question as wanting the subgraph on the maximum number of edges, not the induced subgraph on the maximum number of vertices... May 21 '13 at 15:48
• @ King. You are right, it looks ambiguous. I'm editing the question. May 21 '13 at 16:50