## How to simplify noncommutative expressions?...

I am trying to simplify noncommutative expressions that use the 'dot' operator: `.`. The following is a minimal example:

, which evaluates to:

This should simplify to 'a1', as I am expecting `.` to work like noncommutative multiplication. If there is any way to define this behavior I would appreciate some help. Alternatively, I would also be happy with reworking 'simplify' to work in this scenario. If it helps, I am working with finitely presented groups. If you see the Maple package 'GroupTheory', you'll see that the 'Group' function has this built in. If we input generators and relators it will simplify expressions of the above type, so I know it can be done!

Lastly, I would prefer displaying '1/a1' as 'a1^-1', but that is just for aesthetics.

Here is a minimal document: minimalexample.mw

## how to convert GeneralLinearGroup and GeneralOrtho...

how to convert GeneralLinearGroup and GeneralOrthogonalGroup to permutation group for small parameters

GL23 := GeneralLinearGroup(2, 3);

Generators(GL23);

i use generators , is it correct to find permutation group?

but there is a comma,

[((1, 2)(3, 5))(4, 7), (1, 3, 6)(2, 4, 8)]

does it mean that it has two different solutions?

if not, it is only one solution,

does it mean that permutation matrix is

permutationmatrix of  ((1, 2)(3, 5))(4, 7) + (matrix plus) permutation matrix of  (1, 3, 6)(2, 4, 8) ?

## how to convert baby monster group into permutation...

how to convert baby monster group into permutation group and iterate baby monster to display all permutation group?

if not convert to permutation group directly,

how to convert to matrix group first and then convert to permutation group?

## How to find back equation...

from galois group function's result?

## Is it possible to create a mapping ...

from permutation group to permutation group and inverse this mapping?

how to do?

## How to solve in c1, c3, c4?...

f := x^4-c1*x^3+c2*x^2-c3*x+c4;

restart;
ferrai := -x1^3*x2*x3*x4-x1^2*x2^2*x3^2-x1^2*x2^2*x4^2-x1^2*x3^2*x4^2-x1*x2^3*x3*x4-x1*x2*x3^3*x4-x1*x2*x3*x4^3-x2^2*x3^2*x4^2+x1^2*x2*x3*y+x1^2*x2*x4*y+x1^2*x3*x4*y+x1*x2^2*x3*y+x1*x2^2*x4*y+x1*x2*x3^2*y+x1*x2*x4^2*y+x1*x3^2*x4*y+x1*x3*x4^2*y+x2^2*x3*x4*y+x2*x3^2*x4*y+x2*x3*x4^2*y-x1*x2*y^2-x1*x3*y^2-x1*x4*y^2-x2*x3*y^2-x2*x4*y^2-x3*x4*y^2+y^3;
coeff(ferrai, y^3);
coeff(ferrai, y^2);
coeff(ferrai, y);
res := ferrai - coeff(ferrai, y^3)*y^3 - coeff(ferrai, y^2)*y^2 - coeff(ferrai, y)*y;

c2 := -coeff(ferrai, y^2)/coeff(ferrai, y^3);
sys1 := c1*c3 - 4*c4 = coeff(ferrai, y)/coeff(ferrai, y^3);
sys2 := -c3^2-(c1^2)*c4+4*c2*c4 = res;
solve([sys1, sys2],[c1,c3,c4]);

number of equations is not enough, is it possible to find back c1,c3,c4?

though c2 is easy to know

## How to find these products?...

assume not starting from resolvent of quartic,

how to find [[1,2],[3,4]] and [[1,3],[2,4]] and [[1,4],[2,3]] ?

a1*a2 + a3*a4 if [[1,3,2,4],[1,2]]

a1*a3 + a2*a4 if [2,3][[1,3,2,4],[1,2]]

a1*a4 + a2*a3 if [2,4],[[1,3,2,4],[1,2]]

moreover, i use multiplication of permutation group can not multiply below

though i know how to operate multiplication by hand, i follow the syntax to do multiplication, seems not the way

with(group):
mulperms([[2,3]], [[1,3,2,4],[1,2]]);
mulperms([[1,3,2,4],[1,2]], [[2,3]]);

mulperms([2,3], [[1,3,2,4],[1,2]]);
mulperms([[1,3,2,4],[1,2]], [2,3]);

## How to find these orbits?...

how to find [[1,3,2,4],[1,2]] and [2,3][[1,3,2,4],[1,2]] and [2,4],[[1,3,2,4],[1,2]]?

and why Orbits(G) put permutation group into power, how to display the result of this power group?

i use this or quartic polynomials' resolvent

