Button Menu

Computer Science Department

Set Theory Teaching Program

Graham Singer

This project is going help students wanting to learn about sets and set theory. A language made up by me will be read by an interpreter, which will be needed to drive the program. This program will be helpful in teaching about set theory because there will be immediate feedback and the independent nature of it will allow students to try multiple functions associated with set theory. Some of these functions would be: union, intersection, set difference, symmetric difference, etc. There will also be the ability to print various sets, as each set will “live” as a letter of the alphabet—making keeping track of the various sets easy for the student. This project will use many of the same basic steps as would be used when constructing a compiler. That is, there will be both lexical and syntactical analysis needed. Students using this program will be able to gain not only a good, basic understanding of set theory, but also get some insights into how coding works. Appropriate error messages will show students correct and incorrect ways on inputting code. They will also potentially be able to see how coding works, since the language will be designed with a complexity level ideal for younger students. Keywords that are easy to remember and use will be key in allowing for quick learnability of the program. Also, loading and saving of certain files will be allowed so that a teacher can “pre-load” certain sets and ask a student to make certain manipulations or answer certain questions surrounding a given file.