(* Content-type: application/vnd.wolfram.mathematica *)

(*** Wolfram Notebook File ***)
(* http://www.wolfram.com/nb *)

(* CreatedBy='Wolfram 15.0' *)

(*CacheID: 234*)
(* Internal cache information:
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[       154,          7]
NotebookDataLength[     48446,       1286]
NotebookOptionsPosition[     38871,       1108]
NotebookOutlinePosition[     41102,       1160]
CellTagsIndexPosition[     41024,       1155]
WindowTitle->BIP39MnemonicQ
WindowFrame->Normal*)

(* Beginning of Notebook Content *)
Notebook[{
Cell[BoxData[GridBox[{
   {GridBox[{
      {
       ItemBox[Cell[BoxData[
         RowBox[{
          TemplateBox[{12},
           "Spacer1"], Cell[
          "WOLFRAM INSTITUTE/ PUZZLES SYMBOL", "PacletNameCell",
           TextAlignment->Center,ExpressionUUID->
           "dec0b214-4e74-45c4-8b0f-01972557315d"], 
          TemplateBox[{8},
           "Spacer1"]}]],
         TextAlignment->Center,ExpressionUUID->
         "19f92a05-b74e-4dc1-8d00-e4bac5c6dd4d"],
        Background->LightDarkSwitched[
          RGBColor[0.490196, 0.576471, 0.690196]],
        ItemSize->Full], ""}
     },
     GridBoxAlignment->{"Rows" -> {{Center}}},
     GridBoxItemSize->{"Columns" -> {Full, 
         Scaled[0.02]}, "Rows" -> {{2.5}}}], Cell[TextData[{
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "See Also",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "78f56e4b-3de3-4b06-bce7-4c08868160e3"]
         }],ExpressionUUID->"963a51b7-91c9-4a4a-8ae4-4c8cfa641d0b"],
         StripOnInput->False],{
        StyleBox["\"BIP39Entropy\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/BIP39Entropy"], 
         StyleBox[
          "\"BIP39Mnemonic\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/BIP39Mnemonic"], 
         StyleBox[
          "\"BIP39FinalWords\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/BIP39FinalWords"], 
         StyleBox["\"BIP39Seed\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/BIP39Seed"], 
         StyleBox[
          "\"$BIP39EnglishWords\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/$BIP39EnglishWords"]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"SeeAlso"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "78f2a1fa-8d7a-4430-ab18-8f980f563122"],
     "\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\
\[ThickSpace]",
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "Related Guides",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "a1b7abb2-36d2-41f1-a3ea-905d36e6d453"]
         }],ExpressionUUID->"54b09cee-cc8a-45d4-b3c5-21c4dc6d6fda"],
         StripOnInput->False],{
        "\"Seeds\"" :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/guide/Seeds"]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"MoreAbout"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "a7f3315f-9621-4cd3-b42d-22e7c4cb8015"],
     "\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\
\[ThickSpace]",
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "URL",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "5838afe3-8f00-4e1f-9918-a74d86fc7ec5"]
         }],ExpressionUUID->"4e3c0efd-29fe-4984-88a6-85973d1b1487"],
         StripOnInput->False],{
        "\"WolframInstitute/Puzzles/ref/BIP39MnemonicQ\"" :> None, 
         "\"Copy Wolfram Documentation Center URL\"" :> 
         CopyToClipboard["WolframInstitute/Puzzles/ref/BIP39MnemonicQ"], 
         Delimiter, "\"Copy web URL\"" :> 
         Module[{DocumentationSearch`Private`nb$}, 
           DocumentationSearch`Private`nb$ = 
            NotebookPut[
             Notebook[{
               Cell[BoxData[
                 MakeBoxes[
                  Hyperlink[
                   "http://reference.wolfram.com/language/WolframInstitute/\
Puzzles/ref/BIP39MnemonicQ.html"], StandardForm]], "Input", TextClipboardType -> 
                 "PlainText"]}, Visible -> False]]; 
           SelectionMove[DocumentationSearch`Private`nb$, All, Notebook]; 
           FrontEndTokenExecute[DocumentationSearch`Private`nb$, "Copy"]; 
           NotebookClose[DocumentationSearch`Private`nb$]; Null], 
         "\"Go to web URL\"" :> 
         FrontEndExecute[{
           NotebookLocate[{
             URL[If[TrueQ[False], 
                 "http://reference.wolfram.com/system-modeler/", 
                 "http://reference.wolfram.com/language/"] <> 
               "WolframInstitute/Puzzles/ref/BIP39MnemonicQ" <> ".html"], 
              None}]}]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"URLMenu"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "1ec2a47e-9ea4-447a-9f99-a57c87efbb90"]
    }], "AnchorBar",
     CacheGraphics->False,ExpressionUUID->
     "080e3fd6-7b7c-4325-a6b8-caaf73142192"]}
  }]], "AnchorBarGrid",
 CellID->1,ExpressionUUID->"96ea1cf8-f8b0-4714-b3d7-7100f9a73d4d"],

Cell["WolframInstitute`Puzzles`", "ContextNameCell",ExpressionUUID->"3cbb6a7c-7f16-41cd-aa33-edb7ea531859"],

