The learning path has its own scope. If the learning path does not mention something, feel free to implement it yourself as a testing of your knowledge. I'd suggest to follow this learning path 'till the end, and later - if time permits - you can practice your skills with extra features.
As for your question, you could create an extra microflow (e.g. SUB_CheckTeacherAvailability) that retrieves all the training events where the teacher participates in and then you can check if the date for the new training event is matching one of the dates of the already registered events. If so, you can interrupt the process of assigning a teacher to a training event for a certain course and show a pop-up with that notification.
I hope this helps you.