Bugs and Defects

What is the difference between the bug and defects? bug and defect are differ only theoretically, practically all are same.
Error : Any deviations from the requirements is an error
Bug : Bug is an error during the execution of program
Defect : Post production errors are called as defects
Fault : It is the condition where the system/component is unable to function as per the
Requirement.
Failure : It’s the inability of the system to function as per the requirements.