# Noble Boolean functions

Ж :
* ANF   matrix   twins
* noble   gentle
* smallest Zhegalkin index
Noble Boolean functions are those who are their own Zhegalkin twins, i.e. the binary expression of their ANF is equal to their truth table. They correspond to fixed points in the Zhegalkin permutation. They are all even, i.e. the first digit of their truth table is false. When a Boolean function is noble, its whole faction is noble. Within the this project it is slightly misleading to apply the term noble to Boolean functions. It is a property of a truth table with a specific length.
$\Pi$           A197819 :
* row 3 of length 256:     0, 255, 170, 85 ... 84, 171, 254, 1
* [0, 255, 170, 85, 204, 51, 102, 153, 136, 119, 34, 221, 68, 187, 238, 17, 240, 15, 90, 165, 60, 195, 150, 105, 120, 135, 210, 45, 180, 75, 30, 225, 160, 95, 10, 245, 108, 147, 198, 57, 40, 215, 130, 125, 228, 27, 78, 177, 80, 175, 250, 5, 156, 99, 54, 201, 216, 39, 114, 141, 20, 235, 190, 65, 192, 63, 106, 149, 12, 243, 166, 89, 72, 183, 226, 29, 132, 123, 46, 209, 48, 207, 154, 101, 252, 3, 86, 169, 184, 71, 18, 237, 116, 139, 222, 33, 96, 159, 202, 53, 172, 83, 6, 249, 232, 23, 66, 189, 36, 219, 142, 113, 144, 111, 58, 197, 92, 163, 246, 9, 24, 231, 178, 77, 212, 43, 126, 129, 128, 127, 42, 213, 76, 179, 230, 25, 8, 247, 162, 93, 196, 59, 110, 145, 112, 143, 218, 37, 188, 67, 22, 233, 248, 7, 82, 173, 52, 203, 158, 97, 32, 223, 138, 117, 236, 19, 70, 185, 168, 87, 2, 253, 100, 155, 206, 49, 208, 47, 122, 133, 28, 227, 182, 73, 88, 167, 242, 13, 148, 107, 62, 193, 64, 191, 234, 21, 140, 115, 38, 217, 200, 55, 98, 157, 4, 251, 174, 81, 176, 79, 26, 229, 124, 131, 214, 41, 56, 199, 146, 109, 244, 11, 94, 161, 224, 31, 74, 181, 44, 211, 134, 121, 104, 151, 194, 61, 164, 91, 14, 241, 16, 239, 186, 69, 220, 35, 118, 137, 152, 103, 50, 205, 84, 171, 254, 1]
$\Phi _{n}~~=~~\{i\mid \Pi _{n,~i}=i\}$           A358167 :
* row 4 of length 256:     0, 510, 680, 854 ... 64680, 64854, 65024, 65534
* [0, 510, 680, 854, 1224, 1334, 1632, 1950, 2176, 2430, 2600, 3030, 3144, 3510, 3808, 3870, 4320, 4382, 4680, 5046, 5160, 5590, 5760, 6014, 6240, 6558, 6856, 6966, 7336, 7510, 7680, 8190, 8320, 8574, 8744, 9174, 9288, 9654, 9952, 10014, 10240, 10750, 10920, 11094, 11464, 11574, 11872, 12190, 12384, 12702, 13000, 13110, 13480, 13654, 13824, 14334, 14560, 14622, 14920, 15286, 15400, 15830, 16000, 16254, 16512, 16766, 16936, 17366, 17480, 17846, 18144, 18206, 18432, 18942, 19112, 19286, 19656, 19766, 20064, 20382, 20576, 20894, 21192, 21302, 21672, 21846, 22016, 22526, 22752, 22814, 23112, 23478, 23592, 24022, 24192, 24446, 24576, 25086, 25256, 25430, 25800, 25910, 26208, 26526, 26752, 27006, 27176, 27606, 27720, 28086, 28384, 28446, 28896, 28958, 29256, 29622, 29736, 30166, 30336, 30590, 30816, 31134, 31432, 31542, 31912, 32086, 32256, 32766, 32768, 33278, 33448, 33622, 33992, 34102, 34400, 34718, 34944, 35198, 35368, 35798, 35912, 36278, 36576, 36638, 37088, 37150, 37448, 37814, 37928, 38358, 38528, 38782, 39008, 39326, 39624, 39734, 40104, 40278, 40448, 40958, 41088, 41342, 41512, 41942, 42056, 42422, 42720, 42782, 43008, 43518, 43688, 43862, 44232, 44342, 44640, 44958, 45152, 45470, 45768, 45878, 46248, 46422, 46592, 47102, 47328, 47390, 47688, 48054, 48168, 48598, 48768, 49022, 49280, 49534, 49704, 50134, 50248, 50614, 50912, 50974, 51200, 51710, 51880, 52054, 52424, 52534, 52832, 53150, 53344, 53662, 53960, 54070, 54440, 54614, 54784, 55294, 55520, 55582, 55880, 56246, 56360, 56790, 56960, 57214, 57344, 57854, 58024, 58198, 58568, 58678, 58976, 59294, 59520, 59774, 59944, 60374, 60488, 60854, 61152, 61214, 61664, 61726, 62024, 62390, 62504, 62934, 63104, 63358, 63584, 63902, 64200, 64310, 64680, 64854, 65024, 65534]
3-ary and 4-ary nobles assigned to juniors (in square matrices) :
| 3-ary nobles | 4-ary nobles |
row sums of $\Phi _{n}$ :
| n | sum of row n | sum of row n |
| 0 | | 1 |
| 1 | $2^{1}\cdot (2^{1}-1)~~~=~~~2^{2}-2^{1}$ | 2 |
| 2 | $2^{2}\cdot (2^{3}-1)~~~=~~~2^{5}-2^{2}$ | 28 |
| 3 | $2^{4}\cdot (2^{7}-1)~~~=~~~2^{11}-2^{4}$ | 2032 |
| 4 | $2^{8}\cdot (2^{15}-1)~~~=~~~2^{23}-2^{8}$ | 8388352 |
| 5 | $2^{16}\cdot (2^{31}-1)~~~=~~~2^{47}-2^{16}$ | 140737488289792 |

