Logic: The Art of Defining and Reasoning