I'm taking a grad class on software testing and we spent a whole class on the difference between faults, errors, and failures. I was dissatisfied by the definition of a software fault in testing. What's your definition?
You might be interested in this SE Radio podcast where iirc, they're described as: