• Welcome to the Speedsolving.com, home of the web's largest puzzle community!
    You are currently viewing our forum as a guest which gives you limited access to join discussions and access our other features.

    Registration is fast, simple and absolutely free so please, join our community of 40,000+ people from around the world today!

    If you are already a member, simply login to hide this message and begin participating in the community!

Cube Explorer 5.00 released - with slice moves

CubeExplorer

Member
Joined
Oct 8, 2021
Messages
41
Location
Top of the Hill
I think I have misunderstood something of the basics of permutations.

FRUR'U'F' is a well known maneuver of the beginners method. I use it just as an example.
To undo it, I can use FURU'R'F'. This is quite clear. The Rotations are inverted and executed in reverse order.
It can be verified with Cube Explorer of Herbert Kociemba.
There I type in FRUR'U'F' FURU'R'F', apply it to a solved cube and it does not change. The expression is equal to Identity.

Now I thought, the inverse of FRUR'U'F' can be written as
(FRUR'U'F')' and this would be the same as FURU'R'F'.
and (FRUR'U'F') (FRUR'U'F')' should yield Identity
But when I test this expression in Cube Explorer, the result is different, CE shows as generator:
F U R U' R' U R U' R' F'
which is equvalent to (FRUR'U'F')4 == ((FURU'R'F')2

I had a search in the wonderful permutation-puzzle-book but could not find an answer.

So my question remains: what does the last apostrophe operator really do in (FRUR'U'F')' ?
 

xyzzy

Member
Joined
Dec 24, 2015
Messages
2,876
Cube Explorer supports only the basic notation; no brackets, no commutator/conjugate notation, no wide moves.

In effect, the last apostrophe does nothing because it's not recognised as being attached to any move.

EDIT: it actually seems like bracketing is supported?
 
Last edited:

CubeExplorer

Member
Joined
Oct 8, 2021
Messages
41
Location
Top of the Hill
In effect, the last apostrophe does nothing because it's not recognised as being attached to any move.
Thank you for answering.

The last apostrophe does NOT nothing in CE.
(FRUR'U'F')'
does the same as (FRUR'U'F')3
which is the same as (FRUR'U'F')(FRUR'U'F')(FRUR'U'F')

And the other part of my question is still unanswered, what does the last apostrophe do according to permutations theory?
Are my assumptions correct, when I wrote the following?
"Now I thought, the inverse of FRUR'U'F' can be written as
(FRUR'U'F')' and this would be the same as FURU'R'F'.
and (FRUR'U'F') (FRUR'U'F')' should yield Identity"

Code:
S48 = SymmetricGroup (48)
R=S48(" (25 ,27 ,32 ,30)(26 ,29 ,31 ,28)(3 ,38 ,43 ,19)(5 ,36 ,45 ,21)(8 ,33 ,48 ,24) ")
L=S48(" (9 ,11 ,16 ,14)(10 ,13 ,15 ,12)(1 ,17 ,41 ,40)(4 ,20 ,44 ,37)(6 ,22 ,46 ,35) ")
U=S48(" (1 ,3 ,8 ,6)(2 ,5 ,7 ,4)(9 ,33 ,25 ,17)(10 ,34 ,26 ,18)(11 ,35 ,27 ,19) ")
D=S48(" (41 ,43 ,48 ,46)(42 ,45 ,47 ,44)(14 ,22 ,30 ,38)(15 ,23 ,31 ,39)(16 ,24 ,32 ,40) ")
F=S48(" (17 ,19 ,24 ,22)(18 ,21 ,23 ,20)(6 ,25 ,43 ,16)(7 ,28 ,42 ,13)(8 ,30 ,41 ,11) ")
B=S48(" (33 ,35 ,40 ,38)(34 ,37 ,39 ,36)(3 ,9 ,46 ,32)(2 ,12 ,47 ,29)(1 ,14 ,48 ,27) ")
print(R*U)   #(1,3,38,43,11,35,27,32,30,17,9,33,48,24,6)(2,5,36,45,21,7,4)(8,25,19)(10,34,26,29,31,28,18)
print(R*U*U^-1*R^-1)   #()
#(FRUR'U'F') (FRUR'U'F')'
(F*R*U*R^-1*U^-1*F^-1)*(F*R*U*R^-1*U^-1*F^-1)^-1   #()
#(FRUR'U'F')'
print((F*R*U*R^-1*U^-1*F^-1)^-1)   #(1,3,9,33,35,27)(2,5,18)(6,8,11,19,17,25)(7,34,26)
#(FURU'R'F')
print((F*U*R*U^-1*R^-1*F^-1))      #(1,3,9,33,35,27)(2,5,18)(6,8,11,19,17,25)(7,34,26)
print(((F*R*U*R^-1*U^-1*F^-1)^-1)==(F*U*R*U^-1*R^-1*F^-1))  #True

OK, now I found a way to verify my assumptions. Being new to this topic I need do check, wether my understanding of the newly learned things is correct. The sage code above contains the results too and should be self explaining.

EDIT: Thanks to qwr for the second confirmation down there in the next posting.
 
Last edited:

qwr

Member
Joined
Jul 24, 2019
Messages
3,371
YouTube
Visit Channel
Are my assumptions correct, when I wrote the following?
"Now I thought, the inverse of FRUR'U'F' can be written as
(FRUR'U'F')' and this would be the same as FURU'R'F'.
and (FRUR'U'F') (FRUR'U'F')' should yield Identity"
Yes I think this matches with the definition of inverse.


The last apostrophe does NOT nothing in CE.
(FRUR'U'F')'
does the same as (FRUR'U'F')3
which is the same as (FRUR'U'F')(FRUR'U'F')(FRUR'U'F')

Maybe this is a bug. F R U R' U' F' has order 6 so this is like a "square root" or order 3 version of that.
 

xyzzy

Member
Joined
Dec 24, 2015
Messages
2,876
The last apostrophe does NOT nothing in CE.
(FRUR'U'F')'
does the same as (FRUR'U'F')3
which is the same as (FRUR'U'F')(FRUR'U'F')(FRUR'U'F')
Ah, interesting. I stand corrected.

CE does seem to support bracketing (so e.g. "(R y)1260" works as you'd expect), but the apostrophe is being parsed as equivalent to 3. Probably because for normal moves inverting and power-3 are the same thing, an assumption that breaks down for arbitrary sequences.
 

CubeExplorer

Member
Joined
Oct 8, 2021
Messages
41
Location
Top of the Hill
Thank you, Lucas for your suggestion.

Alg does not work on this old windows xp machine wihout java, im operating here. So I can not say much. I will try it later on another machine.
 
  • Like
Reactions: qwr

qwr

Member
Joined
Jul 24, 2019
Messages
3,371
YouTube
Visit Channel
Ah, interesting. I stand corrected.

CE does seem to support bracketing (so e.g. "(R y)1260" works as you'd expect), but the apostrophe is being parsed as equivalent to 3. Probably because for normal moves inverting and power-3 are the same thing, an assumption that breaks down for arbitrary sequences.
oh yeah that makes a lot more sense.
 

Lucas Garron

Administrator
Joined
Jul 6, 2007
Messages
3,718
Location
California
WCA
2006GARR01
YouTube
Visit Channel
Ah, interesting. I stand corrected.

CE does seem to support bracketing (so e.g. "(R y)1260" works as you'd expect), but the apostrophe is being parsed as equivalent to 3. Probably because for normal moves inverting and power-3 are the same thing, an assumption that breaks down for arbitrary sequences.
What an interesting find! Glad @CubeExplorer posted about the confusion. :-D

Cube Explorer handles such algs in these two files, but I can't easily find the bug:


This line (and a similar one on line 949) looks like an obvious culprit, except that it's guarded by a check that only applies it to moves.
It might be worth telling Kociemba: https://github.com/hkociemba/CubeExplorer/issues


Thank you, Lucas for your suggestion.

Alg does not work on this old windows xp machine wihout java, im operating here. So I can not say much. I will try it later on another machine.
Hmm, neither alg.cubing.net nor Twizzle have ever used Java. But Twizzle especially (which I linked to) relies on newer browser features, so unfortunately breaking in Windows XP is pretty expected. :-/
Let me know if you're find issues on something new!
 

xyzzy

Member
Joined
Dec 24, 2015
Messages
2,876

Should be this. Replaces apostrophe and hyphen with the digit '3', then later parses it as an integer. So e.g. (R U' F B2 D)2'1' gets preprocessed into (R U3 F B2 D)2313.
 

CubeExplorer

Member
Joined
Oct 8, 2021
Messages
41
Location
Top of the Hill
... neither alg.cubing.net nor Twizzle have ever used Java. But Twizzle especially (which I linked to) relies on newer browser features, so unfortunately breaking in Windows XP is pretty expected. :-/
Thank you again, Lucas. Its interesting background info to me.

Anyway my original confusion concerning the inversion of a maneuver ist cleared now. The using of sage did help a lot.

Looking for a visual representation of the algebraic output of sage I put this into Cube Explorer Program and I found a surprising result again.
Code:
print('(F*R*U*Ri*Ui*Fi)*U^2*(F*R*U*Ri*Ui*Fi)*U^2 ==',(F*R*U*Ri*Ui*Fi)*U^2*(F*R*U*Ri*Ui*Fi)*U^2)   
#   (F*R*U*Ri*Ui*Fi)*U^2*(F*R*U*Ri*Ui*Fi)*U^2 == (4,7,26)(5,10,18)
print(((F*R*U*Ri*Ui*Fi)*U^2*(F*R*U*Ri*Ui*Fi)*U^2) == (F*R*U*Ri*Ui*Fi *U^2* F*R*U*Ri*Ui*Fi *U^2))   
#   True

CE wrong:
(FRUR'U'F')U2(FRUR'U'F')U2
CE OK:
 FRUR'U'F' U2 FRUR'U'F' U2
Maybe the brackets have a different meaning in CE, but I could not find Info to this point.

I post it here, because I will notify Herbert Kociemba with a link to this thread.
 

qwr

Member
Joined
Jul 24, 2019
Messages
3,371
YouTube
Visit Channel
Thank you again, Lucas. Its interesting background info to me.

Anyway my original confusion concerning the inversion of a maneuver ist cleared now. The using of sage did help a lot.

Looking for a visual representation of the algebraic output of sage I put this into Cube Explorer Program and I found a surprising result again.
Code:
print('(F*R*U*Ri*Ui*Fi)*U^2*(F*R*U*Ri*Ui*Fi)*U^2 ==',(F*R*U*Ri*Ui*Fi)*U^2*(F*R*U*Ri*Ui*Fi)*U^2)  
#   (F*R*U*Ri*Ui*Fi)*U^2*(F*R*U*Ri*Ui*Fi)*U^2 == (4,7,26)(5,10,18)
print(((F*R*U*Ri*Ui*Fi)*U^2*(F*R*U*Ri*Ui*Fi)*U^2) == (F*R*U*Ri*Ui*Fi *U^2* F*R*U*Ri*Ui*Fi *U^2))  
#   True

CE wrong:
(FRUR'U'F')U2(FRUR'U'F')U2
CE OK:
 FRUR'U'F' U2 FRUR'U'F' U2
Maybe the brackets have a different meaning in CE, but I could not find Info to this point.

I post it here, because I will notify Herbert Kociemba with a link to this thread.
Did you try putting spaces in between moves? I think it's customary to put a space in between every move.
 

CubeExplorer

Member
Joined
Oct 8, 2021
Messages
41
Location
Top of the Hill
Did you try putting spaces in between moves? I think it's customary to put a space in between every move.
Thanks for the hint. Could not find anything like this in the help file.

The Program normally works correctly without spaces BUT after the closing Brackets there is a space needed.
Code:
(FRUR'U'F') U2(FRUR'U'F') U2
FRUR'U'F'U2FRUR'U'F'U2
Both lines work well.

Anyway the issue with the apostrophe remains unsolved.
 
Last edited:
Joined
Nov 29, 2008
Messages
214
My program does not support bracketing at all. The only brackets it is intended not get confused with are the eventually existing brackets at the end of a maneuver which include the maneuver length.
 
Top