AMD interview question

How will you use coverage to verify the correctness of your code? What are the differences between Functional/Toggle/FSM/Line coverage?