• 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 35,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!

EPLS for ZZ and 1LLL with 80 ZZLL cases


Dec 13, 2016
I would like to propose the Edge Permutation Last Slot (EPLS) method (of course if someone have already proposed this before, this thread will just be a summary instead), which is a sub-step of the ZZ/petrus method. With all edges already oriented, the EPLS method inserts the last slot of the F2L and simultaneously permutes all the LL edges. This results in only 80 distinct ZZLL cases that can guarantee a 1LLL (Or the L4C cases). If you are lucky, it is also possible to get an OLL skip and get a CPLL case or even a full LL skip!

I have actually generated all the algs to orient and permute the edges from any EO for CFOP users, however, I guess EPOLS for CFOP is not really a good idea, because the algorithms are generally pretty long (around 10 qtm) and not really finger trick friendly. I have covered some of the phasing EOLS in here and the algs involves a lot of F moves and are not really fast to execute. There are obviously space for improvement, but I'm pretty pessimistic on the EPOLS method.

For ZZ and Petrus however, the EPLS is promising, because it can be done in 2-gen with a fast recognition. The Phasing step in the ZZ-b variant is actually a subset of the EPLS as it just executes the shorter algs of the two edge permutation cases. The benefit of EPLS is obviously a much smaller alg set to 1LLL (80 distinct cases but a lot of them are actually inverse and/or mirrors). It also makes the LL much easier to recognize, since for each corner permutation there are only two possible edge permutations, and one only need to look at one extra edge sticker to determine the 1LLL case. This reduction in number of algs comes at a cost of another look to execute EPLS, and the move count for EPLS reduces the efficiency. If someone can do full ZZLL with fast recognition and execution, then EPLS is useless. However if can be a very useful when you don't want to invest in full ZZLL and want to 1LLL with as few algs as possible.

Before posting the algs I'll introduce the notation of the EPLS. I've found algs for two different LS cases (1) block formed above FR (can be inserted by URU'R') (2) block separate above FR (can be inserted by RUR'). The recognition pattern is somewhat different for the two cases.

For case (1), the UR edge is the formed block so the four U edges are in UL, UR, UB and FR. We can look at the sticker of UL, UF, and FR (for case (2) we can look at UR, UF, FR, even more convenient) without rotating the cube too much. The colours of the three stickers will be used to determine the EPLS cases. We use the UF edge as a benchmark and we'll decide which edge is in the UL and FR slot (UR FR slot for case (2)). The EPLS only have 12 algs, 6 for each case.

Taking the edge UF as a benchmark, we can mark the three remaining LL edges: the opposite one as O, the clockwise one + and the anti-clockwise one -. For example if the U face is yellow and the UF edge is yellow/orange, yellow/red is the O edge, yellow/green is the - edge and yellow/blue is the + edge. The EPLS cases are determined by the location of two of the O, +, - edges in the two slots that are easy to see (UL, FR for case (1) and UR FR for case (2)). The recognition sounds complicated but I think if you get used to it it can be pretty fast. You should be familiar with the colour scheme to recognize the edges though.

(1) UL edge | FR edge | alg (description)

(1) + | O | (U) RU'R' (simple insert)
(1) - | O | R' U' R U R U' R' U' R' U R
U2 R2 D r' U2 r D' R2 (LPEPLL algs)
U2 R2 D L' B2 L D' R2 (LPEPLL algs)
(1) - | + | U2 RU2R’ (Phasing case)
(1) + | - | U R U' R2 U2 R U R' U R (Insert + Sune)
D R' U R' U' R' U R2 D' (LPEPLL algs)
(1) O | - | URUR’U’RU’R’ (Phasing case)
(1) O | + | U L' U2 R U R' U2 L (LPEPLL algs, nice one)
R' U2 R U R' U R U' R U' R' (Sune+insert)
R' U' F U R U' R U R' U' F' (a shorter 3 gen)
(y’ U’) M U’ M’ F MUM’U F’ (an even shorter but maybe slower one)

(2) UR edge | FR edge | alg (description)

(2) O | - | RUR' (simple insert)
(2) O | + | R U2 R'U R2 D r' U2 r D' R2 (set up to (1) - | O )
U R2 U2 R' U' R U' R2 U2 R U2 R'
R U' R' U' R U' R2 U2 R U R' U R (set up to a Sune.)
(2) + | - | R U R2 U2 R U R' U R (insert + sune)
(2) - | + | RU2R’URU2R’
(2) + | O | RU'R D r' U2 r D' R2 (cancels into (1) - | O)
R U R' U' R U R' U R U2 R' (another insert + sune)
(2) - | O | R U' R' U' R U' R'

I think algs for case (2) can definitely be improved. I have summarized all the possible ZZLL cases in the zip file, which is from a ZZLL list I downloaded from Google docs. (see #4!)

Finally, an example solve:

Scramble: U L2 B2 D F2 R2 D B2 U L2 F L U2 L2 D' F2 L' D F U

FR2 D B' R D' // EOLine
U'L2U L' R' U L U L'U2 L' UR'U'R L' UL //Left block
R'URU'RUR2UR2U2R (U2) // Right block and cancels into (1) |- |+ case
(U2) RU2R' // EPLS (1) |- |+ case
U2 L' U2 R U' L U' R' U' R U2 L' U M' // Pi case ZZLL with block in front
53h 63q

instead of
U2 R'F2 RU2RU2 R' F2 U'RU'R' //COLL
M2 U M'U2 M U M2 // EPLL
62h 79q

My ZZ f2l efficiency is terrible and I'm sure that you can find a more efficient solution, but to me I would like to sacrifice a bit more moves to learn less algs. I'm not sure about the efficiency though as I didn't really compare this with other ZZ variants. Enojy!
Last edited:


Dec 13, 2016
Well there's this:


Also, the corner algset is called L4C, which is also already a thing. The algorithms are pretty terrible if I remember correctly
Thanks a lot for pointing this out. I'll also add some algs to this thread from the wiki page. The EPLS is actually the same as the LPEPLL step. I do have an alg set that simultaneously does EO and EP with a formed block, but I guess it is less efficient than LPELL and generally not worth doing.

To me the L4C cases are at least very easy to recognize under a COLL recognition scheme. It is just two cases per corner permutation. The algs are actually not that bad. The majority (if not all of them) can be done in RUL, RUD, RUF and LUF 3-gen (algs in the wiki page is not fingertrick friendly at all), with quite a few 2-gen algs. I've added the algs for the L4C in the reply.