NeuroLogic Decoding: (Un)supervised Neural Text Generation with Predicate Logic Constraints