[][src]Module rusty_rubik::pruning

A module for representing and constructing pruning tables.

At a high level, a pruning tables gives a lower bound on how many moves are needed to solve a given position of the Rubik's Cube. The intention is for these tables to be pre-generated before any solving work begins.

Each table is generated by executing an iterative deepening DFS (IDDFS) starting from the solved state. For each state, the depth is recorded in a vector of the appropriate size.

Structs

PruningTables

A struct holding pruning information for certain subgroups of the Rubik's Cube.

Functions

generate_pruning_table_corners

Generates a pruning table for the corners of a Rubik's Cube.

generate_pruning_table_eo

Generates a pruning table for the edge orientation of a Rubik's Cube.

generate_pruning_table_ep

Generates a pruning table for the edge permutation of a Rubik's Cube.