Solutions to the Wordle 5-clique problem

Wordle is a single-player word game acquired by the NY Times from inventor Josh Wardle about 4 years ago (Wordle โ€” The New York Times). It is an English language elimination puzzle where the player attempts to determine a daily 5-letter answer word among a pool of 3,201 in 6 guesses from a pool of 14,855 5-letter guess words. There are several efficient strategies for solving the daily puzzle. The NYT game is popular, with over 4 million daily players in 2025.

The wordle 5-clique problem is an intellectual curiosity and not considered an efficient solution method. It asks: what 5 word subsets of the 14,855 guess words contain 25 unique letters of the alphabet. The methodology used to solve the query follows.

Computing was performed with Mathematica v.15 personal edition installed on an Intel i9-10900KF Windows 11 system overclocked to 5.1 GHz with 128 GB RAM. The current list of 14,855 guess words was obtained from valid-wordle-words.txt ยท GitHub and converted to uppercase. The list was reduced in size to 9,365 words with 5 unique letters.

sufficientWords = (If[Length[Union[Characters[#]]] == 5, #, 
      Nothing] & /@ guessWords);

Next, word pairs with no common letters were joined by undirected edges and placed in a dynamic array. Subsequently, the dynamic array was normalized to an ordinary list of 6,404,322 edges.

edgesDA = CreateDataStructure["DynamicArray"];
Do[
  iword = sufficientWords[[i]];
  Do[
   jword = sufficientWords[[j]];
   If[! ContainsAny[Characters[iword], Characters[jword]], 
    edgesDA["Append", iword \[UndirectedEdge] jword]],
   {j, i + 1, sufficientWordsCount}
   ],
  {i, 1, sufficientWordsCount - 1}
  ];
edges = Normal[edgesDA];
edgesDA = Null;
(* 10 minutes *)

The edges list was then placed in a graph:

graph = Graph[edges]; (* 2 minutes *)

from which the cliques were computed:

all5cliques = FindClique[graph, {5}, All]; (* 1496 minutes *)

Here are the 25 solutions:

{
{"VOZHD", "CIMEX", "GRYPT", "BLUNK", "WAQFS"}
{"GLITZ", "PHYNX", "MOVED", "BRUCK", "WAQFS"}
{"GLITZ", "PHYNX", "JOKED", "CRUMB", "WAQFS"}
{"GLITZ", "PHYNX", "JUKED", "CROMB", "WAQFS"}
{"GLITZ", "PHYNX", "DRECK", "JUMBO", "WAQFS"}
{"GIZMO", "PHYNX", "VELDT", "BRUCK", "WAQFS"}
{"VOZHD", "CLUNK", "GRYPT", "BEMIX", "WAQFS"}
{"VOZHD", "XYLIC", "KEMPT", "BRUNG", "WAQFS"}
{"FRITZ", "WHUMP", "GYVED", "BLONX", "JACKS"}
{"MILTZ", "PHYNX", "GOVED", "BRUCK", "WAQFS"}
{"MILTZ", "PHYNX", "JUDGE", "BROCK", "WAQFS"}
{"KLUTZ", "PHYNX", "JIVED", "CROMB", "WAQFS"}
{"KLUTZ", "PHYNX", "GIVED", "CROMB", "WAQFS"}
{"JUMPY", "VOZHD", "TRECK", "BLING", "WAQFS"}
{"JUMPY", "VOZHD", "GLENT", "BRICK", "WAQFS"}
{"FRITZ", "JUMPS", "GYVED", "BLONX", "WHACK"}
{"FRITZ", "JUMPS", "GYVED", "BLONX", "CHAWK"}
{"JIMPY", "VOZHD", "GLENT", "BRUCK", "WAQFS"}
{"FJORD", "NYMPH", "GUCKS", "VIBEX", "WALTZ"}
{"FJORD", "GLITZ", "PHYNX", "WEMBS", "QUACK"}
{"FJORD", "CHUNK", "GYMPS", "VIBEX", "WALTZ"}
{"CYLIX", "VOZHD", "KEMPT", "BRUNG", "WAQFS"}
{"VOZHD", "PLING", "TRECK", "JUMBY", "WAQFS"}
{"PRICK", "VOZHD", "GLENT", "JUMBY", "WAQFS"}
{"CLIPT", "VOZHD", "KRENG", "JUMBY", "WAQFS"}
}

Of these, the permutation

{"WALTZ", "FJORD", "VIBEX", "CHUNK", "GYMPS"}

is considered to contain the least uncommon words, ordered mostly from highest to lowest vowel frequencies in the answer word pool.

2 Likes

news-congrads-kkluyshnik-02-04-19.jpg โ€“ you have earned Featured Contributor Badge 2015-11-02_10-07-11.png
Your exceptional post has been selected for our editorial column Staff Picks http://wolfr.am/StaffPicks and Your Profile is now distinguished by a Featured Contributor Badge and is displayed on the Featured Contributor Board. Thank you!

1 Like

Here again are the 25 Wordle 5-cliques, this time with permutations selected by highest Shannon H (entropy) scores computed against the current 3,209 answer word list. The presented scores are poor in comparison to standard Wordle starting words and subsequent guesses.

guess word sequence	shannonH scores
{GLENT,PRICK,VOZHD,JUMBY,WAQFS}	{4.82,7.93,8.85,8.41,6.69}
{GLENT,BRICK,VOZHD,WAQFS,JUMPY}	{4.82,7.8,8.83,8.44,6.77}
{GLENT,BRUCK,VOZHD,WAQFS,JIMPY}	{4.82,7.61,8.77,8.49,6.73}
{TRECK,PLING,VOZHD,JUMBY,WAQFS}	{4.73,7.88,8.83,8.45,6.7}
{TRECK,BLING,VOZHD,JUMPY,WAQFS}	{4.73,7.74,8.82,8.45,6.78}
{CLIPT,KRENG,VOZHD,JUMBY,WAQFS}	{4.71,7.89,8.81,8.37,6.75}
{DRECK,GLITZ,PHYNX,WAQFS,JUMBO}	{4.58,7.54,8.78,8.5,7.1}
{VELDT,BRUCK,PHYNX,WAQFS,GIZMO}	{4.51,7.51,8.79,8.58,6.89}
{MOVED,BRUCK,GLITZ,WAQFS,PHYNX}	{4.4,7.44,8.83,8.42,6.4}
{GOVED,BRUCK,MILTZ,WAQFS,PHYNX}	{4.39,7.37,8.8,8.4,6.39}
{GIVED,CROMB,WAQFS,PHYNX,KLUTZ}	{4.33,7.53,8.82,8.54,6.37}
{GRYPT,CIMEX,WAQFS,VOZHD,BLUNK}	{4.3,7.49,8.82,8.69,6.31}
{GRYPT,CLUNK,VOZHD,WAQFS,BEMIX}	{4.3,7.42,8.77,8.64,6.57}
{CROMB,GLITZ,JUKED,WAQFS,PHYNX}	{4.3,7.39,8.81,8.53,6.7}
{CROMB,JIVED,KLUTZ,WAQFS,PHYNX}	{4.3,7.23,8.75,8.65,6.81}
{KEMPT,BRUNG,WAQFS,VOZHD,XYLIC}	{4.21,7.44,8.79,8.66,6.94}
{KEMPT,BRUNG,WAQFS,VOZHD,CYLIX}	{4.21,7.44,8.79,8.66,6.77}
{BROCK,MILTZ,JUDGE,WAQFS,PHYNX}	{4.19,7.34,8.79,8.53,6.59}
{CRUMB,JOKED,GLITZ,WAQFS,PHYNX}	{4.08,7.19,8.81,8.55,6.81}
{GYVED,FRITZ,JACKS,WHUMP,BLONX}	{3.96,6.98,8.7,8.67,6.4}
{GYVED,FRITZ,CHAWK,JUMPS,BLONX}	{3.96,6.98,8.6,8.61,6.45}
{GYVED,FRITZ,BLONX,JUMPS,WHACK}	{3.96,6.98,8.59,8.57,6.61}
{WALTZ,FJORD,GUCKS,VIBEX,NYMPH}	{3.91,7.,8.71,8.61,6.35}
{WALTZ,FJORD,GYMPS,VIBEX,CHUNK}	{3.91,7.,8.67,8.62,6.07}
{WEMBS,GLITZ,QUACK,PHYNX,FJORD}	{3.88,7.09,8.66,8.76,6.98}