  Causal discovery, the learning of causality in a data mining scenario, has
been of strong scientific and theoretical interest as a starting point to
identify "what causes what?" Contingent on assumptions and a proper learning
algorithm, it is sometimes possible to identify and accurately estimate a
causal directed acyclic graph (DAG), as opposed to a Markov equivalence class
of graphs that gives ambiguity of causal directions. The focus of this paper is
in highlighting the identifiability and estimation of DAGs with general error
distributions through a general sequential sorting procedure that orders
variables one at a time, starting at root nodes, followed by children of the
root nodes, and so on until completion. We demonstrate a novel application of
this general approach to estimate the topological ordering of a DAG. At each
step of the procedure, only simple likelihood ratio scores are calculated on
regression residuals to decide the next node to append to the current partial
ordering. The computational complexity of our algorithm on a p-node problem is
O(pd), where d is the maximum neighborhood size. Under mild assumptions, the
population version of our procedure provably identifies a true ordering of the
underlying DAG. We provide extensive numerical evidence to demonstrate that
this sequential procedure scales to possibly thousands of nodes and works well
for high-dimensional data. We accompany these numerical experiments with an
application to a single-cell gene expression dataset.
