Definition and Types of errors