### quadrants

It is easily seen, that the left and right half of each row differ only in the last digit. Those on the left/right have even/odd weight. They shall be called evil/odious.
There is a second way to partition the nobles in two halves: Those in even/odd places of the triangle row have false/true entries in all 1-bit places of their truth table. They shall be called weak/strong.
So the nobles can be partitioned into four quadrants by depravity and strength.
Nobles that are evil and weak shall be called royal. Each noble corresponds to a royal, and can easily be derived from it. (A royal corresponds to itself.) When a Boolean function is royal, its whole faction is royal. The function with the smallest Zhegalkin index in a faction shall be called king, and be used to represent it. So all nobles of a given arity can effectively be represented by a rather short list of kings.
triangle of royals :
* row 4 of length 64:     0, 680, 1224, 1632 ... 30816, 31432, 31912, 32256
* [0, 680, 1224, 1632, 2176, 2600, 3144, 3808, 4320, 4680, 5160, 5760, 6240, 6856, 7336, 7680, 8320, 8744, 9288, 9952, 10240, 10920, 11464, 11872, 12384, 13000, 13480, 13824, 14560, 14920, 15400, 16000, 16512, 16936, 17480, 18144, 18432, 19112, 19656, 20064, 20576, 21192, 21672, 22016, 22752, 23112, 23592, 24192, 24576, 25256, 25800, 26208, 26752, 27176, 27720, 28384, 28896, 29256, 29736, 30336, 30816, 31432, 31912, 32256]
triangle of kings :
* row 5 of length 272:     0, 174760, 419424 ... 2091314912, 2091559592, 2093664936
* [0, 174760, 419424, 559232, 664104, 978656, 1480320, 1603680, 1757896, 2631680, 2785960, 2942152, 3034720, 4112000, 6875264, 7245536, 8289792, 8421376, 8840800, 9085480, 10025056, 10395136, 11053056, 11456096, 16711168, 18245760, 18384480, 18492616, 18800640, 19453440, 19561640, 19837024, 20769320, 23772200, 25067520, 25351336, 25753216, 26667136, 26913992, 27983016, 36208640, 36317864, 36457672, 36628064, 37534760, 37775488, 37929512, 38330368, 38700640, 39081128, 39255552, 39500360, 39640104, 39745152, 40561192, 40668232, 41712808, 41866752, 42107560, 42263752, 42508416, 42911456, 43433600, 43711176, 43818152, 44739240, 44879048, 46196864, 46844584, 47502504, 48166528, 50134184, 54454400, 56159968, 56526976, 57196160, 57596128, 58491560, 58775040, 59158624, 59438120, 60090920, 60337760, 60737536, 61406720, 62702120, 63232584, 63895648, 107129512, 107513984, 107933408, 108435072, 108558432, 108712648, 109109248, 109479520, 109756968, 110279240, 110663776, 111083008, 111340072, 111724544, 112111200, 112242784, 112645632, 113046568, 115795552, 116979808, 125339232, 125755392, 126006440, 126391936, 126808288, 126938848, 127585480, 127975040, 128375008, 128776904, 129164488, 132707968, 142781096, 143165568, 143584992, 143716576, 144086656, 144364232, 144744576, 145147616, 145548488, 145947336, 146331872, 146718336, 149481600, 150402688, 160605256, 161406976, 161674280, 162059776, 162443360, 163375656, 166131808, 178430504, 178570312, 179234400, 179370080, 180017736, 180141096, 180936704, 181861888, 182246440, 183167528, 183825448, 197060736, 198766304, 199555784, 250539744, 250671328, 375941248, 376095272, 377421312, 377662120, 378046592, 378466016, 378967680, 379245256, 380429512, 381599360, 384362624, 394329600, 394696800, 394976296, 396288000, 398256680, 411099136, 411469408, 411746856, 412269128, 412653664, 413072896, 413329960, 413714432, 414101088, 414232672, 414635520, 415036456, 417785440, 418969696, 428928736, 429575368, 429964928, 430364896, 430766792, 431154376, 434697856, 446752896, 447400616, 447524040, 447918792, 448058536, 448722560, 449244896, 450024136, 450425056, 451208392, 452655816, 464578144, 467066880, 468382760, 518053888, 520027648, 679510016, 679929440, 680174120, 680313928, 680836136, 681113696, 682141696, 682544736, 683862568, 684247040, 685168128, 685569064, 687799808, 697755776, 698002632, 698141352, 699071656, 700366976, 700897504, 701299400, 715827880, 715967688, 717285504, 717933224, 718591144, 719255168, 721222824, 733790760, 734321224, 734984288, 751234784, 751619272, 752014024, 752414944, 753198280, 754645704, 769056768, 770372648, 786884192, 788068448, 1019396648, 1019797504, 1020722688, 1022028328, 1037627104, 1055451264, 1753393832, 1753778304, 1754197728, 1754699392, 1754976968, 1756161224, 1757331072, 1760094336, 1772019712, 1773988392, 1789847136, 1791549440, 1793780264, 1807673472, 1809379040, 1861152480]
triangle of king indices :
* row 5 of length 272:     0, 2, 6 ... 27582, 27608, 28398
* [0, 2, 6, 8, 10, 14, 22, 24, 26, 40, 42, 44, 46, 62, 104, 110, 126, 128, 134, 138, 152, 158, 168, 174, 254, 278, 280, 282, 286, 296, 298, 302, 316, 362, 382, 386, 392, 406, 410, 426, 552, 554, 556, 558, 572, 576, 578, 584, 590, 596, 598, 602, 604, 606, 618, 620, 636, 638, 642, 644, 648, 654, 662, 666, 668, 682, 684, 704, 714, 724, 734, 764, 830, 856, 862, 872, 878, 892, 896, 902, 906, 916, 920, 926, 936, 956, 964, 974, 1634, 1640, 1646, 1654, 1656, 1658, 1664, 1670, 1674, 1682, 1688, 1694, 1698, 1704, 1710, 1712, 1718, 1724, 1766, 1784, 1912, 1918, 1922, 1928, 1934, 1936, 1946, 1952, 1958, 1964, 1970, 2024, 2178, 2184, 2190, 2192, 2198, 2202, 2208, 2214, 2220, 2226, 2232, 2238, 2280, 2294, 2450, 2462, 2466, 2472, 2478, 2492, 2534, 2722, 2724, 2734, 2736, 2746, 2748, 2760, 2774, 2780, 2794, 2804, 3006, 3032, 3044, 3822, 3824, 5736, 5738, 5758, 5762, 5768, 5774, 5782, 5786, 5804, 5822, 5864, 6016, 6022, 6026, 6046, 6076, 6272, 6278, 6282, 6290, 6296, 6302, 6306, 6312, 6318, 6320, 6326, 6332, 6374, 6392, 6544, 6554, 6560, 6566, 6572, 6578, 6632, 6816, 6826, 6828, 6834, 6836, 6846, 6854, 6866, 6872, 6884, 6906, 7088, 7126, 7146, 7904, 7934, 10368, 10374, 10378, 10380, 10388, 10392, 10408, 10414, 10434, 10440, 10454, 10460, 10494, 10646, 10650, 10652, 10666, 10686, 10694, 10700, 10922, 10924, 10944, 10954, 10964, 10974, 11004, 11196, 11204, 11214, 11462, 11468, 11474, 11480, 11492, 11514, 11734, 11754, 12006, 12024, 15554, 15560, 15574, 15594, 15832, 16104, 26754, 26760, 26766, 26774, 26778, 26796, 26814, 26856, 27038, 27068, 27310, 27336, 27370, 27582, 27608, 28398]
representatives of 4-ary noble factions :
| 00 32768128 65534255 32766127 26752104 59520232 38782151 601423 576022 38528150 59774233 27006105 1092042 43688170 54614213 2184685 16326 34400134 63902249 31134121 28384110 61152238 37150145 438217 6802 33448130 64854253 32086125 21768 34944136 63358247 30590119 380814 36576142 61726241 28958113 685626 39624154 58678229 25910101 1146444 44232172 54070211 2130283 | 00 32768128 65534255 32766127 26752104 59520232 38782151 601423 576022 38528150 48598189 1583061 1092042 43688170 33278129 5101 16326 34400134 60374235 27606107 28384110 61152238 33622131 8543 6802 33448130 43518169 1075041 21768 34944136 40958159 819031 380814 36576142 39326153 655825 685626 39624154 35798139 303011 1146444 44232172 34718135 19507 |