Cell[CellGroupData[{

Cell[BoxData[GridBox[{
   {Cell[TextData[{
     Cell[
     "BIP39MnemonicQ", "ObjectName",ExpressionUUID->
      "075d66cd-85ce-47a9-a21a-70f6dabd693f"],
     Cell[BoxData[
      TemplateBox[{8},
       "Spacer1"]],ExpressionUUID->"8d0d5c89-2af9-4e20-9fd8-6f1f6235b948"],
     Cell[BoxData[
     ""], "ObjectNameTranslation",ExpressionUUID->
      "38249750-1fe7-4003-962a-21646a663d7c"]
    }],ExpressionUUID->"8f62eb5b-d78f-4eae-98e9-3a5c6f848559"], 
    "\[SpanFromLeft]"}
  }]], "ObjectNameGrid",ExpressionUUID->"a50efdba-72b6-4d61-a4c7-\
68001d691a2c"],

Cell[BoxData[GridBox[{
   {"", Cell[TextData[{
     Cell[BoxData[
      RowBox[{
       TemplateBox[{
         Cell[
          TextData["BIP39MnemonicQ"]], 
         "paclet:WolframInstitute/Puzzles/ref/BIP39MnemonicQ", 
         "WolframInstitute/Puzzles Package Symbol"},
        "PackageLink",
        BaseStyle->"InlineFormula"], "[", 
       StyleBox["mnemonic", "TI"], "]"}]], "InlineFormula",
      FontFamily->"Source Sans Pro",
      FontSize->0.9 Inherited,ExpressionUUID->
      "c2a3c55f-112a-4a92-aa11-7c5da6e4d496"],
     "\[LineSeparator]",
     "gives ",
     Cell[BoxData[
      TemplateBox[{
        Cell[
         TextData["True"]], "paclet:ref/True"},
       "RefLink",
       BaseStyle->"InlineFormula"]], "InlineFormula",
      FontFamily->"Source Sans Pro",ExpressionUUID->
      "44b3be0e-5593-4b8e-8d2a-3a329ff2c596"],
     " if ",
     StyleBox["mnemonic", "TI"],
     " is a well-formed BIP39 English mnemonic."
    }],ExpressionUUID->"39b705f2-d506-468b-b1c6-448d7def76a5"]},
   {"", Cell[TextData[{
     Cell[BoxData[
      RowBox[{
       TemplateBox[{
         Cell[
          TextData["BIP39MnemonicQ"]], 
         "paclet:WolframInstitute/Puzzles/ref/BIP39MnemonicQ", 
         "WolframInstitute/Puzzles Package Symbol"},
        "PackageLink",
        BaseStyle->"InlineFormula"], "[", 
       RowBox[{"{", 
        RowBox[{
         RowBox[{
          SubscriptBox[
           StyleBox["word", "TI"], 
           StyleBox["_", "TI"]], "1", "$"}], ",", " ", 
         RowBox[{
          SubscriptBox[
           StyleBox["word", "TI"], 
           StyleBox["_", "TI"]], "2", "$"}], ",", " ", "\[Ellipsis]"}], "}"}],
        "]"}]], "InlineFormula",
      FontFamily->"Source Sans Pro",
      FontSize->0.9 Inherited,ExpressionUUID->
      "f9d08be0-1918-4702-9116-54a80379142c"],
     "\[LineSeparator]",
     "takes the mnemonic as a list of words."
    }],ExpressionUUID->"de53e216-48be-4745-aa21-1871c52d70f6"]}
  }]], "Usage",ExpressionUUID->"6ac6df04-25dd-4eaa-848c-fa39afcb2e97"]
}, Open  ]],

Cell[CellGroupData[{

Cell[TextData[Cell[BoxData[Cell[TextData[{
  Cell[BoxData[
   DynamicBox[ToBoxes[
     If[CurrentValue[
        EvaluationCell[], "CellGroupOpen"] =!= Closed, 
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], 
      Rotate[
       Style[
        Graphics[{
          Thickness[0.18], 
          RGBColor[0.8509803921568627, 0.396078431372549, 0], 
          Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
         PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
        0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]],
    ImageSizeCache->{
     13.600000000000001`, {-0.1685058593749993, 13.768505859375}}]],
   ExpressionUUID->"36af85bb-c371-47af-834a-492398b20c27"],
  Cell[BoxData[
   TemplateBox[{1},
    "Spacer1"]],ExpressionUUID->"7d899645-f348-4240-acba-3b2502f13d14"],
  "Details and Options"
 }], "NotesFrameText",ExpressionUUID->
  "5dfb1cb8-9f42-401e-9d77-137ac0610126"]],ExpressionUUID->"dd73bc5c-045a-\
446d-9705-f8e4c2d5f674"]], "NotesSection",
 ShowGroupOpener->"Thumbnail",
 WholeCellGroupOpener->True,
 CellGroupingRules->{"SectionGrouping", 50},
 CacheGraphics->False,
 CellID->1346274520,ExpressionUUID->"550ca60c-5cbf-4b7d-91ad-f5f0d8b3bba4"],

Cell[TextData[{
 "Well formed means all three of: every word is in ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["$BIP39EnglishWords"]], 
    "paclet:WolframInstitute/Puzzles/ref/$BIP39EnglishWords", 
    "WolframInstitute/Puzzles Package Symbol"},
   "PackageLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "6417ae25-b109-495d-8d40-4f1f09f0e4b9"],
 ", the word count is 12, 15, 18, 21 or 24, and the trailing checksum bits \
match the leading bits of ",
 Cell[BoxData[
  StyleBox["SHA256",
   FontSlant->"Plain"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "2379c197-5cc7-4831-bc71-6f2246417b8e"],
 " of the entropy."
}], "Notes",ExpressionUUID->"dbfe25c9-fb86-4454-ad79-b173d8628473"],

Cell[TextData[{
 "Anything else, including an argument that is not a string or a list of \
strings, gives ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["False"]], "paclet:ref/False"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",ExpressionUUID->
  "1117f095-ccf9-4473-9701-7d9434d1bdff"],
 "; the predicate never returns a ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["Failure"]], "paclet:ref/Failure"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",ExpressionUUID->
  "d7f51e4a-23c1-4285-bbf4-ad5e39d60996"],
 " and is never left unevaluated."
}], "Notes",ExpressionUUID->"0ddece54-b53f-4d77-bb1f-6ebf58a0ac02"],

Cell[TextData[{
 "Roughly one mnemonic in ",
 Cell[BoxData[
  SuperscriptBox["2", 
   RowBox[{
    StyleBox["MS",
     FontSlant->"Plain"], "/", "3"}]]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "f4b41535-373d-4abb-b575-9703be6cd552"],
 " passes by chance, so one in 16 for 12 words and one in 256 for 24; the \
checksum catches a single wrong word most of the time but is not an \
error-correcting code."
}], "Notes",ExpressionUUID->"fa256e8c-8aec-46c5-966f-a4f271d49d7c"],

Cell[TextData[{
 "One call costs one ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["Hash"]], "paclet:ref/Hash"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",ExpressionUUID->
  "5cd75d47-755a-43f9-8826-fae72560e787"],
 ", about 0.3 ms, so a sweep filters about three thousand candidates a second \
through ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["Select"]], "paclet:ref/Select"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "81c54964-a576-4535-928b-e4c762b46ebd"],
 ". When only the last word varies, ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["BIP39FinalWords"]], 
    "paclet:WolframInstitute/Puzzles/ref/BIP39FinalWords", 
    "WolframInstitute/Puzzles Package Symbol"},
   "PackageLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "133cc2c2-3254-4963-acc0-0ecfb8f5c88f"],
 " is the faster route."
}], "Notes",ExpressionUUID->"e5ff04e6-2d6e-4d5e-b0ce-8c44ebb05919"],

Cell[TextData[{
 "A well-formed mnemonic is not a used one. ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["BIP39Seed"]], "paclet:WolframInstitute/Puzzles/ref/BIP39Seed", 
    "WolframInstitute/Puzzles Package Symbol"},
   "PackageLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "6a11f571-d15e-48b2-bbb1-b733917620fb"],
 " derives a seed from any sentence at all, whether or not this gives ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["True"]], "paclet:ref/True"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",ExpressionUUID->
  "c5468368-7614-4fc2-8f58-3d6ce4e33dae"],
 "."
}], "Notes",ExpressionUUID->"e65d0725-bac7-4a00-b48d-f9eb7b3435ed"]
}, Closed]],

Cell["", "PageDelimiter",ExpressionUUID->"40918f8e-8621-429c-80c5-31d05b6b9283"],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[
     MatchQ[
      CurrentValue[
       EvaluationNotebook[], {
       TaggingRules, "Openers", "PrimaryExamplesSection"}, Open], 
      Alternatives[True, Open]], 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]],
   ImageSizeCache->{
    13.600000000000001`, {4.251494140625001, 9.348505859375}}]],
  ExpressionUUID->"96fa281b-02a7-4d3c-8ef0-cf0cae445fcd"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"81deb5ba-e2be-4d2d-a7f1-82599c9b46a9"],
 "Examples",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(12)", "ExampleCount",ExpressionUUID->
  "1c4a0fa6-c442-418a-bf7c-a1ed51c295de"]
}], "PrimaryExamplesSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->948152848,ExpressionUUID->"505af3c9-5ef6-4e3e-a9ac-f5d099064b2d"],

Cell[BoxData[
 RowBox[{"Needs", "[", "\"\<WolframInstitute`Puzzles`\>\"", "]"}]], "Input", \
"ExampleInitialization",
 CellLabel->"In[1]:=",
 CellID->1969679695,ExpressionUUID->"5cc6c4cb-1ccf-4ed9-843c-80d8d8cd64e5"],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "1d39f5b9-31d7-4173-acf9-96313f18f0ea"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"e612686b-becb-44d0-ae17-7b90a6bef33f"],
 "Basic Examples",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(3)", "ExampleCount",ExpressionUUID->
  "be45bbaa-1ecd-4173-be0f-fc46515e91aa"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1276255596,ExpressionUUID->"4682d762-9824-44ec-8341-b5fd9d37b422"],

Cell["The first official BIP39 test vector is well formed:", "ExampleText",
 CellTags->
  "TextAnnotation",ExpressionUUID->"58aa7029-d43b-46a7-aa44-e0d2aba5517c"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39MnemonicQ", 
  "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon about\>\"", "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"6b97cd01-8ea4-4577-ab29-5a1ed90d0dcc"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"f6e007a9-789a-4ed2-aa3f-3606c9354a60"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "8b7ded29-61b2-4661-ab42-26293fba1c94"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"ce8a3ea0-ad85-4bcb-\
ba49-07e685d54f33"],

Cell["Changing the last word breaks the checksum:", "ExampleText",ExpressionUUID->"5f2a0d77-e97f-4148-804c-ba703ec5e1af"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39MnemonicQ", 
  "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon abandon\>\"", "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"facd21fb-abca-4ca4-8849-270467ed3fe7"],

Cell[BoxData["False"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"b6ad064e-cbbc-4ae6-9401-7b73c07fb1b9"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "308981df-0287-4bc1-8885-1279c9c3d54c"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"8091886c-d3f7-4585-\
b118-b5e0715aabcd"],

Cell["\<\
A word outside the wordlist is not well formed, whatever the checksum would \
say:\
\>", "ExampleText",ExpressionUUID->"e26cc018-9f40-43ee-b321-bf711bfd24b1"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39MnemonicQ", 
  "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon zzzz\>\"", "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"0f25be03-6d73-447b-84f2-78af5cb3701c"],

Cell[BoxData["False"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"11e5d529-d3a5-46ea-bc81-2d60c0a81cea"]
}, Open  ]]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "b576d40f-7932-48d0-aaaa-79d6c4d74ea7"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"b8c40808-cf1e-4e30-b69a-0dd7f422d9a9"],
 "Scope",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(3)", "ExampleCount",ExpressionUUID->
  "16ba32eb-f01a-4d50-8c5e-0dc120085031"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1293636265,ExpressionUUID->"f68e42cf-5271-4081-a668-81d462daa568"],

Cell["A mnemonic given as a list of words is the same mnemonic:", \
"ExampleText",ExpressionUUID->"6a0cf24a-2cf9-4e78-839e-731225d86b98"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39MnemonicQ", "[", 
  RowBox[{"{", 
   RowBox[{"\"\<legal\>\"", ",", " ", "\"\<winner\>\"", ",", 
    " ", "\"\<thank\>\"", ",", " ", "\"\<year\>\"", ",", " ", "\"\<wave\>\"", 
    ",", " ", "\"\<sausage\>\"", ",", " ", "\"\<worth\>\"", ",", 
    " ", "\"\<useful\>\"", ",", " ", "\"\<legal\>\"", ",", 
    " ", "\"\<winner\>\"", ",", " ", "\"\<thank\>\"", ",", 
    " ", "\"\<yellow\>\""}], "}"}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"13148931-a767-441b-a563-ef5d2ddfbb6d"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"3ab64c0b-8301-4fa9-99e6-ba3f77c92d40"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "e704f663-0b9d-4aa6-8f48-0729697439df"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"6a0e389a-9521-4308-\
8b1b-c15807353d3b"],

Cell["\<\
Eleven words is not an admitted length, so the phrase is not well formed even \
though every word is in the list:\
\>", "ExampleText",ExpressionUUID->"f7f5e6a3-326d-43bd-92ae-4c36f9b8b0d4"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39MnemonicQ", 
  "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon\>\"", "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"855d3e28-e597-4c3b-ac2e-38fe956c8299"],

Cell[BoxData["False"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"b3da65bc-79aa-483d-b59e-d8900907f641"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "54a7f6b4-2ad7-4acb-afcc-3cfc82edeaf1"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"34d0d736-f0cb-458f-\
9653-501dec7918c6"],

Cell[TextData[{
 "An argument that is not a mnemonic at all is simply ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["False"]], "paclet:ref/False"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",ExpressionUUID->
  "9a1f8745-3c46-44df-b40d-f549b8bb7d4d"],
 ", never an error:"
}], "ExampleText",ExpressionUUID->"32118bcc-53a1-4cd9-96f9-a72e7933e282"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39MnemonicQ", "[", "42", "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"fb8e6462-b7e8-4d40-82cd-20c52475760e"],

Cell[BoxData["False"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"a59675c9-2d67-46e4-b2c8-bcdc0841d8d6"]
}, Open  ]]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "b0ffc8e9-8aad-479e-886c-222a86faffb4"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"d8dbd075-ddae-4650-bcc1-4bf6e8dfe60b"],
 "Applications",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(2)", "ExampleCount",ExpressionUUID->
  "2db10c84-40f0-452a-87ec-0aee8fccfbd3"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->258228157,ExpressionUUID->"d7b4ebc8-b52d-4fb0-ae89-fa8587f81385"],

Cell[TextData[{
 "Filtering a list of candidate phrases is a ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["Select"]], "paclet:ref/Select"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "cb3b9f63-0cb4-484a-b955-1194cff2db07"],
 ":"
}], "ExampleText",ExpressionUUID->"fc3f8eaa-3b69-49d7-a26a-cf6a0d7a8bdf"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Select", "[", 
  RowBox[{
   RowBox[{"{", 
    RowBox[{"\"\<abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon abandon about\>\"", ",", 
     " ", "\"\<abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon abandon abandon\>\"", ",", 
     " ", "\"\<legal winner thank year wave sausage worth useful legal winner \
thank yellow\>\""}], "}"}], ",", " ", "BIP39MnemonicQ"}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"fade339e-0a12-4220-b185-ffb8111090ed"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{"\<\"abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon abandon about\"\>", 
   ",", "\<\"legal winner thank year wave sausage worth useful legal winner \
thank yellow\"\>"}], "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"7dfebbcc-3b0d-4fe1-9cbf-413646b04c9a"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "d383edc0-b221-4ecf-bff2-d8bf7faadeb5"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"b8f27104-82cd-4985-\
8ee2-b13f27008100"],

Cell["\<\
Exactly one word in sixteen completes an 11-word prefix, which is the \
checksum's discrimination for 12 words:\
\>", "ExampleText",ExpressionUUID->"99690332-a5ce-4959-92f2-410fa99576ea"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Count", "[", 
  RowBox[{"$BIP39EnglishWords", ",", " ", 
   RowBox[{"w_", " ", "/;", " ", 
    RowBox[{"BIP39MnemonicQ", "[", 
     RowBox[{"\"\<abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon abandon \>\"", " ", "<>", " ", "w"}], "]"}]}]}], 
  "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"026f97de-d22a-41b2-be1e-f71e5c4572a2"],

Cell[BoxData["128"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"50ec4eba-ea9f-4110-ada2-a0cf5389bfef"]
}, Open  ]]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "266be68d-f5eb-4a8c-b617-0aec0762247b"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"c284b6cf-1255-4c57-a3f3-54336abed110"],
 "Properties & Relations",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(2)", "ExampleCount",ExpressionUUID->
  "d9100595-0578-4765-a56f-53f3e2f8d9ab"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->2123667759,ExpressionUUID->"efc9eb64-36f7-4814-8414-3c1c678ebe50"],

Cell[TextData[{
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["BIP39FinalWords"]], 
    "paclet:WolframInstitute/Puzzles/ref/BIP39FinalWords", 
    "WolframInstitute/Puzzles Package Symbol"},
   "PackageLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "1a984ffc-32ed-40c0-90dc-153f70086bed"],
 " gives the same set as filtering the whole wordlist, sixteen times faster:"
}], "ExampleText",ExpressionUUID->"39732e99-583a-4265-a458-d9926568800e"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{
  RowBox[{
  "BIP39FinalWords", 
   "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon\>\"", "]"}], " ", "===", " ", 
  RowBox[{"Select", "[", 
   RowBox[{"$BIP39EnglishWords", ",", " ", 
    RowBox[{
     RowBox[{"BIP39MnemonicQ", "[", 
      RowBox[{"\"\<abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon abandon \>\"", " ", "<>", " ", "#"}], "]"}], " ", 
     "&"}]}], "]"}]}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"b580f5d5-525a-40bf-a830-a8f729a580d7"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"b53e9639-e129-4f7c-b9ff-b9670fde5eb6"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "1de1bf8a-63a4-4ece-b0f4-fd1759a5a1ce"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"c7752ca8-88c9-4dcd-\
820f-544068aa0ee4"],

Cell[TextData[{
 "Every mnemonic ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["BIP39Mnemonic"]], 
    "paclet:WolframInstitute/Puzzles/ref/BIP39Mnemonic", 
    "WolframInstitute/Puzzles Package Symbol"},
   "PackageLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "8dcc4fb8-f18d-4fb4-8e81-3bff9d1ae432"],
 " produces is well formed:"
}], "ExampleText",ExpressionUUID->"79c6660f-e5a1-482e-9df2-0e2e5655addd"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"AllTrue", "[", 
  RowBox[{
   RowBox[{"Table", "[", 
    RowBox[{
     RowBox[{"BIP39Mnemonic", "[", 
      RowBox[{"ByteArray", "[", 
       RowBox[{"RandomInteger", "[", 
        RowBox[{
         RowBox[{"{", 
          RowBox[{"0", ",", " ", "255"}], "}"}], ",", " ", "32"}], "]"}], 
       "]"}], "]"}], ",", " ", "20"}], "]"}], ",", " ", "BIP39MnemonicQ"}], 
  "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"8265a005-243c-42c5-a7f2-a2638328c4df"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"dc9d00d8-e6a3-42c9-b964-eba5efea5326"]
}, Open  ]]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "44834736-ab1e-42e7-893e-ff1435997a32"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"2dcfab7c-9d2b-4c6e-9a3b-ee2e927301b5"],
 "Possible Issues",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(2)", "ExampleCount",ExpressionUUID->
  "857fcac5-aae3-4048-9583-15abb4117d4e"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1305812373,ExpressionUUID->"b1d1ae1e-98a9-46d7-9a0d-e5b30f0ccd09"],

Cell["\<\
A phrase that fails this test can still have a seed, because BIP39 defines \
the seed function for any sentence:\
\>", "ExampleText",ExpressionUUID->"68b15531-ea73-42ce-84cf-5039abdf5cce"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{
   RowBox[{"BIP39MnemonicQ", "[", "\"\<this is not a mnemonic\>\"", "]"}], ",",
    " ", 
   RowBox[{"Length", "[", 
    RowBox[{"BIP39Seed", "[", "\"\<this is not a mnemonic\>\"", "]"}], 
    "]"}]}], "}"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"89abb576-7b9f-4a21-bc25-9d63da28ea32"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{"False", ",", "64"}], "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"bb79314a-a8e4-4f98-b6f6-f0d27fc8821e"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "1f2df9ed-6875-43c1-a071-67da26967822"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"f88f8634-6b05-43f1-\
