A Semantic Loss Function For Deep Learning With Symbolic Knowelge