A common debate in the community is what makes a method or step an entity of its own or a variant of another. This debate is driven by the desire to logically group sets of steps and also to protect the ideas of developers. When the cube was first released and people were developing the first methods, every proposed set of steps that had even the smallest difference was considered a separate method. There were numerous methods that solved the first two layers then the last layer in different ways, or solved all corners then all edges in a different way and order. There have been many more methods created since those early years. In order to organize all of these methods and to protect the ideas and work of those who first proposed and developed the ideas, we need a classification system.
The way that I, and potentially many others, have always differentiated methods is by the shapes that are formed as the method progresses through its steps. We commonly associate certain shapes with a specific method. This is the basis for the classification described on this page. Others have proposed different ideas, such as classifying based on measuring how distant states are between methods. The classification ideas on this page are intended to be more "human" and align with the typical thought process people go through when developing methods. The intent of this page isn't to say that this is the best way of classification, nor to say that it is the way that I strictly adhere to. These ideas are simply being presented as one or a few possibilities among others.
Shapes
Each method has its own shapes that are formed by placed pieces as it goes through its steps. Below are some of the common methods and their shape state progressions:
CFOP: Cross > F2L > LL
Petrus: 2x2x3 block > Right block > LL
Roux: 1x2x3 block > Opposite 1x2x3 block
42: 1x2x3 block > Opposite 1x2x2 block > L5C > L7E
Nautilus: 1x2x3 block > 2x2x2 block > LXSLL
APB: 2x2x3 block + F2L pair > F2L > LL
Mehta: 1x2x3 block > E layer > F2L > LL
Each of these methods can be identified by its unique shape. Two chosen methods can have a lot of similarity starting out but can have endings that are completely different, such as Roux and 42. We can use shape states as the basis for a classification system that allows for defining individual methods or the placement of one as a variant of another method. This isn't perfect of course. Individual methods tend to advance with use, solving more pieces further back in the solve. CFOP with its gradual edge control integration has consumed ZBLS. Roux has traditionally been two 1x2x3 blocks with an LSE ending. Will the Roux method eventually advance to leaving out a pair of the second block and working with the last five corners, potentially enveloping the 42 method?
With methods pulling their steps back as they advance, the base shapes also change. CFOP has evolved from cross and F2L being the base shape to it now potentially becoming cross and F2L-1. We often see the proposal of a new method with steps that are F2L-1 then some new way of solving the final F2L pair and last layer. With CFOP's classification evolution, are MGLS and ZB LSLL methods instead of complete methods of their own?
Techniques
Many techniques exist, such as edge orientation, corner permutation, pseudo (non-matching blocks, conjugation, and others). Within this classification the use of these techniques doesn't separate a method into its own entity. It instead creates a variant of an existing method's shape structure, one that may or may not more quickly and or easily form the shapes of the method. Some techniques improve ergonomics, some reduce the number of algorithms that are required in later steps, and some reduce the overall move count of the method. However, the mentioned techniques don't change the shapes of each step and therefore don't change the overall classification of the method. Classifying techniques in this way not only adheres to the shape based concept, but also simplifies the method naming process. It prevents the complex situation of various people applying one or more of the techniques to various stages of all methods, then creating their own names for the numerous alterations. Simple examples of what this means:
Early edge orientation while solving the cross, often called the ZZ method, is a variant of CFOP.
Early corner permutation applied to the LEOR method is a variant of the LEOR method. This is given the name CEOR.
The use of non-matching blocks in the Roux method or other methods doesn't produce a new method. It is simply a technique to improve the move count and ergonomics.
One of the primary arguments in the case of early EO, in particular for the ZZ method, is that early EO separates ZZ with EOCross and CFOP with Cross by the change in ergonomics that early EO produces. However, this becomes an issue when we start applying early EO to every existing method. Just a quick scan of cubinghistory.com will show the large number of methods that exist. It would be very easy for someone to go through each method, find the ones that don't start with early EO, apply early EO to all of those, then name the methods after theirself - Smith Method 1, Smith Method 2, and so on. It is much neater and more organized to have the early-EO version of a method be classified as a variant.
Early corner permutation is a similar case. The CEOR method permutes the corners into an RU solvable state then continues with the steps of the LEOR method. The community's naming of this aligns well with the classification system presented here. Early corner permutation has also been applied to the Nautilus method and it is classified as a variant. However, the technique hasn't yet been applied to every existing method. What if someone applies early corner permutation to Roux, 42, MI1, or any method to which the technique hasn't been applied? Under this shape based classification, all of those proposals would be variants of the original method.
Pseudo is another of the techniques. Non-matching blocks is a technique that has been experimented with for the Roux method since early in its inception. This technique can improve the ergonomics and also reduces the move count of the method. Yet we recognize the Roux method as following the structure of 1x2x3 block > 1x2x3 block > Corners > Edges. We wouldn't say that Roux with NMB is a completely different method with a different name. Even going deeper into the levels of pseudo with the use of Roux with flipped, swapped, and out of place pairs and the use of ACMLL, the result is improved ergonomics and move count but the overall resulting shapes are still the same.
What does this mean for existing methods that use a technique and are called a name of their own? Under this classification, ZZ with EOCross would indeed be a variant of CFOP (or CFCE, or any LL method). EOLine then F2L would be a separate group of its own, as a variant of the non-EO version of Line then F2L, regardless of whether it is a quality speedsolving method.
Generator Classification
A new classification can be created that incorporates techniques into the shapes. This may or may not change the simplicity or necessity to consider a method as a variant of another. The idea here is to classify a method based on the shape and the move group of each step. This creates a very simple way of defining and distinguishing one method from another. Examples:
CFOP: After Cross, F2L is <R U R', F' U' F, R' U' R, B U B', L' U' L, F U F', L U L', B' U' B>
ZZ: After EOCross is <R U R', R' U' R, L' U' L, L U L'>. EOLine is <L, U, R>.
LEOR: The last layer uses all moves.
CEOR: The intent of the method is to use <R, U> to solve the last layer.
Families
We can look at the big picture and group the methods with their defining shapes into families. There can potentially be many families depending on how early in a solve the family grouping starts. Some methods may belong in two or more families. Examples:
F2L: We have various ways of solving F2L. Not only cross then F2L, but also first layer then second layer, 2x2x2 > 2x2x3 > final 1x2x3, the infamous often proposed Roux and CFOP combination of F2B then bottom layer edges, and many more. Petrus, LEOR, and APB also solve the first two layers. All of these methods would belong in the F2L family.
Corners First: There are many ways of solving the edges after the corners.
Waterman/Roux/Others: Another potential family are the methods that start with a 1x2x3 block or a layer minus a single edge, solve the corners and maybe a few edges, then end with an edge only step.
The families idea began discussion in 2021 among Nathan Zwier and others in various method focused Discord servers.