93a5-eb2823850fa3"],

Cell["\<\
The checksum is four bits for a 12-word phrase, so a wrong phrase passes \
about one time in sixteen:\
\>", "ExampleText",ExpressionUUID->"565b0530-df61-471a-b4ce-cf28be44219a"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"N", "[", 
  RowBox[{
   RowBox[{"Count", "[", 
    RowBox[{
     RowBox[{"RandomChoice", "[", 
      RowBox[{"$BIP39EnglishWords", ",", " ", 
       RowBox[{"{", 
        RowBox[{"200", ",", " ", "12"}], "}"}]}], "]"}], ",", " ", 
     RowBox[{"w_", " ", "/;", " ", 
      RowBox[{"BIP39MnemonicQ", "[", "w", "]"}]}]}], "]"}], "/", "200"}], 
  "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"91145dfb-62e7-4527-a9e1-429a996d0b4f"],

Cell[BoxData["0.095`"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"93f2eb13-8101-4cc8-9873-366e2f467647"]
}, Open  ]]
}, Open  ]]
}, Closed]]
}, Open  ]],

Cell[BoxData[GridBox[{
   {
    DynamicBox[FEPrivate`ImportImage[
      FrontEnd`FileName[{"Documentation", "FooterIcons"}, 
       "RelatedFunction.png"]]], GridBox[{
      {
       StyleBox[
        RowBox[{"See", " ", "Also"}], "SeeAlsoSection"]},
      {Cell[TextData[{
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BIP39Entropy"]], 
           "paclet:WolframInstitute/Puzzles/ref/BIP39Entropy", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "26d37044-fb0b-4772-a2d3-e8c8b817958f"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BIP39Mnemonic"]], 
           "paclet:WolframInstitute/Puzzles/ref/BIP39Mnemonic", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "49f28059-bfe1-4d46-928d-a48ff2f96505"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BIP39FinalWords"]], 
           "paclet:WolframInstitute/Puzzles/ref/BIP39FinalWords", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "946c0366-e299-4bbf-85eb-1ce86486e6ac"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BIP39Seed"]], 
           "paclet:WolframInstitute/Puzzles/ref/BIP39Seed", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "93cdba8c-e636-42b1-913f-20b9bf416c4d"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["$BIP39EnglishWords"]], 
           "paclet:WolframInstitute/Puzzles/ref/$BIP39EnglishWords", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "84b3eb57-3ee3-47c4-b5a7-bc98d9c12d09"]
       }], "SeeAlso",ExpressionUUID->"244e9c53-a740-4d8f-8823-9cf18a289f2c"]}
     }]}
  }]], "SeeAlsoSection",ExpressionUUID->"aded9a7f-976a-42fe-9a2f-\
ac3b6740992d"],