### group under exclusive or

With XOR as a group operation the n-ary noble and royal Boolean functions form a power of the cyclic group C$_2$.

## patrons

The XOR of twins is noble, i.e. the XOR of a key and a value in $\Pi _{n}$ is an entry of $\Phi _{n}$. For a Boolean function this means, that the XOR of its ANF and its truth table is a noble Boolean function, which shall be called its patron. The patron of a noble is the contradiction.
$\Xi _{n,~k}~~=~~\Pi _{n,~k}\oplus k$ :
* row 3 of length 256:     0, 254, 168, 86 ... 168, 86, 0, 254
* [0, 254, 168, 86, 200, 54, 96, 158, 128, 126, 40, 214, 72, 182, 224, 30, 224, 30, 72, 182, 40, 214, 128, 126, 96, 158, 200, 54, 168, 86, 0, 254, 128, 126, 40, 214, 72, 182, 224, 30, 0, 254, 168, 86, 200, 54, 96, 158, 96, 158, 200, 54, 168, 86, 0, 254, 224, 30, 72, 182, 40, 214, 128, 126, 128, 126, 40, 214, 72, 182, 224, 30, 0, 254, 168, 86, 200, 54, 96, 158, 96, 158, 200, 54, 168, 86, 0, 254, 224, 30, 72, 182, 40, 214, 128, 126, 0, 254, 168, 86, 200, 54, 96, 158, 128, 126, 40, 214, 72, 182, 224, 30, 224, 30, 72, 182, 40, 214, 128, 126, 96, 158, 200, 54, 168, 86, 0, 254, 0, 254, 168, 86, 200, 54, 96, 158, 128, 126, 40, 214, 72, 182, 224, 30, 224, 30, 72, 182, 40, 214, 128, 126, 96, 158, 200, 54, 168, 86, 0, 254, 128, 126, 40, 214, 72, 182, 224, 30, 0, 254, 168, 86, 200, 54, 96, 158, 96, 158, 200, 54, 168, 86, 0, 254, 224, 30, 72, 182, 40, 214, 128, 126, 128, 126, 40, 214, 72, 182, 224, 30, 0, 254, 168, 86, 200, 54, 96, 158, 96, 158, 200, 54, 168, 86, 0, 254, 224, 30, 72, 182, 40, 214, 128, 126, 0, 254, 168, 86, 200, 54, 96, 158, 128, 126, 40, 214, 72, 182, 224, 30, 224, 30, 72, 182, 40, 214, 128, 126, 96, 158, 200, 54, 168, 86, 0, 254]
For $n\geq 1$ the entries in $\Xi _{n}$ are repetitions of those in $\Phi _{n}$. E.g. $\Xi _{2}$ contains the entries $\{0,6,8,14\}$, each repeated four times.
The set of places where $\Xi _{n}$ has entries $\Phi _{n,~k}$ can be calculated by XORing $\Pi _{n-1,~k}$ with the entries of $\Phi _{n}$.

