Types of logic