Cell[BoxData[GridBox[{
   {
    DynamicBox[FEPrivate`ImportImage[
      FrontEnd`FileName[{"Documentation", "FooterIcons"}, 
       "RelatedGuide.png"]]], GridBox[{
      {
       StyleBox[
        RowBox[{"Related", " ", "Guides"}], "MoreAboutSection"]},
      {
       RowBox[{"\[FilledVerySmallSquare]", Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["Seeds"]], "paclet:WolframInstitute/Puzzles/guide/Seeds"},
          "RefLinkPlain",
          BaseStyle->{"MoreAbout"}]], "MoreAbout",ExpressionUUID->
         "c6dadad3-6bf2-4b9f-8769-8464c74b71ee"]}]}
     }]}
  }]], "MoreAboutSection",ExpressionUUID->"a55b3a4c-2bfb-4c19-94ea-\
9af8abce41d5"],

Cell[" ", "FooterCell",ExpressionUUID->"8f409feb-d7c1-489f-854f-2b98a1a3287a"]
},
Saveable->False,
ScreenStyleEnvironment->"Working",
WindowSize->{900, 830},
WindowMargins->{{0, Automatic}, {Automatic, 0}},
WindowTitle->"BIP39MnemonicQ",
TaggingRules->{
 "ModificationHighlight" -> False, "ColorType" -> "", "LinkTrails" -> "", 
  "ExampleCounter" -> 1, 
  "Openers" -> {
   "PrimaryExamplesSection" -> Open, "ExampleSection" -> {"0" -> Open}, 
    "AllOptsTable" -> Closed}, "NewStyles" -> True, 
  "CitationPopupData" -> $Failed, "ShowCitation" -> False, "HasOptions" -> 
  True, "RootCaptions" -> "", "HeaderCoreAreaLink" -> {}, 
  "Metadata" -> {
   "built" -> "{2026, 8, 27, 0, 11, 6.134960}", 
    "history" -> {"XX", "", "", ""}, "context" -> "WolframInstitute`Puzzles`",
     "keywords" -> {}, "specialkeywords" -> {}, 
    "tutorialcollectionlinks" -> {}, "index" -> True, "label" -> 
    "Wolfram Institute/ Puzzles Symbol", "language" -> "en", "paclet" -> 
    "WolframInstitute/Puzzles", "status" -> "None", "summary" -> 
    "PackageLink[BIP39MnemonicQ,paclet : \
WolframInstitute/Puzzles/ref/BIP39MnemonicQ, WolframInstitute/Puzzles Package \
Symbol][mnemonic] gives True if mnemonic is a well-formed BIP39 English \
mnemonic. PackageLink[BIP39MnemonicQ,paclet : \
WolframInstitute/Puzzles/ref/BIP39MnemonicQ, WolframInstitute/Puzzles Package \
Symbol][{word_ 1 $, word_ 2 $, ...}] takes the mnemonic as a list of words.", 
    "synonyms" -> {}, "tabletags" -> {}, "title" -> "BIP39MnemonicQ", 
    "titlemodifier" -> "", "metadescription" -> "", "windowtitle" -> 
    "BIP39MnemonicQ", "type" -> "Symbol", "uri" -> 
    "WolframInstitute/Puzzles/ref/BIP39MnemonicQ", "WorkflowDockedCell" -> 
    ""}, "SearchTextTranslated" -> ""},
