UACalc, A Universal Algebra Calculator
byRalph Freese
I am in the process of rewriting the Universal Algebra Calculator, originally written by Matt Valeriote and revised by Emil Kiss and myself. Mike Behrisch has also made important contributions. A beta version is ready. Click one of the launch buttons below (I suggest the 2G memory one) and it will start up. After this first time, you can start from the shortcut it will make on your desktop. It will automatically update itself if there have been any changes. It requires Java 1.6 or higher. While there are several new features in this version, not all of the functionality of the old version has been coded yet, so you may want to get that too.
For computers with limited memory:
For computers with at least 2G memory: This will used 1G heap space.
For computers with at least 4G memory: This will used 2G heap space.
For computers with at least 8G memory: This will used 4G heap space.
Issues and Special Cases:
-
Linux machines:
If the orange Launch botton fails on a linux machine, go to
http://java.sun.com/getjava
and get the latest java. Then click the link below.
If this fails, here are some detailed instructions.Launch It!!
-
Macs: Java 1.6 is required so this will only work on macs that have
a 64 bit intel processor. If the orange Launch button failed, go to
the Apple site and get Java 1.6 and then click the link below.
Launch It!!
Here is a sample of what you might try:
- choose File -> Built in Algs -> lyndon.
- choose Tasks -> Free Algebra; set the number of generators to 2. you'll be switched automatically to the Computations tab and you'll see its 5 terms and it will be added to the list of algebras at the bottom.
- make this free algebra the current algebra by highlighting it (at the bottom)
- choose Drawing -> Con; hit the ++ button and i rotate the diagram (you can see there are two congruences with 4 blocks; neither mi)
- highlight lyndon at the bottom and draw its con. Note you can switch from one diagram to the other by changing the algebra at the bottom.
- choose Tasks -> B in V(A). Choose A to be F(2) (listed as A1) and B to be lyndon. It gives the failing equation (zx)y = (zy)x. Also try this with n5 and m3, both directions.
- choose File -> Built In Algs -> m3, and find F(4) over it. after a bit you will see information on how long it will take (20 to 30 minutes, you may need to scroll right). You can press the cancel and it will stop or you can do other stuff. If you let it run you can verify J. Berman and B. Wolk's result that it has 19,982 elements. In the tasks table in the middle, you can highlight a different task and see its result and log info.
- Make lyndon the current algebra by highlighting it at the bottom and switch to the Con tab. There are three atoms; two of them are meet irreducible. Click on one of them and the right-click (to get a popup menu) and choose Make quotient algebra (the only choice). Now use Tasks -> B in V(A) to verify that this 6 element quotient algebra generates the same variety (and so could have been used by Lyndon). This fact was discovered by Edmond Lee.
TCT type colors in the diagram:
- red
- yellow
- cyan
- blue
- black
What's coming:
- Products of algebras.
- Finitely presented algebras.
- Better display for sub and quotient algebras.
- Tables of the Con and Sub when they are too big to draw.
Documentation:
- (semi)-technical description
- Class notes on the Birkhoff construction of free algebras. This contains a description of the thinning and subdirect decompositions we use to speed things up.
- javadoc documentation of the classes and interfaces.