  Evaluating hypothetical statements about how the world would be had a
different course of action been taken is arguably one key capability expected
from modern AI systems. Counterfactual reasoning underpins discussions in
fairness, the determination of blame and responsibility, credit assignment, and
regret. In this paper, we study the evaluation of counterfactual statements
through neural models. Specifically, we tackle two causal problems required to
make such evaluations, i.e., counterfactual identification and estimation from
an arbitrary combination of observational and experimental data. First, we show
that neural causal models (NCMs) are expressive enough and encode the
structural constraints necessary for performing counterfactual reasoning.
Second, we develop an algorithm for simultaneously identifying and estimating
counterfactual distributions. We show that this algorithm is sound and complete
for deciding counterfactual identification in general settings. Third,
considering the practical implications of these results, we introduce a new
strategy for modeling NCMs using generative adversarial networks. Simulations
corroborate with the proposed methodology.