with(GroupTheory):
G := SpecialUnitaryGroup(3, 1);
Orbits(G);
Orbit(1,G);
Orbit(3,G);

## Error when calculating orbit...

with(GroupTheory):
G := Group({[[1, 2]], [[3, 4]]});
Orbit(G);
G := Group({[[1, 2], [3, 4]]});
Orbit(G);

GroupTheory:-PermutationGroup(

{module () local cycles, p, d, work; option object; end module,

module () local cycles, p, d, work; option object; end module},

degree = 4)
Error, invalid input: GroupTheory:-Orbit expects its 1st argument, point, to be of type posint, but received module () local labels, minSupp, maxSupp, suppSize, AtkinsonsAlgorithm, IsSimpleGroupOrder, doDerivedSeries, doLowerCentralSeries, Intersection2, RightCosetRepresentatives, LeftCosetRepresentatives, PRA, `Giant?`, `Even?`, doStab1, doStab, CycleIndexMonomial; export generator_list, n, supergroup, Sylows, pCores, ModulePrint, ModuleDeconstruct, Generators, Orbit, Orbits, IsTransitive, Transitivity, IsPrimitive, GroupOrder, Elements, IsAbelian, IsElementary, IsSimple, ConjugacyClass, ConjugacyClasses, CayleyTable, Centre, DerivedSubgrou...
GroupTheory:-PermutationGroup(

{module () local cycles, p, d, work; option object; end module},

degree = 4)
Error, invalid input: GroupTheory:-Orbit expects its 1st argument, point, to be of type posint, but received module () local labels, minSupp, maxSupp, suppSize, AtkinsonsAlgorithm, IsSimpleGroupOrder, doDerivedSeries, doLowerCentralSeries, Intersection2, RightCosetRepresentatives, LeftCosetRepresentatives, PRA, `Giant?`, `Even?`, doStab1, doStab, CycleIndexMonomial; export generator_list, n, supergroup, Sylows, pCores, ModulePrint, ModuleDeconstruct, Generators, Orbit, Orbits, IsTransitive, Transitivity, IsPrimitive, GroupOrder, Elements, IsAbelian, IsElementary, IsSimple, ConjugacyClass, ConjugacyClasses, CayleyTable, Centre, DerivedSubgrou...

## Three questions on groups...

1.

similar gap system, which function can output coset table ?

if find example below,

f := FreeGroup( "a", "b" );

g := f / [f.1^2, f.2^3, (f.1*f.2)^5];
tab := CosetTable(g, Subgroup(g, [g.1, g.2*g.1*g.2*g.1*g.2^-1]));

2.

if quotient group is for equivalence relations, what do relations [g.1, g.2*g.1*g.2*g.1*g.2^-1] for? which kind of relations is for input to subgroup parameter which is like relations?

3. equalivance relations in wiki mentioned is to partition cells, how do they satisfy symmetric, reflexive and transitive after partition? how to test these partition?

## how to implement a free group with symmetric prope...

how to implement a free group with symmetric properties?

i find that equivalence relations = relexive, symmetric and transitive , is only these three ?

if implement symmetric properties, does it mean that adding equivalence relations to group?

how to implement free group with this?

i guess something like

f := FreeGroup( "a", "b" );
g := f / [equivalence relations....];

## Is there a library of equivalence relations?...

is there a library storing all kinds of equivalence relations?
https://en.wikipedia.org/wiki/Equivalence_relation
For quotient groups, is there IsEquivalenceRelation and IsEquivalenceClass like gap system?
www.gap-system.org/Manuals/doc/ref/chap33.html
like
f := FreeGroup( "a", "b" );
g := f / [f.1^2, f.2^3, (f.1*f.2)^5];

when i paste words here, most words missing, is there being hacked?

## how to calculate the shorting routing path in cayl...

how to calculate the shorting routing path in cayley graph?

i search that it is related with knuth bendix

## is it possible to generalize a function to a combi...

is it possible to generalize a function to a combinatorial level for approximate axioms

for example, first 100 or 1000 data points satisfy axioms

or 100% satisfy a axioms which means satisfy to infinity

because i find data always not exactly satisfy the axioms,
i guess it only satisfy to some limit, this may explain why data has decimal number

or conversely is it possible to generalize some axioms which approximate the original exact axioms
then data can exactly satisfy the approximate axioms

can generalize a nested forloop to achieve this goal?

how can it be done in algebra point of view?

For example:

x*y = for loop -> for loop -> i*j

it can change for loop expression into algebra

for i from 1 to 10 do
for j from 1 to 10 do
print i*j
od:
od:

## GroupTheory Stabiliser...

what conditions are necessary that a group G has stabilisers?

 1 2 Page 1 of 2
﻿