A Framework for Incorporating General Domain Knowledge into Latent Dirichlet Allocation Using First-Order Logic