Probabilistic Logic Programs and Their Applications