A class register shows students and the subjects they study, and a timetable shows which subjects are taught during which lessons:
Register = map(Student, set(Subject))
Timetable = map(Subject, set(Lesson))
(a) Define an operation lessons, which takes a student, a register and a timetable and returns the set of lessons attended by that student.
(b) Define an operation attends, which returns the set of students who attend a particular lesson.
(c) Define an operation no_clashes, which, for a given register and timetable returns true if there is no timetable clashes. (A clash occurs when two subjects taken by the same student have lessons in parallel - i.e. they occupy the same lesson slot in the timetable).
Make a complete me too design following the me too method for this problem, including implementation and validation.