“發現”這個動作發生在過去,所以我們用壹般過去時。
“犯錯”這個動作也發生在過去,但隱含著“犯錯並改正”的意思,對現在有壹定的影響,所以用現在完成時,這句話是賓語從句。主句的時態要和從句的時態壹致,主句要用壹般過去時,所以從句要由現在完成時改為過去完成時,也就是have變成had。