Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Software for drawing group lattice diagrams?

  1. Sep 6, 2015 #1
    Hi,

    I was wondering if there is code already available to draw group lattice diagrams if I already know what the subgroup structure of the group and its subgroups are. For example, it's easy to determine the subgroup lattice for cyclic groups simply using divisors via Lagrange's Theorem. But it's a bit tedious to hand-draw the lattice diagram. I'm curious if I can notice a geometric trend in the lattice geometry of cyclic groups. I suspect not and predict the geometry would be as random as the factors of integers but I don't know for sure. Also I understand there are connections between groups that have similar lattice structures. For example isomorphic groups have the same structure.

    Anyway, having a program to quickly draw the structure would aid in learning about groups and I think it's a good idea to have one.

    I can code it if none are available. I've already started on the code although it's not working for larger groups yet. Here's ##C_{50}##: my 50lattice.jpg

    Ok thanks,
    Jack

    Edit: Sorry, I found one in the Wolfram demos that also includes cyclic groups (I'd just delete this thread if I could):
    http://demonstrations.wolfram.com/LatticeOfSubgroupsOfPermutationGroups/

    Edit: I uploaded this code and it's inadequate so this demo will not do unless I upgrade it. Anyway, anyone has a better idea?
     
    Last edited: Sep 6, 2015
  2. jcsd
  3. Sep 7, 2015 #2

    Borg

    User Avatar
    Gold Member

  4. Sep 7, 2015 #3
    Thanks Borg but no that's not it. Been searching the web and haven't found anything yet. The Wolfram demo is entirely inadequate. I just cannot believe there is no publicly-available routine to manage group lattice diagrams in a nice, thorough, pleasing, and educationally-enriching manner. This is what I would like:

    (1) Implement a routine in a Mathematica Manipulate environment which instantaneously depicts the group lattice of say 10,000 cyclic groups in terms of their orders as I move a control-bar from the 10 position to the 10,000 position.

    (2) Update the routine to include dihedral, dicyclic, symmetric, integer mod, general linear groups, and other interesting groups.

    (3) Add an option that depicts the lattice in terms of the actual group members. For example the symmetric and dihedral.

    (4) Add an option that identifies properties of a group based on the lattice like isomorphic, normalizers, centralizers, and other things I don't know yet.

    I'll work on this a bit here if you guys don't mind. Perhaps if no software is available to do the above, we could move this to the Math software forum since then it becomes a programming issue.

    Here's one I manually made for ##C_{100}## which I think is correct. However, it doesn't look nice. Wish it to be clear, symmetrical (100 on top and 1 on the bottom) un-cluttered as possible and if lines have to intersect, switch to a 3-D plot perhaps like the second plot below.
    lattice2.jpg
    lattice3.jpg
     
    Last edited: Sep 7, 2015
  5. Sep 7, 2015 #4

    micromass

    User Avatar
    Staff Emeritus
    Science Advisor
    Education Advisor
    2016 Award

    GAP can do this.

    Anyway, the lattice of subgroups of a finite cyclic group is characterized by the distributive property. That is, we have for a finite group that the lattice of subgroups is distributive if and only if the lattice is distributive. See "The Theory of Groups" by Hall.

    A more geometric property would be given by the pentagon-diamond theorem which characterizes the distributive lattices and hence the cyclic groups.
     
    Last edited: Sep 7, 2015
  6. Sep 7, 2015 #5

    micromass

    User Avatar
    Staff Emeritus
    Science Advisor
    Education Advisor
    2016 Award

    Here is a nicer one for ##C_{100}##:

    [tex]\begin{array}{cccc}
    100 & ---- & 20& ---- & 4\\
    | & & | & & |\\
    50& ---- & 10 & ---- & 2\\
    | & & | & & | \\
    25 & ---- & 5& ---- & 1
    \end{array}[/tex]

    You should notice that the lattice diagram of a number ##n## is just a collection of (hyper)cubes with as basis axes the primes in the prime decomposition.
     
  7. Sep 7, 2015 #6
    . . . not easy for me. I think this is the lattice for ##C_{120}## however there should be an edge going from 120 to 24 on top and another going from 15 to 3 on the bottom I think so anyway.
    also can't seem to get the last vertical line to line up correctly.

    I'll check-out the book by Hall tomorrow.
    [tex]\begin{array}{cccccc}
    120 &----&40 &----&8&----24 \\
    |& &|& &|& &| \\
    60 &----&20 &----&4&----12 \\
    |&&|&&|&&| \\
    30 &----&10 &----&2&----6 \\
    |&&|&&|&&| \\
    15 &----&5 &----&1&----3 \\
    \end{array}[/tex]
     
    Last edited: Sep 7, 2015
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: Software for drawing group lattice diagrams?
  1. An Group (Replies: 1)

  2. Lattice Points (Replies: 7)

  3. Distributive lattices (Replies: 5)

Loading...