Counterfactual Generation with Answer Set Programming