This program is an application of a concept that we recently learned in MTH419.
"The Fundamental Theorem of Cyclic Groups" :
- Every subgroup of a cyclic group is cyclic
- Also, if |<a>| = n then the order of any subgroup of is a divisor of n
- For each divisor k of n, the group has exactly one subgroup of that order k, namely <a^(n/k)>
This program will output all of the information necessary to draw an aesthetically pleasing lattice of the subgroups of Zn given a value for n. The group operation is assumed to be addition mod n for simplicity.