CellContext->CellGroup,
FrontEndVersion->"15.0 for Mac OS X ARM (64-bit) (May 19, 2026)",
StyleDefinitions->FrontEnd`FileName[{"Wolfram"}, "Reference.nb"],
ExpressionUUID->"136aff87-1e5f-4fbb-bf76-b33afb905b02"
]
(* End of Notebook Content *)

(* Internal cache information *)
(*CellTagsOutline
CellTagsIndex->{
 "TextAnnotation"->{
  Cell[17632, 488, 162, 2, 70, "ExampleText",ExpressionUUID->"58aa7029-d43b-46a7-aa44-e0d2aba5517c",
   CellTags->"TextAnnotation"]}
 }
*)
(*CellTagsIndex
CellTagsIndex->{
 {"TextAnnotation", 40867, 1149}
 }
*)
(*NotebookFileOutline
Notebook[{
Cell[582, 21, 5782, 141, 70, "AnchorBarGrid",ExpressionUUID->"96ea1cf8-f8b0-4714-b3d7-7100f9a73d4d",
 CellID->1],
Cell[6367, 164, 107, 0, 70, "ContextNameCell",ExpressionUUID->"3cbb6a7c-7f16-41cd-aa33-edb7ea531859"],
Cell[CellGroupData[{
Cell[6499, 168, 557, 14, 70, "ObjectNameGrid",ExpressionUUID->"a50efdba-72b6-4d61-a4c7-68001d691a2c"],
Cell[7059, 184, 2019, 56, 70, "Usage",ExpressionUUID->"6ac6df04-25dd-4eaa-848c-fa39afcb2e97"]
}, Open  ]],
Cell[CellGroupData[{
Cell[9115, 245, 1444, 34, 70, "NotesSection",ExpressionUUID->"550ca60c-5cbf-4b7d-91ad-f5f0d8b3bba4",
 CellGroupingRules->{"SectionGrouping", 50},
 CellID->1346274520],
Cell[10562, 281, 838, 22, 70, "Notes",ExpressionUUID->"dbfe25c9-fb86-4454-ad79-b173d8628473"],
Cell[11403, 305, 738, 21, 70, "Notes",ExpressionUUID->"0ddece54-b53f-4d77-bb1f-6ebf58a0ac02"],
Cell[12144, 328, 527, 13, 70, "Notes",ExpressionUUID->"fa256e8c-8aec-46c5-966f-a4f271d49d7c"],
Cell[12674, 343, 1147, 34, 70, "Notes",ExpressionUUID->"e5ff04e6-2d6e-4d5e-b0ce-8c44ebb05919"],
Cell[13824, 379, 804, 22, 70, "Notes",ExpressionUUID->"e65d0725-bac7-4a00-b48d-f9eb7b3435ed"]
}, Closed]],
Cell[14643, 404, 80, 0, 70, "PageDelimiter",ExpressionUUID->"40918f8e-8621-429c-80c5-31d05b6b9283"],
Cell[CellGroupData[{
Cell[14748, 408, 1401, 37, 70, "PrimaryExamplesSection",ExpressionUUID->"505af3c9-5ef6-4e3e-a9ac-f5d099064b2d",
 CellID->948152848],
Cell[16152, 447, 216, 4, 70, "Input",ExpressionUUID->"5cc6c4cb-1ccf-4ed9-843c-80d8d8cd64e5",
 CellID->1969679695],
Cell[CellGroupData[{
Cell[16393, 455, 1236, 31, 70, "ExampleSection",ExpressionUUID->"4682d762-9824-44ec-8341-b5fd9d37b422",
 CellID->1276255596],
Cell[17632, 488, 162, 2, 70, "ExampleText",ExpressionUUID->"58aa7029-d43b-46a7-aa44-e0d2aba5517c",
 CellTags->"TextAnnotation"],
Cell[CellGroupData[{
Cell[17819, 494, 299, 5, 70, "Input",ExpressionUUID->"6b97cd01-8ea4-4577-ab29-5a1ed90d0dcc"],
Cell[18121, 501, 110, 1, 70, "Output",ExpressionUUID->"f6e007a9-789a-4ed2-aa3f-3606c9354a60"]
}, Open  ]],
Cell[CellGroupData[{
Cell[18268, 507, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"ce8a3ea0-ad85-4bcb-ba49-07e685d54f33"],
Cell[18495, 514, 121, 0, 70, "ExampleText",ExpressionUUID->"5f2a0d77-e97f-4148-804c-ba703ec5e1af"],
Cell[CellGroupData[{
Cell[18641, 518, 301, 5, 70, "Input",ExpressionUUID->"facd21fb-abca-4ca4-8849-270467ed3fe7"],
Cell[18945, 525, 111, 1, 70, "Output",ExpressionUUID->"b6ad064e-cbbc-4ae6-9401-7b73c07fb1b9"]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[19105, 532, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"8091886c-d3f7-4585-b118-b5e0715aabcd"],
Cell[19332, 539, 168, 3, 70, "ExampleText",ExpressionUUID->"e26cc018-9f40-43ee-b321-bf711bfd24b1"],
Cell[CellGroupData[{
Cell[19525, 546, 298, 5, 70, "Input",ExpressionUUID->"0f25be03-6d73-447b-84f2-78af5cb3701c"],
Cell[19826, 553, 111, 1, 70, "Output",ExpressionUUID->"11e5d529-d3a5-46ea-bc81-2d60c0a81cea"]
}, Open  ]]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[19998, 561, 1227, 31, 70, "ExampleSection",ExpressionUUID->"f68e42cf-5271-4081-a668-81d462daa568",
 CellID->1293636265],
Cell[21228, 594, 137, 1, 70, "ExampleText",ExpressionUUID->"6a0cf24a-2cf9-4e78-839e-731225d86b98"],
Cell[CellGroupData[{
Cell[21390, 599, 569, 10, 70, "Input",ExpressionUUID->"13148931-a767-441b-a563-ef5d2ddfbb6d"],
Cell[21962, 611, 110, 1, 70, "Output",ExpressionUUID->"3ab64c0b-8301-4fa9-99e6-ba3f77c92d40"]
}, Open  ]],
Cell[CellGroupData[{
Cell[22109, 617, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"6a0e389a-9521-4308-8b1b-c15807353d3b"],
Cell[22336, 624, 199, 3, 70, "ExampleText",ExpressionUUID->"f7f5e6a3-326d-43bd-92ae-4c36f9b8b0d4"],
Cell[CellGroupData[{
Cell[22560, 631, 293, 5, 70, "Input",ExpressionUUID->"855d3e28-e597-4c3b-ac2e-38fe956c8299"],
Cell[22856, 638, 111, 1, 70, "Output",ExpressionUUID->"b3da65bc-79aa-483d-b59e-d8900907f641"]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[23016, 645, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"34d0d736-f0cb-458f-9653-501dec7918c6"],
Cell[23243, 652, 410, 11, 70, "ExampleText",ExpressionUUID->"32118bcc-53a1-4cd9-96f9-a72e7933e282"],
Cell[CellGroupData[{
Cell[23678, 667, 195, 3, 70, "Input",ExpressionUUID->"fb8e6462-b7e8-4d40-82cd-20c52475760e"],
Cell[23876, 672, 111, 1, 70, "Output",ExpressionUUID->"a59675c9-2d67-46e4-b2c8-bcdc0841d8d6"]
}, Open  ]]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[24048, 680, 1233, 31, 70, "ExampleSection",ExpressionUUID->"d7b4ebc8-b52d-4fb0-ae89-fa8587f81385",
 CellID->258228157],
Cell[25284, 713, 414, 12, 70, "ExampleText",ExpressionUUID->"fc3f8eaa-3b69-49d7-a26a-cf6a0d7a8bdf"],
Cell[CellGroupData[{
Cell[25723, 729, 598, 11, 70, "Input",ExpressionUUID->"fade339e-0a12-4220-b185-ffb8111090ed"],
Cell[26324, 742, 342, 6, 70, "Output",ExpressionUUID->"7dfebbcc-3b0d-4fe1-9cbf-413646b04c9a"]
}, Open  ]],
Cell[CellGroupData[{
Cell[26703, 753, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"b8f27104-82cd-4985-8ee2-b13f27008100"],
Cell[26930, 760, 197, 3, 70, "ExampleText",ExpressionUUID->"99690332-a5ce-4959-92f2-410fa99576ea"],
Cell[CellGroupData[{
Cell[27152, 767, 446, 9, 70, "Input",ExpressionUUID->"026f97de-d22a-41b2-be1e-f71e5c4572a2"],
Cell[27601, 778, 109, 1, 70, "Output",ExpressionUUID->"50ec4eba-ea9f-4110-ada2-a0cf5389bfef"]
}, Open  ]]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[27771, 786, 1244, 31, 70, "ExampleSection",ExpressionUUID->"efc9eb64-36f7-4814-8414-3c1c678ebe50",
 CellID->2123667759],
Cell[29018, 819, 539, 13, 70, "ExampleText",ExpressionUUID->"39732e99-583a-4265-a458-d9926568800e"],
Cell[CellGroupData[{
Cell[29582, 836, 622, 14, 70, "Input",ExpressionUUID->"b580f5d5-525a-40bf-a830-a8f729a580d7"],
Cell[30207, 852, 110, 1, 70, "Output",ExpressionUUID->"b53e9639-e129-4f7c-b9ff-b9670fde5eb6"]
}, Open  ]],
Cell[CellGroupData[{
Cell[30354, 858, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"c7752ca8-88c9-4dcd-820f-544068aa0ee4"],
Cell[30581, 865, 506, 14, 70, "ExampleText",ExpressionUUID->"79c6660f-e5a1-482e-9df2-0e2e5655addd"],
Cell[CellGroupData[{
Cell[31112, 883, 534, 14, 70, "Input",ExpressionUUID->"8265a005-243c-42c5-a7f2-a2638328c4df"],
Cell[31649, 899, 110, 1, 70, "Output",ExpressionUUID->"dc9d00d8-e6a3-42c9-b964-eba5efea5326"]
}, Open  ]]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[31820, 907, 1237, 31, 70, "ExampleSection",ExpressionUUID->"b1d1ae1e-98a9-46d7-9a0d-e5b30f0ccd09",
 CellID->1305812373],
Cell[33060, 940, 198, 3, 70, "ExampleText",ExpressionUUID->"68b15531-ea73-42ce-84cf-5039abdf5cce"],
Cell[CellGroupData[{
Cell[33283, 947, 385, 9, 70, "Input",ExpressionUUID->"89abb576-7b9f-4a21-bc25-9d63da28ea32"],
Cell[33671, 958, 157, 3, 70, "Output",ExpressionUUID->"bb79314a-a8e4-4f98-b6f6-f0d27fc8821e"]
}, Open  ]],
Cell[CellGroupData[{
Cell[33865, 966, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"f88f8634-6b05-43f1-93a5-eb2823850fa3"],
Cell[34092, 973, 187, 3, 70, "ExampleText",ExpressionUUID->"565b0530-df61-471a-b4ce-cf28be44219a"],
Cell[CellGroupData[{
Cell[34304, 980, 511, 13, 70, "Input",ExpressionUUID->"91145dfb-62e7-4527-a9e1-429a996d0b4f"],
Cell[34818, 995, 112, 1, 70, "Output",ExpressionUUID->"93f2eb13-8101-4cc8-9873-366e2f467647"]
}, Open  ]]
}, Open  ]]
}, Closed]]
}, Open  ]],
Cell[34981, 1002, 3124, 82, 70, "SeeAlsoSection",ExpressionUUID->"aded9a7f-976a-42fe-9a2f-ac3b6740992d"],
Cell[38108, 1086, 678, 18, 70, "MoreAboutSection",ExpressionUUID->"a55b3a4c-2bfb-4c19-94ea-9af8abce41d5"],
Cell[38789, 1106, 78, 0, 70, "FooterCell",ExpressionUUID->"8f409feb-d7c1-489f-854f-2b98a1a3287a"]
}
]
*)

(* End of internal cache information *)

