# How to fix the 11/12 wrong random assembly (of 3x3x3)?



## dan41 (Jan 29, 2015)

Hi,

I understand that one can assemble a 3x3x3 by randomizing the 7 corner cubies with 1 in 3 twists, and 11 edge cubie with 1 in 2 flips.

The question I have is about how does one (computer, likely) figures out:
-the 8th corner cubie twist (3 choices)
-the 12th edge cubie flip (2 choices)
-and if a cubie swap is required (2 choices)

...to get the 1 in 12 solvable cube.

I don't want to use a solver to fix at the end when it is obvious, I want to know just by (likely computer assisted) inspection.

Is it possible? How?

Thanks.


----------



## GuRoux (Jan 29, 2015)

dan41 said:


> Hi,
> 
> I understand that one can assemble a 3x3x3 by randomizing the 7 corner cubies with 1 in 3 twists, and 11 edge cubie with 1 in 2 flips.
> 
> ...



count how many twist clockwise or how many flips. the total for corners should be a multiple of three while edges is multiple of 2.


----------



## dan41 (Jan 29, 2015)

GuRoux said:


> count how many twist clockwise or how many flips. the total for corners should be a multiple of three while edges is multiple of 2.



that is obvious, but where is the reference?

I mean, I put my hand in a bag of cubies, and place it. Is it flipped +1 or 0? is it twisted +1 or -1 or 0? And it is not even in its original corner, so what is the referential to figure that out?

Meanwhile, the question remains about the last swap...


----------



## GuRoux (Jan 29, 2015)

dan41 said:


> that is obvious, but where is the reference?
> 
> I mean, I put my hand in a bag of cubies, and place it. Is it flipped +1 or 0? is it twisted +1 or -1 or 0? And it is not even in its original corner, so what is the referential to figure that out?
> 
> Meanwhile, the question remains about the last swap...



reference it to oriented. if yellow center is on top, all corner with yellow or white on top is +0.


----------



## GuRoux (Jan 29, 2015)

dan41 said:


> t
> 
> Meanwhile, the question remains about the last swap...



cubie swap i don't know.


----------



## Stefan (Jan 29, 2015)

dan41 said:


> where is the reference?



Wherever you want, really.

You can for each piece/place decide which of the stickers/stickerpositions is the reference one, and then you can compare the reference one of the piece to the reference one of the place it's in.



dan41 said:


> Meanwhile, the question remains about the last swap...



Calculate the overall permutation parity. It must be even. Or calculate the edge permutation parity and check that it matches the corner permutation parity.


----------



## PenguinsDontFly (Jan 29, 2015)

How about just solving it and then fixing mistakes? I'm betting this is faster. Besides, 3x3 reassembly should be easy to make it in solved state, and it doesnt take very long. On today's cubes, it is very hard to pop out 2 or more pieces so it should be easy to remember how they were oriented.


----------



## AlphaSheep (Jan 29, 2015)

To pick up if you need to swap 2 edges, what Stefan is trying to say is that you should count the corner and edge targets as you would during memorization for blindfolded solving. If the sum of corner and edge targets is odd, you need to swap 2 edges or corners. It doesn't matter which of them you swap, because there are plenty of algorithms that can change the cube from needing a corner swap to needing an edges swap, e.g. T perm.

For edge orientation, you can count flipped edges using the rules from the ZZ method. If you have an odd number of bad edges, one of them needs to flip.


----------



## Stefan (Jan 29, 2015)

AlphaSheep said:


> what Stefan is trying to say is that you should count the corner and edge targets as you would during memorization for blindfolded solving.



That's not what I'm saying, and I'm not "trying" to, either. You could for example alternatively count the number of inversions, which is definitely easier at least to program.



AlphaSheep said:


> can change the cube from needing a corner swap to needing an edges swap, e.g. T perm.



There's no "needing a corner swap" or "needing an edges swap". Not even really "needing a swap", although that's in the right direction.

(unless you're talking about a specific state and intention, like the cube is solved except for two swapped edges, in which case it does need that edge swap to be solved without doing anything else)


----------



## AlphaSheep (Jan 29, 2015)

Stefan said:


> That's not what I'm saying, and I'm not "trying" to, either.



Sorry. My choice of words was terrible. You did say exactly what you meant.




Stefan said:


> There's no "needing a corner swap" or "needing an edges swap". Not even really "needing a swap", although that's in the right direction.
> 
> (unless you're talking about a specific state and intention, like the cube is solved except for two swapped edges, in which case it does need that edge swap to be solved without doing anything else)



By "needing a swap", I mean odd permutation parity. I know that "needing a corner swap" and "needing an edges swap" are meaningless. That's what I was trying to say.


----------



## dan41 (Jan 29, 2015)

awesome. good thing I learned 3bld during holidays...!

So to recap using popular BLD letter notation (pfetzz? dunno...lol):

* edge flips: got it, I recalled the ZZ accounting (I only read on ZZ about 3 days ago; how fortunate!). I needed this little push!

* corners twists: from ZZ edge accounting, I can extrapolate. let's set the references to a, b, c, d, u, v, w, x
If I see that k goes to reference d, you suggest that I simply compare to the reference on the same cubie, (in this case 'v'), which means the cubie must twist -1.

* swap: oh my, why didn't I think of BLD parity! That's perfect. A tad more challenging for code.


So the build up algo could simply follow the BLD chaining as the random pieces are installed, which allows accounting the permutations and new cycles right away:

install 11 edges fully random,
install the 12th edge with mandatory flip,
install 6 corners fully random,
install 7th corner with mandatory position and random twist
install the 8th corner with mandatory twist.

I will try that as a human first; interesting mental exercise.
Coding next.

Thanks!


----------

