This is a JavaScript program for drawing ordered sets (including
lattices). The idea for the program is based on Ralph Freese's much
more sophisticated program at www.math.hawaii.edu/~ralph.
If you have no idea what an ordered set is, or if you just want to play
and see what happens, press the "Improve" button above and play with the
arrows.
"Reload" will start the drawing process over. This is sometimes necessary
if the initial (random) positions are just "bad."
"Stop Improving" stops
the drawing process. "Latex Code" will give code for drawing the
lattice with Latex and xypic.
To see a different example, select an example from the list and press
"Load Example." You can also enter you own example by typing cover
pairs in the provided space. Parenthesis, commas, braces, etc. are
irrelevant and ignored by the program -- but they may help you to keep
the pairs straight.
Explanation
Elements of the ordered set are viewed as point masses in space.
The z-values of the points are determined by their height and depth in the ordered
set. These values remain constant throughout the drawing process.
Initial x-values and y-values are random. Forces are applied to the
points, and the points are allowed to move to try to find some sort of
minimum energy position.
When improving
the diagram, three types of forces are applied to the masses.
If two points are COMPARABLE, then an ATTRACTION force is applied between them
which is inversely proportional to the distance between
the points.
If two points are NOT COMPARABLE, then a REPULSION force is applied between them
which is inversely proportional to the distance between
the points.
If one point COVERS another, then an ATTRACTION force is applied
between them which is directly proportional to the
distance betweent the points.