Software for drawing group lattice diagrams?

Click For Summary

Discussion Overview

The discussion revolves around the need for software tools to create group lattice diagrams, particularly for cyclic groups and other group types. Participants explore the challenges of manually drawing these diagrams and express interest in automating the process to enhance learning and visualization of group structures.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Mathematical reasoning

Main Points Raised

  • Jack expresses a desire for existing code to draw group lattice diagrams, noting the tediousness of manual drawing and suggesting a geometric trend might not exist in cyclic groups.
  • Jack mentions a Wolfram demo he found but finds it inadequate for his needs and proposes coding a solution himself.
  • Another participant suggests using the D3 javascript library, specifically the Labeled Force Layout example, as a potential solution.
  • Jack outlines specific features he would like in a software tool, including the ability to visualize up to 10,000 cyclic groups and include various group types and properties.
  • A participant mentions that GAP can create these diagrams and discusses the distributive property of the subgroup lattice for finite cyclic groups.
  • Another participant provides a manually created lattice diagram for ##C_{100}## and discusses the geometric properties of lattice diagrams in relation to prime decomposition.
  • There is a mention of a potential error in a manually created diagram for ##C_{120}##, indicating the challenges in accurately representing these structures.

Areas of Agreement / Disagreement

Participants express a shared interest in finding or creating software for group lattice diagrams, but there is no consensus on existing solutions or the best approach to take. Multiple competing views on software capabilities and diagram accuracy remain present.

Contextual Notes

Participants note limitations in existing tools and the challenges of manually creating accurate diagrams. There are unresolved issues regarding the accuracy of specific diagrams and the complexity of implementing desired features in software.

Who May Find This Useful

This discussion may be useful for mathematicians, educators, and students interested in group theory, particularly those looking for visualization tools for subgroup structures and lattice diagrams.

jackmell
Messages
1,806
Reaction score
54
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:
Physics news on Phys.org
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:
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:
  • Like
Likes   Reactions: jackmell
Here is a nicer one for ##C_{100}##:

\begin{array}{cccc}<br /> 100 &amp; ---- &amp; 20&amp; ---- &amp; 4\\<br /> | &amp; &amp; | &amp; &amp; |\\<br /> 50&amp; ---- &amp; 10 &amp; ---- &amp; 2\\<br /> | &amp; &amp; | &amp; &amp; | \\<br /> 25 &amp; ---- &amp; 5&amp; ---- &amp; 1<br /> \end{array}

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.
 
  • Like
Likes   Reactions: jackmell
micromass said:
Here is a nicer one for ##C_{100}##:

\begin{array}{cccc}<br /> 100 &amp; ---- &amp; 20&amp; ---- &amp; 4\\<br /> | &amp; &amp; | &amp; &amp; |\\<br /> 50&amp; ---- &amp; 10 &amp; ---- &amp; 2\\<br /> | &amp; &amp; | &amp; &amp; | \\<br /> 25 &amp; ---- &amp; 5&amp; ---- &amp; 1<br /> \end{array}

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.

. . . 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.
\begin{array}{cccccc}<br /> 120 &amp;----&amp;40 &amp;----&amp;8&amp;----24 \\<br /> |&amp; &amp;|&amp; &amp;|&amp; &amp;| \\<br /> 60 &amp;----&amp;20 &amp;----&amp;4&amp;----12 \\<br /> |&amp;&amp;|&amp;&amp;|&amp;&amp;| \\<br /> 30 &amp;----&amp;10 &amp;----&amp;2&amp;----6 \\<br /> |&amp;&amp;|&amp;&amp;|&amp;&amp;| \\<br /> 15 &amp;----&amp;5 &amp;----&amp;1&amp;----3 \\<br /> \end{array}
 
Last edited:

Similar threads

  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 3 ·
Replies
3
Views
2K
Replies
12
Views
2K
  • · Replies 0 ·
Replies
0
Views
4K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 3 ·
Replies
3
Views
4K