(******************************************************************* This file was generated automatically by the Mathematica front end. It contains Initialization cells from a Notebook file, which typically will have the same name as this file except ending in ".nb" instead of ".m". This file is intended to be loaded into the Mathematica kernel using the package loading commands Get or Needs. Doing so is equivalent to using the Evaluate Initialization Cells menu command in the front end. DO NOT EDIT THIS FILE. This entire file is regenerated automatically each time the parent Notebook file is saved in the Mathematica front end. Any changes you make to this file will be overwritten. ***********************************************************************) Off[General::spell] Off[General::spell1] Clear[cutPref]; cutPref[{x_String,y_String}]:= StringCases[x<>"."<>y,(p___~~s1__~~"."~~p___~~s2__\[Rule] s2)][[1]]; Clear[formPrefSuffPairs]; formPrefSuffPairs[{x_String,y_String}]:= StringCases[x,{p__~~y\[Rule] {p,y},y\[Rule] {x,""}}][[1]]; Clear[selectSuffixes]; selectSuffixes[pref_String,word_List]:={pref, StringCases[#,StartOfString~~pref~~x___~~EndOfString\[Rule]x]&/@word // Flatten} \[Euro]reducedWordListSuff4Add4ToExpressions={{abac,{abad,abda,abdb,abdc,adab, adac,adba,adbc,adbd,adca,adcb,adcd,babd,bada,badb,badc,bcda,bcdb, bcdc,bdab,bdac,bdad,bdba,bdbc,bdca,bdcb,bdcd,daba,dabc,dabd,daca, dacb,dadb,dbab,dbac,dbad,dbca,dbcb,dbcd,dbda,dbdc,dcab,dcac,dcba, dcbc,dcbd}},{abca,{bada,badb,badc,bdab,bdac,bdad,bdba,bdbc,bdca, bdcb,bdcd,cdab,cdac,cdad,cdba,cdbc,cdbd,cdca,cdcb,daba,dabc,dabd, daca,dacb,dbab,dbac,dbad,dbca,dbcb,dbcd,dbda,dbdc,dcab,dcac,dcba, dcbc,dcbd,dcdb}},{abcb,{abcd,abda,abdb,abdc,adab,adac,adba,adbc, adbd,adca,adcb,adcd,daba,dabc,dabd,daca,dacb,dacd,dadb,dadc,dbab, dbac,dbad,dbca,dbcb,dcab,dcac,dcad,dcba,dcbc,dcda}},{abcd,{abac, abad,abca,abcb,abda,abdb,acab,acba,acbc,acdc,adba,adbd,adcd,babc, babd,baca,bacb,bada,badb,bcab,bcac,bcba,bdab,bdad,caba,cabc,cacb, cacd,cada,cadc,cbab,cbac,cbca,cbcd}}}; \[Euro]ruleSymbolsToCumulIntegerLists={abac\[Rule]{0,1,1,1025}, abca\[Rule]{0,1,1025,1025},abcb\[Rule]{0,1,1025,1026}, abcd\[Rule]{0,1,1025,1049601},abad\[Rule]{0,1,1,1048577}, abda\[Rule]{0,1,1048577,1048577},abdb\[Rule]{0,1,1048577,1048578}, abdc\[Rule]{0,1,1048577,1049601},acab\[Rule]{0,1024,1024,1025}, acba\[Rule]{0,1024,1025,1025},acbc\[Rule]{0,1024,1025,2049}, acbd\[Rule]{0,1024,1025,1049601},acad\[Rule]{0,1024,1024,1049600}, acda\[Rule]{0,1024,1049600,1049600},acdc\[Rule]{0,1024,1049600,1050624}, acdb\[Rule]{0,1024,1049600,1049601}, adab\[Rule]{0,1048576,1048576,1048577}, adba\[Rule]{0,1048576,1048577,1048577}, adbd\[Rule]{0,1048576,1048577,2097153}, adbc\[Rule]{0,1048576,1048577,1049601}, adac\[Rule]{0,1048576,1048576,1049600}, adca\[Rule]{0,1048576,1049600,1049600}, adcd\[Rule]{0,1048576,1049600,2098176}, adcb\[Rule]{0,1048576,1049600,1049601},babc\[Rule]{1,1,2,1026}, bacb\[Rule]{1,1,1025,1026},baca\[Rule]{1,1,1025,1025}, bacd\[Rule]{1,1,1025,1049601},babd\[Rule]{1,1,2,1048578}, badb\[Rule]{1,1,1048577,1048578},bada\[Rule]{1,1,1048577,1048577}, badc\[Rule]{1,1,1048577,1049601},bcba\[Rule]{1,1025,1026,1026}, bcab\[Rule]{1,1025,1025,1026},bcac\[Rule]{1,1025,1025,2049}, bcad\[Rule]{1,1025,1025,1049601},bcbd\[Rule]{1,1025,1026,1049602}, bcdb\[Rule]{1,1025,1049601,1049602},bcdc\[Rule]{1,1025,1049601,1050625}, bcda\[Rule]{1,1025,1049601,1049601}, bdba\[Rule]{1,1048577,1048578,1048578}, bdab\[Rule]{1,1048577,1048577,1048578}, bdad\[Rule]{1,1048577,1048577,2097153}, bdac\[Rule]{1,1048577,1048577,1049601}, bdbc\[Rule]{1,1048577,1048578,1049602}, bdcb\[Rule]{1,1048577,1049601,1049602}, bdcd\[Rule]{1,1048577,1049601,2098177}, bdca\[Rule]{1,1048577,1049601,1049601},cacb\[Rule]{1024,1024,2048,2049}, cabc\[Rule]{1024,1024,1025,2049},caba\[Rule]{1024,1024,1025,1025}, cabd\[Rule]{1024,1024,1025,1049601},cacd\[Rule]{1024,1024,2048,1050624}, cadc\[Rule]{1024,1024,1049600,1050624}, cada\[Rule]{1024,1024,1049600,1049600}, cadb\[Rule]{1024,1024,1049600,1049601},cbca\[Rule]{1024,1025,2049,2049}, cbac\[Rule]{1024,1025,1025,2049},cbab\[Rule]{1024,1025,1025,1026}, cbad\[Rule]{1024,1025,1025,1049601},cbcd\[Rule]{1024,1025,2049,1050625}, cbdc\[Rule]{1024,1025,1049601,1050625}, cbdb\[Rule]{1024,1025,1049601,1049602}, cbda\[Rule]{1024,1025,1049601,1049601}, cdca\[Rule]{1024,1049600,1050624,1050624}, cdac\[Rule]{1024,1049600,1049600,1050624}, cdad\[Rule]{1024,1049600,1049600,2098176}, cdab\[Rule]{1024,1049600,1049600,1049601}, cdcb\[Rule]{1024,1049600,1050624,1050625}, cdbc\[Rule]{1024,1049600,1049601,1050625}, cdbd\[Rule]{1024,1049600,1049601,2098177}, cdba\[Rule]{1024,1049600,1049601,1049601}, dadb\[Rule]{1048576,1048576,2097152,2097153}, dabd\[Rule]{1048576,1048576,1048577,2097153}, daba\[Rule]{1048576,1048576,1048577,1048577}, dabc\[Rule]{1048576,1048576,1048577,1049601}, dadc\[Rule]{1048576,1048576,2097152,2098176}, dacd\[Rule]{1048576,1048576,1049600,2098176}, daca\[Rule]{1048576,1048576,1049600,1049600}, dacb\[Rule]{1048576,1048576,1049600,1049601}, dbda\[Rule]{1048576,1048577,2097153,2097153}, dbad\[Rule]{1048576,1048577,1048577,2097153}, dbab\[Rule]{1048576,1048577,1048577,1048578}, dbac\[Rule]{1048576,1048577,1048577,1049601}, dbdc\[Rule]{1048576,1048577,2097153,2098177}, dbcd\[Rule]{1048576,1048577,1049601,2098177}, dbcb\[Rule]{1048576,1048577,1049601,1049602}, dbca\[Rule]{1048576,1048577,1049601,1049601}, dcda\[Rule]{1048576,1049600,2098176,2098176}, dcad\[Rule]{1048576,1049600,1049600,2098176}, dcac\[Rule]{1048576,1049600,1049600,1050624}, dcab\[Rule]{1048576,1049600,1049600,1049601}, dcdb\[Rule]{1048576,1049600,2098176,2098177}, dcbd\[Rule]{1048576,1049600,1049601,2098177}, dcbc\[Rule]{1048576,1049600,1049601,1050625}, dcba\[Rule]{1048576,1049600,1049601,1049601}}; listOfRules= {{"a"\[Rule]"a","b"\[Rule]"b","c"\[Rule]"c", "d"\[Rule]"d"},{"a"\[Rule]"a","b"\[Rule]"b","c"\[Rule]"d", "d"\[Rule]"c"},{"a"\[Rule]"a","b"\[Rule]"c","c"\[Rule]"b", "d"\[Rule]"d"},{"a"\[Rule]"a","b"\[Rule]"c","c"\[Rule]"d", "d"\[Rule]"b"},{"a"\[Rule]"a","b"\[Rule]"d","c"\[Rule]"b", "d"\[Rule]"c"},{"a"\[Rule]"a","b"\[Rule]"d","c"\[Rule]"c", "d"\[Rule]"b"},{"a"\[Rule]"b","b"\[Rule]"a","c"\[Rule]"c", "d"\[Rule]"d"},{"a"\[Rule]"b","b"\[Rule]"a","c"\[Rule]"d", "d"\[Rule]"c"},{"a"\[Rule]"b","b"\[Rule]"c","c"\[Rule]"a", "d"\[Rule]"d"},{"a"\[Rule]"b","b"\[Rule]"c","c"\[Rule]"d", "d"\[Rule]"a"},{"a"\[Rule]"b","b"\[Rule]"d","c"\[Rule]"a", "d"\[Rule]"c"},{"a"\[Rule]"b","b"\[Rule]"d","c"\[Rule]"c", "d"\[Rule]"a"},{"a"\[Rule]"c","b"\[Rule]"a","c"\[Rule]"b", "d"\[Rule]"d"},{"a"\[Rule]"c","b"\[Rule]"a","c"\[Rule]"d", "d"\[Rule]"b"},{"a"\[Rule]"c","b"\[Rule]"b","c"\[Rule]"a", "d"\[Rule]"d"},{"a"\[Rule]"c","b"\[Rule]"b","c"\[Rule]"d", "d"\[Rule]"a"},{"a"\[Rule]"c","b"\[Rule]"d","c"\[Rule]"a", "d"\[Rule]"b"},{"a"\[Rule]"c","b"\[Rule]"d","c"\[Rule]"b", "d"\[Rule]"a"},{"a"\[Rule]"d","b"\[Rule]"a","c"\[Rule]"b", "d"\[Rule]"c"},{"a"\[Rule]"d","b"\[Rule]"a","c"\[Rule]"c", "d"\[Rule]"b"},{"a"\[Rule]"d","b"\[Rule]"b","c"\[Rule]"a", "d"\[Rule]"c"},{"a"\[Rule]"d","b"\[Rule]"b","c"\[Rule]"c", "d"\[Rule]"a"},{"a"\[Rule]"d","b"\[Rule]"c","c"\[Rule]"a", "d"\[Rule]"b"},{"a"\[Rule]"d","b"\[Rule]"c","c"\[Rule]"b", "d"\[Rule]"a"}}; allWords4ForRules={{"abac","abca","abcb","abcd","abad","abda","abdb","abdc","acab", "acba","acbc","acbd","acad","acda","acdc","acdb","adab","adba","adbd", "adbc","adac","adca","adcd","adcb","babc","bacb","baca","bacd","babd", "badb","bada","badc","bcba","bcab","bcac","bcad","bcbd","bcdb","bcdc", "bcda","bdba","bdab","bdad","bdac","bdbc","bdcb","bdcd","bdca","cacb", "cabc","caba","cabd","cacd","cadc","cada","cadb","cbca","cbac","cbab", "cbad","cbcd","cbdc","cbdb","cbda","cdca","cdac","cdad","cdab","cdcb", "cdbc","cdbd","cdba","dadb","dabd","daba","dabc","dadc","dacd","daca", "dacb","dbda","dbad","dbab","dbac","dbdc","dbcd","dbcb","dbca","dcda", "dcad","dcac","dcab","dcdb","dcbd","dcbc","dcba"},{"abad","abda","abdb", "abdc","abac","abca","abcb","abcd","adab","adba","adbd","adbc","adac", "adca","adcd","adcb","acab","acba","acbc","acbd","acad","acda","acdc", "acdb","babd","badb","bada","badc","babc","bacb","baca","bacd","bdba", "bdab","bdad","bdac","bdbc","bdcb","bdcd","bdca","bcba","bcab","bcac", "bcad","bcbd","bcdb","bcdc","bcda","dadb","dabd","daba","dabc","dadc", "dacd","daca","dacb","dbda","dbad","dbab","dbac","dbdc","dbcd","dbcb", "dbca","dcda","dcad","dcac","dcab","dcdb","dcbd","dcbc","dcba","cacb", "cabc","caba","cabd","cacd","cadc","cada","cadb","cbca","cbac","cbab", "cbad","cbcd","cbdc","cbdb","cbda","cdca","cdac","cdad","cdab","cdcb", "cdbc","cdbd","cdba"},{"acab","acba","acbc","acbd","acad","acda","acdc", "acdb","abac","abca","abcb","abcd","abad","abda","abdb","abdc","adac", "adca","adcd","adcb","adab","adba","adbd","adbc","cacb","cabc","caba", "cabd","cacd","cadc","cada","cadb","cbca","cbac","cbab","cbad","cbcd", "cbdc","cbdb","cbda","cdca","cdac","cdad","cdab","cdcb","cdbc","cdbd", "cdba","babc","bacb","baca","bacd","babd","badb","bada","badc","bcba", "bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda","bdba","bdab","bdad", "bdac","bdbc","bdcb","bdcd","bdca","dadc","dacd","daca","dacb","dadb", "dabd","daba","dabc","dcda","dcad","dcac","dcab","dcdb","dcbd","dcbc", "dcba","dbda","dbad","dbab","dbac","dbdc","dbcd","dbcb","dbca"},{"acad", "acda","acdc","acdb","acab","acba","acbc","acbd","adac","adca","adcd", "adcb","adab","adba","adbd","adbc","abac","abca","abcb","abcd","abad", "abda","abdb","abdc","cacd","cadc","cada","cadb","cacb","cabc","caba", "cabd","cdca","cdac","cdad","cdab","cdcb","cdbc","cdbd","cdba","cbca", "cbac","cbab","cbad","cbcd","cbdc","cbdb","cbda","dadc","dacd","daca", "dacb","dadb","dabd","daba","dabc","dcda","dcad","dcac","dcab","dcdb", "dcbd","dcbc","dcba","dbda","dbad","dbab","dbac","dbdc","dbcd","dbcb", "dbca","babc","bacb","baca","bacd","babd","badb","bada","badc","bcba", "bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda","bdba","bdab","bdad", "bdac","bdbc","bdcb","bdcd","bdca"},{"adab","adba","adbd","adbc","adac", "adca","adcd","adcb","abad","abda","abdb","abdc","abac","abca","abcb", "abcd","acad","acda","acdc","acdb","acab","acba","acbc","acbd","dadb", "dabd","daba","dabc","dadc","dacd","daca","dacb","dbda","dbad","dbab", "dbac","dbdc","dbcd","dbcb","dbca","dcda","dcad","dcac","dcab","dcdb", "dcbd","dcbc","dcba","babd","badb","bada","badc","babc","bacb","baca", "bacd","bdba","bdab","bdad","bdac","bdbc","bdcb","bdcd","bdca","bcba", "bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda","cacd","cadc","cada", "cadb","cacb","cabc","caba","cabd","cdca","cdac","cdad","cdab","cdcb", "cdbc","cdbd","cdba","cbca","cbac","cbab","cbad","cbcd","cbdc","cbdb", "cbda"},{"adac","adca","adcd","adcb","adab","adba","adbd","adbc","acad", "acda","acdc","acdb","acab","acba","acbc","acbd","abad","abda","abdb", "abdc","abac","abca","abcb","abcd","dadc","dacd","daca","dacb","dadb", "dabd","daba","dabc","dcda","dcad","dcac","dcab","dcdb","dcbd","dcbc", "dcba","dbda","dbad","dbab","dbac","dbdc","dbcd","dbcb","dbca","cacd", "cadc","cada","cadb","cacb","cabc","caba","cabd","cdca","cdac","cdad", "cdab","cdcb","cdbc","cdbd","cdba","cbca","cbac","cbab","cbad","cbcd", "cbdc","cbdb","cbda","babd","badb","bada","badc","babc","bacb","baca", "bacd","bdba","bdab","bdad","bdac","bdbc","bdcb","bdcd","bdca","bcba", "bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda"},{"babc","bacb","baca", "bacd","babd","badb","bada","badc","bcba","bcab","bcac","bcad","bcbd", "bcdb","bcdc","bcda","bdba","bdab","bdad","bdac","bdbc","bdcb","bdcd", "bdca","abac","abca","abcb","abcd","abad","abda","abdb","abdc","acab", "acba","acbc","acbd","acad","acda","acdc","acdb","adab","adba","adbd", "adbc","adac","adca","adcd","adcb","cbca","cbac","cbab","cbad","cbcd", "cbdc","cbdb","cbda","cacb","cabc","caba","cabd","cacd","cadc","cada", "cadb","cdcb","cdbc","cdbd","cdba","cdca","cdac","cdad","cdab","dbda", "dbad","dbab","dbac","dbdc","dbcd","dbcb","dbca","dadb","dabd","daba", "dabc","dadc","dacd","daca","dacb","dcdb","dcbd","dcbc","dcba","dcda", "dcad","dcac","dcab"},{"babd","badb","bada","badc","babc","bacb","baca", "bacd","bdba","bdab","bdad","bdac","bdbc","bdcb","bdcd","bdca","bcba", "bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda","abad","abda","abdb", "abdc","abac","abca","abcb","abcd","adab","adba","adbd","adbc","adac", "adca","adcd","adcb","acab","acba","acbc","acbd","acad","acda","acdc", "acdb","dbda","dbad","dbab","dbac","dbdc","dbcd","dbcb","dbca","dadb", "dabd","daba","dabc","dadc","dacd","daca","dacb","dcdb","dcbd","dcbc", "dcba","dcda","dcad","dcac","dcab","cbca","cbac","cbab","cbad","cbcd", "cbdc","cbdb","cbda","cacb","cabc","caba","cabd","cacd","cadc","cada", "cadb","cdcb","cdbc","cdbd","cdba","cdca","cdac","cdad","cdab"},{"bcba", "bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda","babc","bacb","baca", "bacd","babd","badb","bada","badc","bdbc","bdcb","bdcd","bdca","bdba", "bdab","bdad","bdac","cbca","cbac","cbab","cbad","cbcd","cbdc","cbdb", "cbda","cacb","cabc","caba","cabd","cacd","cadc","cada","cadb","cdcb", "cdbc","cdbd","cdba","cdca","cdac","cdad","cdab","abac","abca","abcb", "abcd","abad","abda","abdb","abdc","acab","acba","acbc","acbd","acad", "acda","acdc","acdb","adab","adba","adbd","adbc","adac","adca","adcd", "adcb","dbdc","dbcd","dbcb","dbca","dbda","dbad","dbab","dbac","dcdb", "dcbd","dcbc","dcba","dcda","dcad","dcac","dcab","dadb","dabd","daba", "dabc","dadc","dacd","daca","dacb"},{"bcbd","bcdb","bcdc","bcda","bcba", "bcab","bcac","bcad","bdbc","bdcb","bdcd","bdca","bdba","bdab","bdad", "bdac","babc","bacb","baca","bacd","babd","badb","bada","badc","cbcd", "cbdc","cbdb","cbda","cbca","cbac","cbab","cbad","cdcb","cdbc","cdbd", "cdba","cdca","cdac","cdad","cdab","cacb","cabc","caba","cabd","cacd", "cadc","cada","cadb","dbdc","dbcd","dbcb","dbca","dbda","dbad","dbab", "dbac","dcdb","dcbd","dcbc","dcba","dcda","dcad","dcac","dcab","dadb", "dabd","daba","dabc","dadc","dacd","daca","dacb","abac","abca","abcb", "abcd","abad","abda","abdb","abdc","acab","acba","acbc","acbd","acad", "acda","acdc","acdb","adab","adba","adbd","adbc","adac","adca","adcd", "adcb"},{"bdba","bdab","bdad","bdac","bdbc","bdcb","bdcd","bdca","babd", "badb","bada","badc","babc","bacb","baca","bacd","bcbd","bcdb","bcdc", "bcda","bcba","bcab","bcac","bcad","dbda","dbad","dbab","dbac","dbdc", "dbcd","dbcb","dbca","dadb","dabd","daba","dabc","dadc","dacd","daca", "dacb","dcdb","dcbd","dcbc","dcba","dcda","dcad","dcac","dcab","abad", "abda","abdb","abdc","abac","abca","abcb","abcd","adab","adba","adbd", "adbc","adac","adca","adcd","adcb","acab","acba","acbc","acbd","acad", "acda","acdc","acdb","cbcd","cbdc","cbdb","cbda","cbca","cbac","cbab", "cbad","cdcb","cdbc","cdbd","cdba","cdca","cdac","cdad","cdab","cacb", "cabc","caba","cabd","cacd","cadc","cada","cadb"},{"bdbc","bdcb","bdcd", "bdca","bdba","bdab","bdad","bdac","bcbd","bcdb","bcdc","bcda","bcba", "bcab","bcac","bcad","babd","badb","bada","badc","babc","bacb","baca", "bacd","dbdc","dbcd","dbcb","dbca","dbda","dbad","dbab","dbac","dcdb", "dcbd","dcbc","dcba","dcda","dcad","dcac","dcab","dadb","dabd","daba", "dabc","dadc","dacd","daca","dacb","cbcd","cbdc","cbdb","cbda","cbca", "cbac","cbab","cbad","cdcb","cdbc","cdbd","cdba","cdca","cdac","cdad", "cdab","cacb","cabc","caba","cabd","cacd","cadc","cada","cadb","abad", "abda","abdb","abdc","abac","abca","abcb","abcd","adab","adba","adbd", "adbc","adac","adca","adcd","adcb","acab","acba","acbc","acbd","acad", "acda","acdc","acdb"},{"cacb","cabc","caba","cabd","cacd","cadc","cada", "cadb","cbca","cbac","cbab","cbad","cbcd","cbdc","cbdb","cbda","cdca", "cdac","cdad","cdab","cdcb","cdbc","cdbd","cdba","acab","acba","acbc", "acbd","acad","acda","acdc","acdb","abac","abca","abcb","abcd","abad", "abda","abdb","abdc","adac","adca","adcd","adcb","adab","adba","adbd", "adbc","bcba","bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda","babc", "bacb","baca","bacd","babd","badb","bada","badc","bdbc","bdcb","bdcd", "bdca","bdba","bdab","bdad","bdac","dcda","dcad","dcac","dcab","dcdb", "dcbd","dcbc","dcba","dadc","dacd","daca","dacb","dadb","dabd","daba", "dabc","dbdc","dbcd","dbcb","dbca","dbda","dbad","dbab","dbac"},{"cacd", "cadc","cada","cadb","cacb","cabc","caba","cabd","cdca","cdac","cdad", "cdab","cdcb","cdbc","cdbd","cdba","cbca","cbac","cbab","cbad","cbcd", "cbdc","cbdb","cbda","acad","acda","acdc","acdb","acab","acba","acbc", "acbd","adac","adca","adcd","adcb","adab","adba","adbd","adbc","abac", "abca","abcb","abcd","abad","abda","abdb","abdc","dcda","dcad","dcac", "dcab","dcdb","dcbd","dcbc","dcba","dadc","dacd","daca","dacb","dadb", "dabd","daba","dabc","dbdc","dbcd","dbcb","dbca","dbda","dbad","dbab", "dbac","bcba","bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda","babc", "bacb","baca","bacd","babd","badb","bada","badc","bdbc","bdcb","bdcd", "bdca","bdba","bdab","bdad","bdac"},{"cbca","cbac","cbab","cbad","cbcd", "cbdc","cbdb","cbda","cacb","cabc","caba","cabd","cacd","cadc","cada", "cadb","cdcb","cdbc","cdbd","cdba","cdca","cdac","cdad","cdab","bcba", "bcab","bcac","bcad","bcbd","bcdb","bcdc","bcda","babc","bacb","baca", "bacd","babd","badb","bada","badc","bdbc","bdcb","bdcd","bdca","bdba", "bdab","bdad","bdac","acab","acba","acbc","acbd","acad","acda","acdc", "acdb","abac","abca","abcb","abcd","abad","abda","abdb","abdc","adac", "adca","adcd","adcb","adab","adba","adbd","adbc","dcdb","dcbd","dcbc", "dcba","dcda","dcad","dcac","dcab","dbdc","dbcd","dbcb","dbca","dbda", "dbad","dbab","dbac","dadc","dacd","daca","dacb","dadb","dabd","daba", "dabc"},{"cbcd","cbdc","cbdb","cbda","cbca","cbac","cbab","cbad","cdcb", "cdbc","cdbd","cdba","cdca","cdac","cdad","cdab","cacb","cabc","caba", "cabd","cacd","cadc","cada","cadb","bcbd","bcdb","bcdc","bcda","bcba", "bcab","bcac","bcad","bdbc","bdcb","bdcd","bdca","bdba","bdab","bdad", "bdac","babc","bacb","baca","bacd","babd","badb","bada","badc","dcdb", "dcbd","dcbc","dcba","dcda","dcad","dcac","dcab","dbdc","dbcd","dbcb", "dbca","dbda","dbad","dbab","dbac","dadc","dacd","daca","dacb","dadb", "dabd","daba","dabc","acab","acba","acbc","acbd","acad","acda","acdc", "acdb","abac","abca","abcb","abcd","abad","abda","abdb","abdc","adac", "adca","adcd","adcb","adab","adba","adbd","adbc"},{"cdca","cdac","cdad", "cdab","cdcb","cdbc","cdbd","cdba","cacd","cadc","cada","cadb","cacb", "cabc","caba","cabd","cbcd","cbdc","cbdb","cbda","cbca","cbac","cbab", "cbad","dcda","dcad","dcac","dcab","dcdb","dcbd","dcbc","dcba","dadc", "dacd","daca","dacb","dadb","dabd","daba","dabc","dbdc","dbcd","dbcb", "dbca","dbda","dbad","dbab","dbac","acad","acda","acdc","acdb","acab", "acba","acbc","acbd","adac","adca","adcd","adcb","adab","adba","adbd", "adbc","abac","abca","abcb","abcd","abad","abda","abdb","abdc","bcbd", "bcdb","bcdc","bcda","bcba","bcab","bcac","bcad","bdbc","bdcb","bdcd", "bdca","bdba","bdab","bdad","bdac","babc","bacb","baca","bacd","babd", "badb","bada","badc"},{"cdcb","cdbc","cdbd","cdba","cdca","cdac","cdad", "cdab","cbcd","cbdc","cbdb","cbda","cbca","cbac","cbab","cbad","cacd", "cadc","cada","cadb","cacb","cabc","caba","cabd","dcdb","dcbd","dcbc", "dcba","dcda","dcad","dcac","dcab","dbdc","dbcd","dbcb","dbca","dbda", "dbad","dbab","dbac","dadc","dacd","daca","dacb","dadb","dabd","daba", "dabc","bcbd","bcdb","bcdc","bcda","bcba","bcab","bcac","bcad","bdbc", "bdcb","bdcd","bdca","bdba","bdab","bdad","bdac","babc","bacb","baca", "bacd","babd","badb","bada","badc","acad","acda","acdc","acdb","acab", "acba","acbc","acbd","adac","adca","adcd","adcb","adab","adba","adbd", "adbc","abac","abca","abcb","abcd","abad","abda","abdb","abdc"},{"dadb", "dabd","daba","dabc","dadc","dacd","daca","dacb","dbda","dbad","dbab", "dbac","dbdc","dbcd","dbcb","dbca","dcda","dcad","dcac","dcab","dcdb", "dcbd","dcbc","dcba","adab","adba","adbd","adbc","adac","adca","adcd", "adcb","abad","abda","abdb","abdc","abac","abca","abcb","abcd","acad", "acda","acdc","acdb","acab","acba","acbc","acbd","bdba","bdab","bdad", "bdac","bdbc","bdcb","bdcd","bdca","babd","badb","bada","badc","babc", "bacb","baca","bacd","bcbd","bcdb","bcdc","bcda","bcba","bcab","bcac", "bcad","cdca","cdac","cdad","cdab","cdcb","cdbc","cdbd","cdba","cacd", "cadc","cada","cadb","cacb","cabc","caba","cabd","cbcd","cbdc","cbdb", "cbda","cbca","cbac","cbab","cbad"},{"dadc","dacd","daca","dacb","dadb", "dabd","daba","dabc","dcda","dcad","dcac","dcab","dcdb","dcbd","dcbc", "dcba","dbda","dbad","dbab","dbac","dbdc","dbcd","dbcb","dbca","adac", "adca","adcd","adcb","adab","adba","adbd","adbc","acad","acda","acdc", "acdb","acab","acba","acbc","acbd","abad","abda","abdb","abdc","abac", "abca","abcb","abcd","cdca","cdac","cdad","cdab","cdcb","cdbc","cdbd", "cdba","cacd","cadc","cada","cadb","cacb","cabc","caba","cabd","cbcd", "cbdc","cbdb","cbda","cbca","cbac","cbab","cbad","bdba","bdab","bdad", "bdac","bdbc","bdcb","bdcd","bdca","babd","badb","bada","badc","babc", "bacb","baca","bacd","bcbd","bcdb","bcdc","bcda","bcba","bcab","bcac", "bcad"},{"dbda","dbad","dbab","dbac","dbdc","dbcd","dbcb","dbca","dadb", "dabd","daba","dabc","dadc","dacd","daca","dacb","dcdb","dcbd","dcbc", "dcba","dcda","dcad","dcac","dcab","bdba","bdab","bdad","bdac","bdbc", "bdcb","bdcd","bdca","babd","badb","bada","badc","babc","bacb","baca", "bacd","bcbd","bcdb","bcdc","bcda","bcba","bcab","bcac","bcad","adab", "adba","adbd","adbc","adac","adca","adcd","adcb","abad","abda","abdb", "abdc","abac","abca","abcb","abcd","acad","acda","acdc","acdb","acab", "acba","acbc","acbd","cdcb","cdbc","cdbd","cdba","cdca","cdac","cdad", "cdab","cbcd","cbdc","cbdb","cbda","cbca","cbac","cbab","cbad","cacd", "cadc","cada","cadb","cacb","cabc","caba","cabd"},{"dbdc","dbcd","dbcb", "dbca","dbda","dbad","dbab","dbac","dcdb","dcbd","dcbc","dcba","dcda", "dcad","dcac","dcab","dadb","dabd","daba","dabc","dadc","dacd","daca", "dacb","bdbc","bdcb","bdcd","bdca","bdba","bdab","bdad","bdac","bcbd", "bcdb","bcdc","bcda","bcba","bcab","bcac","bcad","babd","badb","bada", "badc","babc","bacb","baca","bacd","cdcb","cdbc","cdbd","cdba","cdca", "cdac","cdad","cdab","cbcd","cbdc","cbdb","cbda","cbca","cbac","cbab", "cbad","cacd","cadc","cada","cadb","cacb","cabc","caba","cabd","adab", "adba","adbd","adbc","adac","adca","adcd","adcb","abad","abda","abdb", "abdc","abac","abca","abcb","abcd","acad","acda","acdc","acdb","acab", "acba","acbc","acbd"},{"dcda","dcad","dcac","dcab","dcdb","dcbd","dcbc", "dcba","dadc","dacd","daca","dacb","dadb","dabd","daba","dabc","dbdc", "dbcd","dbcb","dbca","dbda","dbad","dbab","dbac","cdca","cdac","cdad", "cdab","cdcb","cdbc","cdbd","cdba","cacd","cadc","cada","cadb","cacb", "cabc","caba","cabd","cbcd","cbdc","cbdb","cbda","cbca","cbac","cbab", "cbad","adac","adca","adcd","adcb","adab","adba","adbd","adbc","acad", "acda","acdc","acdb","acab","acba","acbc","acbd","abad","abda","abdb", "abdc","abac","abca","abcb","abcd","bdbc","bdcb","bdcd","bdca","bdba", "bdab","bdad","bdac","bcbd","bcdb","bcdc","bcda","bcba","bcab","bcac", "bcad","babd","badb","bada","badc","babc","bacb","baca","bacd"},{"dcdb", "dcbd","dcbc","dcba","dcda","dcad","dcac","dcab","dbdc","dbcd","dbcb", "dbca","dbda","dbad","dbab","dbac","dadc","dacd","daca","dacb","dadb", "dabd","daba","dabc","cdcb","cdbc","cdbd","cdba","cdca","cdac","cdad", "cdab","cbcd","cbdc","cbdb","cbda","cbca","cbac","cbab","cbad","cacd", "cadc","cada","cadb","cacb","cabc","caba","cabd","bdbc","bdcb","bdcd", "bdca","bdba","bdab","bdad","bdac","bcbd","bcdb","bcdc","bcda","bcba", "bcab","bcac","bcad","babd","badb","bada","badc","babc","bacb","baca", "bacd","adac","adca","adcd","adcb","adab","adba","adbd","adbc","acad", "acda","acdc","acdb","acab","acba","acbc","acbd","abad","abda","abdb", "abdc","abac","abca","abcb","abcd"}}; Clear[permRuleForStrings]; permRuleForStrings[n_]:= Thread[Rule[allWords4ForRules[[1]],allWords4ForRules[[n]]]] Clear[permRuleForExpressions]; permRuleForExpressions[n_]:= Rule[ToExpression[#[[1]]],ToExpression[#[[2]]]]& /@permRuleForStrings[n] Clear[\[Euro]permRule]; \[Euro]permRule[1]={}; (\[Euro]permRule[#]=permRuleForExpressions[#])& /@ Range[2,Length[allWords4ForRules]]; reducedWordsList4={"abac","abca","abcb","abcd"} allWordsList4=StringReplace[reducedWordsList4,#]& /@ listOfRules allSymbolsList4=(ToExpression /@ #)& /@ allWordsList4 allCumulIntegersList4=allSymbolsList4 /. \[Euro]ruleSymbolsToCumulIntegerLists \[Euro]ruleCumulIntegerListsToSymbols={{0,1,1,1025}\[Rule] abac,{0,1,1025,1025}\[Rule]abca,{0,1,1025,1026}\[Rule] abcb,{0,1,1025,1049601}\[Rule]abcd,{0,1,1,1048577}\[Rule] abad,{0,1,1048577,1048577}\[Rule]abda,{0,1,1048577,1048578}\[Rule] abdb,{0,1,1048577,1049601}\[Rule]abdc,{0,1024,1024,1025}\[Rule] acab,{0,1024,1025,1025}\[Rule]acba,{0,1024,1025,2049}\[Rule] acbc,{0,1024,1025,1049601}\[Rule]acbd,{0,1024,1024,1049600}\[Rule] acad,{0,1024,1049600,1049600}\[Rule] acda,{0,1024,1049600,1050624}\[Rule] acdc,{0,1024,1049600,1049601}\[Rule] acdb,{0,1048576,1048576,1048577}\[Rule] adab,{0,1048576,1048577,1048577}\[Rule] adba,{0,1048576,1048577,2097153}\[Rule] adbd,{0,1048576,1048577,1049601}\[Rule] adbc,{0,1048576,1048576,1049600}\[Rule] adac,{0,1048576,1049600,1049600}\[Rule] adca,{0,1048576,1049600,2098176}\[Rule] adcd,{0,1048576,1049600,1049601}\[Rule]adcb,{1,1,2,1026}\[Rule] babc,{1,1,1025,1026}\[Rule]bacb,{1,1,1025,1025}\[Rule] baca,{1,1,1025,1049601}\[Rule]bacd,{1,1,2,1048578}\[Rule] babd,{1,1,1048577,1048578}\[Rule]badb,{1,1,1048577,1048577}\[Rule] bada,{1,1,1048577,1049601}\[Rule]badc,{1,1025,1026,1026}\[Rule] bcba,{1,1025,1025,1026}\[Rule]bcab,{1,1025,1025,2049}\[Rule] bcac,{1,1025,1025,1049601}\[Rule]bcad,{1,1025,1026,1049602}\[Rule] bcbd,{1,1025,1049601,1049602}\[Rule] bcdb,{1,1025,1049601,1050625}\[Rule] bcdc,{1,1025,1049601,1049601}\[Rule] bcda,{1,1048577,1048578,1048578}\[Rule] bdba,{1,1048577,1048577,1048578}\[Rule] bdab,{1,1048577,1048577,2097153}\[Rule] bdad,{1,1048577,1048577,1049601}\[Rule] bdac,{1,1048577,1048578,1049602}\[Rule] bdbc,{1,1048577,1049601,1049602}\[Rule] bdcb,{1,1048577,1049601,2098177}\[Rule] bdcd,{1,1048577,1049601,1049601}\[Rule] bdca,{1024,1024,2048,2049}\[Rule]cacb,{1024,1024,1025,2049}\[Rule] cabc,{1024,1024,1025,1025}\[Rule]caba,{1024,1024,1025,1049601}\[Rule] cabd,{1024,1024,2048,1050624}\[Rule] cacd,{1024,1024,1049600,1050624}\[Rule] cadc,{1024,1024,1049600,1049600}\[Rule] cada,{1024,1024,1049600,1049601}\[Rule] cadb,{1024,1025,2049,2049}\[Rule]cbca,{1024,1025,1025,2049}\[Rule] cbac,{1024,1025,1025,1026}\[Rule] cbab,{1024,1025,1025,1049601}\[Rule]cbad,{1024,1025,2049, 1050625}\[Rule]cbcd,{1024,1025,1049601,1050625}\[Rule]cbdc,{1024, 1025,1049601,1049602}\[Rule]cbdb,{1024,1025,1049601, 1049601}\[Rule]cbda,{1024,1049600,1050624,1050624}\[Rule]cdca,{1024, 1049600,1049600,1050624}\[Rule]cdac,{1024,1049600,1049600, 2098176}\[Rule]cdad,{1024,1049600,1049600,1049601}\[Rule]cdab,{1024, 1049600,1050624,1050625}\[Rule]cdcb,{1024,1049600,1049601, 1050625}\[Rule]cdbc,{1024,1049600,1049601,2098177}\[Rule]cdbd,{1024, 1049600,1049601,1049601}\[Rule]cdba,{1048576,1048576,2097152, 2097153}\[Rule]dadb,{1048576,1048576,1048577, 2097153}\[Rule]dabd,{1048576,1048576,1048577, 1048577}\[Rule]daba,{1048576,1048576,1048577, 1049601}\[Rule]dabc,{1048576,1048576,2097152, 2098176}\[Rule]dadc,{1048576,1048576,1049600, 2098176}\[Rule]dacd,{1048576,1048576,1049600, 1049600}\[Rule]daca,{1048576,1048576,1049600, 1049601}\[Rule]dacb,{1048576,1048577,2097153, 2097153}\[Rule]dbda,{1048576,1048577,1048577, 2097153}\[Rule]dbad,{1048576,1048577,1048577, 1048578}\[Rule]dbab,{1048576,1048577,1048577, 1049601}\[Rule]dbac,{1048576,1048577,2097153, 2098177}\[Rule]dbdc,{1048576,1048577,1049601, 2098177}\[Rule]dbcd,{1048576,1048577,1049601, 1049602}\[Rule]dbcb,{1048576,1048577,1049601, 1049601}\[Rule]dbca,{1048576,1049600,2098176, 2098176}\[Rule]dcda,{1048576,1049600,1049600, 2098176}\[Rule]dcad,{1048576,1049600,1049600, 1050624}\[Rule]dcac,{1048576,1049600,1049600, 1049601}\[Rule]dcab,{1048576,1049600,2098176, 2098177}\[Rule]dcdb,{1048576,1049600,1049601, 2098177}\[Rule]dcbd,{1048576,1049600,1049601, 1050625}\[Rule]dcbc,{1048576,1049600,1049601,1049601}\[Rule]dcba}; Clear[constrFu,ordinalIndexForCumulIntegerList4]; constrFu[n_]:= (ordinalIndexForCumulIntegerList4[#]:= Position[allCumulIntegersList4[[n]],#][[1,1]])& /@ allCumulIntegersList4[[n]] constrFu[#]& /@ Range[ Length[allCumulIntegersList4] ]; Clear[constructFu,tryProperExtensionVis]; constructFu[n_]:= (tryProperExtensionVis[#, index_]:= \ \[Euro]reducedWordListSuff4Add4ToExpressions[[\ ordinalIndexForCumulIntegerList4[#],2,index]]/. \[Euro]permRule[n])& /@ allCumulIntegersList4[[n]]; constructFu[#]& /@ Range[ Length[allCumulIntegersList4] ]; Clear[constructFuVisWholeList,tryProperExtensionVisList]; constructFuVisWholeList[n_]:= (tryProperExtensionVisList[#]:= \ \[Euro]reducedWordListSuff4Add4ToExpressions[[\ ordinalIndexForCumulIntegerList4[#],2]]/. \[Euro]permRule[n])& /@ allCumulIntegersList4[[n]]; constructFuVisWholeList[#]& /@ Range[ Length[allCumulIntegersList4] ]; Clear[tryProperExtension]; tryProperExtension[x_, index_]:= (tryProperExtensionVis[x, index]/.\[Euro]ruleSymbolsToCumulIntegerLists); tryProperExtension[ x_]:= (tryProperExtensionVisList[ x]/.\[Euro]ruleSymbolsToCumulIntegerLists); Clear[lengthOfListOfCatenableCumIntLis]; lengthOfListOfCatenableCumIntLis[x_List]:= Length[ \[Euro]reducedWordListSuff4Add4ToExpressions[[\ ordinalIndexForCumulIntegerList4[x],2]] ]