/// <summary> /// Create cycle group /// </summary> /// <param name="a"></param> public CycleGroup(GroupElement a) { generatrix = a; GroupElement e = new GroupElement(0, "1"); GroupElement temp = a; Elements.Add(a); while (temp != e) { temp *= a; Elements.Add(temp); } order = Elements.Count; }
public static List <GroupElement> Subgroup(GroupElement g) { GroupElement e = new GroupElement(0, "1"); List <GroupElement> res = new List <GroupElement>(); res.Add(e); GroupElement temp = g; while (temp != e) { temp *= g; res.Add(temp); } return(res); }