Ask Your Question
1

Multiplying elements of D4

asked 2021-12-05 09:51:56 +0200

kev gravatar image

I have the following group presentation $D_4 = \langle r,s | r^4 = s^2 = rsrs = 1 \rangle$.

This is written in sage as

F.<r,s> = FreeGroup()
D4 = F / [r^4, s^2, r*s*r*s, 1]
r,s = D4.gens()

Say I wanted to compute s^2, this should equal 1 but sage gives me just s^2.

s^2

output:

s^2

I am doing more involved calculations and I want to return the result in the simplified form. How do I simplify the expression in sage?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
2

answered 2021-12-05 19:11:33 +0200

Max Alekseyev gravatar image

updated 2021-12-05 19:12:40 +0200

Reduction here can be performed via rewriting system - like:

R = D4.rewriting_system()
R.reduce(s^2)
edit flag offensive delete link more

Comments

Thanks, this seems to work. However I got another problem when constructing my expression by using the generators of D4 in a group algebra:

F.<r,s> = FreeGroup()
D4 = F / [r^4, s^2, r*s*r*s, 1]
R = D4.rewriting_system()
A = D4.algebra(QQ)
r,s = A.gens()
e = r + s
R.reduce(e^3)

I get the error "unsupported operand parent(s) for >: 'Integer Ring' and '<class 'tuple'="">'".

When using the permutation group instead of the presentation of the group it seems to give the simplified result directly without needing to use R.reduce(...), but I don't want the result in cycle notation.

kev gravatar imagekev ( 2021-12-05 19:50:01 +0200 )edit

Perhaps, you'd need to explicitly apply reduce to the terms of e^3 - like: sum(c*A(R.reduce(t)) for t,c in e^3)

Max Alekseyev gravatar imageMax Alekseyev ( 2021-12-05 21:00:24 +0200 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2021-12-05 09:51:11 +0200

Seen: 40 times

Last updated: Dec 05 '21