Smarandache (2003) introduced a new set-valued fuzzy logic called (nonstandard) neutrosophic logic by using Robinson’s nonstandard analysis. However, its definition involved many errors including the illegal use of nonstandard analysis. In this paper, we provide a rigorous definition of neutrosophic logic. All the errors in the original definition are addressed. We then point out some paradoxes of neutrosophic logic. Finally we formulate neutrosophic logic with no use of nonstandard analysis.