### 3-ary Boolean functions with patron 168

$\Pi _{2}\times \Phi _{3}$ :
| 0 | 0 | 30 | 40 | 54 | 72 | 86 | 96 | 126 | 128 | 158 | 168 | 182 | 200 | 214 | 224 | 254 | 0 |
| 1 | 15 | 17 | 39 | 57 | 71 | 89 | 111 | 113 | 143 | 145 | 167 | 185 | 199 | 217 | 239 | 241 | 30 |
| 2 | 10 | 20 | 34 | 60 | 66 | 92 | 106 | 116 | 138 | 148 | 162 | 188 | 194 | 220 | 234 | 244 | 40 |
| 3 | 5 | 27 | 45 | 51 | 77 | 83 | 101 | 123 | 133 | 155 | 173 | 179 | 205 | 211 | 229 | 251 | 54 |
| 4 | 12 | 18 | 36 | 58 | 68 | 90 | 108 | 114 | 140 | 146 | 164 | 186 | 196 | 218 | 236 | 242 | 72 |
| 5 | 3 | 29 | 43 | 53 | 75 | 85 | 99 | 125 | 131 | 157 | 171 | 181 | 203 | 213 | 227 | 253 | 86 |
| 6 | 6 | 24 | 46 | 48 | 78 | 80 | 102 | 120 | 134 | 152 | 174 | 176 | 206 | 208 | 230 | 248 | 96 |
| 7 | 9 | 23 | 33 | 63 | 65 | 95 | 105 | 119 | 137 | 151 | 161 | 191 | 193 | 223 | 233 | 247 | 126 |
| 8 | 8 | 22 | 32 | 62 | 64 | 94 | 104 | 118 | 136 | 150 | 160 | 190 | 192 | 222 | 232 | 246 | 128 |
| 9 | 7 | 25 | 47 | 49 | 79 | 81 | 103 | 121 | 135 | 153 | 175 | 177 | 207 | 209 | 231 | 249 | 158 |
| 10 | 2 | 28 | 42 | 52 | 74 | 84 | 98 | 124 | 130 | 156 | 170 | 180 | 202 | 212 | 226 | 252 | 168 |
| 11 | 13 | 19 | 37 | 59 | 69 | 91 | 109 | 115 | 141 | 147 | 165 | 187 | 197 | 219 | 237 | 243 | 182 |
| 12 | 4 | 26 | 44 | 50 | 76 | 82 | 100 | 122 | 132 | 154 | 172 | 178 | 204 | 210 | 228 | 250 | 200 |
| 13 | 11 | 21 | 35 | 61 | 67 | 93 | 107 | 117 | 139 | 149 | 163 | 189 | 195 | 221 | 235 | 245 | 214 |
| 14 | 14 | 16 | 38 | 56 | 70 | 88 | 110 | 112 | 142 | 144 | 166 | 184 | 198 | 216 | 238 | 240 | 224 |
| 15 | 1 | 31 | 41 | 55 | 73 | 87 | 97 | 127 | 129 | 159 | 169 | 183 | 201 | 215 | 225 | 255 | 254 |
faction clusters with patron 168 :
| • 2 (dark red), 170 (light yellow) • 84 (light red), 252 (dark yellow) | • 42 (dark red), 130 (light yellow) • 124 (light red), 212 (dark yellow) |
| • 28 (dark red), 180 (light yellow) • 52 (dark red), 156 (light yellow) • 74 (light red), 226 (dark yellow) • 98 (light red), 202 (dark yellow) ||