It never fails. JUST when i decide to ‘finalize’ my MathTools I come up with a new one. I also have three more graph paper generators to write, but they may wait a while. I’m still working on Stone Blade #5 but, due to
low sales abysmal sales, I decided to hack out some Java.
The MathSet class, part of the core tools package, is designed for set-subset questions. To that end it does two basic things: given the formal name of a set, it can store user-defined symbols for that set. This allows completely flexible configuration of set symbols without software lock-in. The symbols for a specific set are listed after the formal name with each symbol separated by an ‘@’ sign. For example: ‘Poodle@Pdl@SFID’ would associate the symbols ‘Poodle,’ ‘Pdl’ and ‘SFID’ (Small Fuzzy Intelligent Dog) with the set named Poodle.
The impressive part is that MathSet can actually infer a superset/subset chain as long as enough information is given to piece it together. Sets are defined formally by giving their (formal) names, separated by colons. For instance:
defines a set-chain from ‘Animal,’ the universal set, down to ‘Poodle.’ Adding the set descriptor ‘Dog:Chihuahua’ automatically infers the ‘Animal:Mammal’ supersets. A MathSet instance encapsulates as many subset chains as you care to add and is capable of generating any type of subset/superset question based on them. What’s more, it comes with the Real Numbers and Complex Numbers pre-defined, so math questions involving these sets are REALLY simple to create.
In addition to MathSet, I also added a directory processor to the MathFileIO utility class. It accepts a directory OR a filename in a directory and processes the directory from there. It can process directories recursively if specified. Although it is termed a directory processor, it really only processes the filenames in that directory. They can be filtered by prefix String, suffix String or by regular expression, or any combination thereof. The method returns a String array of the filenames that match, formatted simply or as intricately as desired. If regular expression matching is enabled, the capture groups are available in formatting the result.
Needless to say, I’m proud of both of these things! If you’re interested, check out:
In brief, Matt’s MathTools is a standalone Java application designed to help math teachers design written tests and worksheets. It’s not limited to that, though. It can also handle MathML, HTML, LaTeX, OpenOffice/LibreOffice and ANY text-based math rendering software. Best of all, it’s FREE! So are the tutorials!!