Message Boards Message Boards

0
|
2367 Views
|
2 Replies
|
0 Total Likes
View groups...
Share
Share this post:

Simplification and equivalence determination of noncommutative algebraic

Posted 2 years ago

I created one of the abstract group of order 192 used in this book with gap based on the set of defining relations (generating relations) as indicated by the first red box in the following screenshot:

enter image description here

I listed all the elements of one of its conjugacy classes by the following code snippet:

f := FreeGroup("P","Q","R","S");
AssignGeneratorVariables(f);

g := f/[ [P^11, P^-1], [ Q^3, Q^-1 ], [R^3 , R^-1 ], [S^7, S^-1 ], [Q^2, R^2], [S^2, P^6*Q^2*R],  [Q*P, P^7*Q^2*R], [ Q*P^3, P^3*Q], [R *P, P^10*Q*R], [R*Q,P^6*Q^3*R], [S*P, P^2*R*S], [S*Q, P^3*Q^3*R*S], [S*R,R*S] ];
cc:=ConjugacyClasses(g);
Elements(cc[32]);

The above code snippet gives the following result:

[ P^9*Q*P^2*S, Q*P*Q^2*S, P^8*Q^2*S, P^2*(P*Q)^2*S, P^2*Q*P*S, P^6*S ]

It seems that the above list is corresponding to the C13, i.e., the second red box in the above screenshot. But as you can see, they have very different symbolic expressions. So, I want to simplify and confirm the equivalence between these two set of expressions using the non-commutative algebraic multiplication and simplification capabilities of Wolfram language.

I also tried with the NCAlgebra package as follows, but still failed to find any useful clues:

In[34]:= << NC`
<< NCAlgebra`

During evaluation of In[34]:= NC::Directory: You are using the version of NCAlgebra which is found in: "/home/werner/.Mathematica/Applications/NC/".

During evaluation of In[34]:= NCAlgebra::SmallCapSymbolsNonCommutative: All lower cap single letter symbols (e.g. a,b,c,...) were set as noncommutative.

In[74]:= NCReplaceAll[p^9 ** q ** p^2 ** s, {
  p^12 -> 1,
  q^4 -> 1,
  r^4 -> 1,
  s^8 -> 1,
  q^2 -> r^2,
  s^2 -> p^6 ** q^2 ** r,
  q ** p -> p^7 ** q^2 ** r,
  q ** p^3 -> p^3 ** q,
  r ** p -> p^10 ** q ** r,
  r ** q -> p^6 ** q^3 ** r,
  s ** p -> p^2 ** r ** s,
  s ** q -> p^3 ** q^3 ** r ** s,
  s ** r -> r ** s}]

Out[74]= p ** p ** p ** p ** p ** p ** p ** p ** p ** p ** p ** p ** \
p ** p ** p ** p ** q ** q ** r ** p ** s

In[76]:= NCReplaceAll[p ** p ** p ** p ** q ** q ** r ** p ** s, {
  p^12 -> 1,
  q^4 -> 1,
  r^4 -> 1,
  s^8 -> 1,
  q^2 -> r^2,
  s^2 -> p^6 ** q^2 ** r,
  q ** p -> p^7 ** q^2 ** r,
  q ** p^3 -> p^3 ** q,
  r ** p -> p^10 ** q ** r,
  r ** q -> p^6 ** q^3 ** r,
  s ** p -> p^2 ** r ** s,
  s ** q -> p^3 ** q^3 ** r ** s,
  s ** r -> r ** s}]

Out[76]= p ** p ** p ** p ** r ** r ** r ** p ** s

I don't know whether this problem can be solved with the help of Wolfram language. Any hints will be highly appreciated.

Regards, HZ

Attachments:
POSTED BY: Hongyi Zhao
2 Replies
Posted 2 years ago

I tried with the following, but still failed:

In[6]:= NCReplaceAll[p^9 ** q ** p^2 ** s, {
  p -> p^-11,
  q -> q^-3,
  r -> r^-3,
  s -> s^-7,
  q^2 -> r^2,
  s^2 -> p^6 ** q^2 ** r,
  q ** p -> p^7 ** q^2 ** r,
  q ** p^3 -> p^3 ** q,
  r ** p -> p^10 ** q ** r,
  r ** q -> p^6 ** q^3 ** r,
  s ** p -> p^2 ** r ** s,
  s ** q -> p^3 ** q^3 ** r ** s,
  s ** r -> r ** s,
  p_^n1_. ** p_^n2_. -> p^(n1 + n2),
  q_^n1_. ** q_^n2_. -> q^(n1 + n2),
  r_^n1_. ** r_^n2_. -> r^(n1 + n2),
  s_^n1_. ** s_^n2_. -> s^(n1 + n2)
  }]

Out[6]= p ** p ** p ** p ** p ** p ** p ** p ** p ** p ** p ** p ** p \
** p ** p ** p ** q ** q ** r ** p ** s

Would you please give me more hints/explanations/examples?

Regards, HZ

POSTED BY: Hongyi Zhao

You have a mix of powers and noncommutative products. You probably need something to convert the latter to the former when appropriate, e.g. a rule like p_^n1_.**p_^n2_. -> p^(n1+n2).

POSTED BY: Daniel Lichtblau
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract