mapFolding 0.17.1__py3-none-any.whl → 0.18.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. easyRun/NOTcountingFolds.py +7 -11
  2. easyRun/countFolds.py +11 -10
  3. easyRun/meanders.py +6 -8
  4. mapFolding/__init__.py +24 -36
  5. mapFolding/_e/Z0Z_analysisPython/SORTZ0Z_hypothesis.py +189 -0
  6. mapFolding/_e/Z0Z_analysisPython/SORTZ0Z_p2d6.py +143 -0
  7. mapFolding/_e/Z0Z_analysisPython/__init__.py +4 -0
  8. mapFolding/_e/Z0Z_analysisPython/exclusionData/__init__.py +0 -0
  9. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/200.py +369 -0
  10. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/2001.py +694 -0
  11. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/200/344/270/211.py +514 -0
  12. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/200/344/270/2111.py +480 -0
  13. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/200/344/272/214.py +511 -0
  14. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/200/344/272/2141.py +515 -0
  15. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/200/344/272/214/344/270/211.py +485 -0
  16. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/200/344/272/214/344/270/2111.py +442 -0
  17. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/211.py +313 -0
  18. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/270/2111.py +343 -0
  19. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/272/214.py +400 -0
  20. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/272/2141.py +497 -0
  21. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/272/214/344/270/211.py +463 -0
  22. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/344/272/214/344/270/2111.py +441 -0
  23. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266.py +35 -0
  24. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/2661.py +35 -0
  25. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/200.py +382 -0
  26. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/2001.py +630 -0
  27. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/200/344/270/211.py +488 -0
  28. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/200/344/270/2111.py +475 -0
  29. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/200/344/272/214.py +473 -0
  30. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/200/344/272/2141.py +500 -0
  31. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/200/344/272/214/344/270/211.py +465 -0
  32. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/200/344/272/214/344/270/2111.py +439 -0
  33. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/211.py +599 -0
  34. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/270/2111.py +536 -0
  35. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/272/214.py +506 -0
  36. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/272/2141.py +533 -0
  37. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/272/214/344/270/211.py +489 -0
  38. mapFolding/_e/Z0Z_analysisPython/exclusionData/aggregated/351/246/226/351/233/266/344/272/214/344/270/2111.py +474 -0
  39. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200.py +1186 -0
  40. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/2001.py +2158 -0
  41. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/2001Negative.py +2158 -0
  42. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200Negative.py +1186 -0
  43. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/270/211.py +1397 -0
  44. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/270/2111.py +1291 -0
  45. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/270/2111Negative.py +1291 -0
  46. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/270/211Negative.py +1397 -0
  47. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/272/214.py +1240 -0
  48. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/272/2141.py +1420 -0
  49. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/272/2141Negative.py +1420 -0
  50. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/272/214Negative.py +1240 -0
  51. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/272/214/344/270/211.py +1366 -0
  52. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/272/214/344/270/2111.py +1274 -0
  53. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/272/214/344/270/2111Negative.py +1274 -0
  54. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/200/344/272/214/344/270/211Negative.py +1366 -0
  55. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/211.py +1186 -0
  56. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/2111.py +1186 -0
  57. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/2111Negative.py +1186 -0
  58. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/270/211Negative.py +1186 -0
  59. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/272/214.py +1102 -0
  60. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/272/2141.py +1422 -0
  61. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/272/2141Negative.py +1422 -0
  62. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/272/214Negative.py +1102 -0
  63. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/272/214/344/270/211.py +1240 -0
  64. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/272/214/344/270/2111.py +1228 -0
  65. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/272/214/344/270/2111Negative.py +1228 -0
  66. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/344/272/214/344/270/211Negative.py +1240 -0
  67. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266.py +32 -0
  68. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/2661.py +1162 -0
  69. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/2661Negative.py +1162 -0
  70. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266Negative.py +32 -0
  71. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200.py +1186 -0
  72. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/2001.py +1926 -0
  73. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/2001Negative.py +1926 -0
  74. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200Negative.py +1186 -0
  75. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/270/211.py +1291 -0
  76. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/270/2111.py +1176 -0
  77. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/270/2111Negative.py +1176 -0
  78. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/270/211Negative.py +1291 -0
  79. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/272/214.py +1228 -0
  80. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/272/2141.py +1324 -0
  81. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/272/2141Negative.py +1324 -0
  82. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/272/214Negative.py +1228 -0
  83. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/272/214/344/270/211.py +1274 -0
  84. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/272/214/344/270/2111.py +1038 -0
  85. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/272/214/344/270/2111Negative.py +1038 -0
  86. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/200/344/272/214/344/270/211Negative.py +1274 -0
  87. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/211.py +2158 -0
  88. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/2111.py +1926 -0
  89. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/2111Negative.py +1926 -0
  90. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/270/211Negative.py +2158 -0
  91. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/272/214.py +1422 -0
  92. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/272/2141.py +1364 -0
  93. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/272/2141Negative.py +1364 -0
  94. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/272/214Negative.py +1422 -0
  95. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/272/214/344/270/211.py +1420 -0
  96. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/272/214/344/270/2111.py +1324 -0
  97. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/272/214/344/270/2111Negative.py +1324 -0
  98. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d5/351/246/226/351/233/266/344/272/214/344/270/211Negative.py +1420 -0
  99. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200.py +3133 -0
  100. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/2001.py +6039 -0
  101. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/2001Negative.py +6039 -0
  102. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200Negative.py +3133 -0
  103. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/270/211.py +3527 -0
  104. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/270/2111.py +2300 -0
  105. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/270/2111Negative.py +2300 -0
  106. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/270/211Negative.py +3527 -0
  107. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/272/214.py +3597 -0
  108. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/272/2141.py +3317 -0
  109. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/272/2141Negative.py +3317 -0
  110. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/272/214Negative.py +3597 -0
  111. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/272/214/344/270/211.py +3161 -0
  112. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/272/214/344/270/2111.py +2877 -0
  113. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/272/214/344/270/2111Negative.py +2877 -0
  114. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/200/344/272/214/344/270/211Negative.py +3161 -0
  115. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/211.py +2981 -0
  116. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/2111.py +3055 -0
  117. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/2111Negative.py +3055 -0
  118. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/270/211Negative.py +2981 -0
  119. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/272/214.py +3221 -0
  120. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/272/2141.py +3988 -0
  121. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/272/2141Negative.py +3988 -0
  122. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/272/214Negative.py +3221 -0
  123. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/272/214/344/270/211.py +3652 -0
  124. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/272/214/344/270/2111.py +2863 -0
  125. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/272/214/344/270/2111Negative.py +2863 -0
  126. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/344/272/214/344/270/211Negative.py +3652 -0
  127. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200.py +2485 -0
  128. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/2001.py +4566 -0
  129. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/2001Negative.py +4566 -0
  130. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200Negative.py +2485 -0
  131. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/270/211.py +3006 -0
  132. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/270/2111.py +2485 -0
  133. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/270/2111Negative.py +2485 -0
  134. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/270/211Negative.py +3006 -0
  135. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/272/214.py +3304 -0
  136. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/272/2141.py +3015 -0
  137. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/272/2141Negative.py +3015 -0
  138. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/272/214Negative.py +3304 -0
  139. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/272/214/344/270/211.py +2939 -0
  140. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/272/214/344/270/2111.py +2589 -0
  141. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/272/214/344/270/2111Negative.py +2589 -0
  142. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/200/344/272/214/344/270/211Negative.py +2939 -0
  143. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/211.py +3899 -0
  144. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/2111.py +2996 -0
  145. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/2111Negative.py +2996 -0
  146. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/270/211Negative.py +3899 -0
  147. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/272/214.py +3223 -0
  148. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/272/2141.py +3020 -0
  149. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/272/2141Negative.py +3020 -0
  150. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/272/214Negative.py +3223 -0
  151. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/272/214/344/270/211.py +3250 -0
  152. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/272/214/344/270/2111.py +2667 -0
  153. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/272/214/344/270/2111Negative.py +2667 -0
  154. mapFolding/_e/Z0Z_analysisPython/exclusionData/collatedp2d6/351/246/226/351/233/266/344/272/214/344/270/211Negative.py +3250 -0
  155. mapFolding/_e/Z0Z_analysisPython/measure.py +162 -0
  156. mapFolding/_e/Z0Z_analysisPython/positionAnalysis.py +403 -0
  157. mapFolding/_e/Z0Z_analysisPython/positionAnalysisPileRanges2d6.py +110 -0
  158. mapFolding/_e/Z0Z_analysisPython/theExcluderBeast.py +640 -0
  159. mapFolding/_e/Z0Z_analysisPython/toolkit.py +166 -0
  160. mapFolding/_e/Z0Z_analysisPython/toolkitCSVsequences.py +188 -0
  161. mapFolding/_e/Z0Z_analysisPython/workBenchPatternFinder.py +284 -0
  162. mapFolding/_e/Z0Z_notes/__init__.py +0 -0
  163. mapFolding/_e/Z0Z_notes/knowledgeDump.py +214 -0
  164. mapFolding/_e/__init__.py +45 -0
  165. mapFolding/_e/_beDRY.py +547 -0
  166. mapFolding/_e/_dataDynamic.py +1164 -0
  167. mapFolding/_e/_measure.py +579 -0
  168. mapFolding/_e/_semiotics.py +363 -0
  169. mapFolding/_e/_theTypes.py +31 -0
  170. mapFolding/_e/algorithms/__init__.py +1 -0
  171. mapFolding/_e/algorithms/constraintPropagation.py +158 -0
  172. mapFolding/_e/algorithms/elimination.py +118 -0
  173. mapFolding/_e/algorithms/eliminationCrease.py +66 -0
  174. mapFolding/_e/algorithms/iff.py +584 -0
  175. mapFolding/_e/basecamp.py +89 -0
  176. mapFolding/_e/dataBaskets.py +123 -0
  177. mapFolding/_e/dataRaw/__init__.py +0 -0
  178. mapFolding/_e/easyRun/__init__.py +0 -0
  179. mapFolding/_e/easyRun/eliminateFolds.py +72 -0
  180. mapFolding/_e/easyRun/pinning.py +62 -0
  181. mapFolding/_e/filters.py +384 -0
  182. mapFolding/_e/pin2/344/270/212nDimensions.py +882 -0
  183. mapFolding/_e/pin2/344/270/212nDimensionsAnnex.py +551 -0
  184. mapFolding/_e/pin2/344/270/212nDimensionsByCrease.py +190 -0
  185. mapFolding/_e/pin2/344/270/212nDimensionsByDomain.py +459 -0
  186. mapFolding/_e/pinIt.py +436 -0
  187. mapFolding/_semiotics.py +42 -0
  188. mapFolding/_theSSOT.py +11 -56
  189. mapFolding/_theTypes.py +52 -67
  190. mapFolding/algorithms/matrixMeandersNumPyndas.py +18 -18
  191. mapFolding/algorithms/oeisIDbyFormula.py +4 -4
  192. mapFolding/algorithms/zCuzDocStoopidoeisIDbyFormula.py +3 -3
  193. mapFolding/basecamp.py +11 -80
  194. mapFolding/beDRY.py +107 -111
  195. mapFolding/dataBaskets.py +0 -56
  196. mapFolding/filesystemToolkit.py +15 -11
  197. mapFolding/oeis.py +17 -16
  198. mapFolding/reference/matrixMeandersAnalysis/prefixNotationNotes.py +2 -2
  199. mapFolding/reference/meandersDumpingGround/matrixMeandersBaselineV2.py +0 -1
  200. mapFolding/reference/meandersDumpingGround/matrixMeandersNumPyV1finalForm.py +8 -10
  201. mapFolding/someAssemblyRequired/RecipeJob.py +5 -5
  202. mapFolding/someAssemblyRequired/makeJobTheorem2Numba.py +5 -2
  203. mapFolding/someAssemblyRequired/makeJobTheorem2codon.py +9 -11
  204. mapFolding/someAssemblyRequired/mapFoldingModules/makeMapFoldingModules.py +2 -1
  205. mapFolding/someAssemblyRequired/transformationTools.py +1 -1
  206. mapFolding/tests/Z0Z_test_e_excluder.py +155 -0
  207. mapFolding/tests/conftest.py +193 -314
  208. mapFolding/tests/dataSamples/A001417.py +455 -0
  209. mapFolding/tests/dataSamples/__init__.py +1 -0
  210. mapFolding/tests/dataSamples/measurementData.py +1818 -0
  211. mapFolding/tests/dataSamples/p2DnDomain3_2_/351/246/226/344/270/200_/351/246/226/351/233/266/344/270/200.py +17 -0
  212. mapFolding/tests/dataSamples/p2DnDomain3_/351/246/226/344/270/200.py +17 -0
  213. mapFolding/tests/dataSamples/p2DnDomain5_4.py +17 -0
  214. mapFolding/tests/dataSamples/p2DnDomain6_5.py +17 -0
  215. mapFolding/tests/dataSamples/p2DnDomain6_7_5_4.py +17 -0
  216. mapFolding/tests/dataSamples/p2DnDomain7_6.py +17 -0
  217. mapFolding/tests/dataSamples/p2DnDomain/351/246/226/344/272/214_/351/246/226/351/233/266/344/270/200/344/272/214.py +17 -0
  218. mapFolding/tests/dataSamples/p2DnDomain/351/246/226/344/272/214_/351/246/226/351/233/266/344/272/214_/351/246/226/351/233/266/344/270/200/344/272/214_/351/246/226/344/270/200/344/272/214.py +17 -0
  219. mapFolding/tests/dataSamples/p2DnDomain/351/246/226/351/233/266/344/270/200/344/272/214_/351/246/226/344/270/200/344/272/214.py +15 -0
  220. mapFolding/tests/dataSamples/p2DnDomain/351/246/226/351/233/266/344/272/214_/351/246/226/344/272/214.py +15 -0
  221. mapFolding/tests/dataSamples/semioticsData.py +135 -0
  222. mapFolding/tests/test_computations.py +134 -80
  223. mapFolding/tests/test_e_computations.py +42 -0
  224. mapFolding/tests/test_e_dataDynamic.py +189 -0
  225. mapFolding/tests/test_e_measurements.py +257 -0
  226. mapFolding/tests/test_e_pinning.py +61 -0
  227. mapFolding/tests/test_e_semiotics.py +128 -0
  228. mapFolding/tests/test_filesystem.py +39 -17
  229. mapFolding/tests/{test_other.py → test_parameterValidation.py} +3 -3
  230. mapFolding/tests/{test_tasks.py → test_taskDivisions.py} +42 -23
  231. mapFolding/zCuzDocStoopid/makeDocstrings.py +3 -2
  232. {mapfolding-0.17.1.dist-info → mapfolding-0.18.0.dist-info}/METADATA +11 -8
  233. mapfolding-0.18.0.dist-info/RECORD +305 -0
  234. {mapfolding-0.17.1.dist-info → mapfolding-0.18.0.dist-info}/WHEEL +1 -1
  235. easyRun/eliminateFolds.py +0 -60
  236. mapFolding/algorithms/constraintPropagation.py +0 -184
  237. mapFolding/algorithms/elimination.py +0 -131
  238. mapFolding/algorithms/eliminationCount.py +0 -26
  239. mapFolding/algorithms/eliminationPinned.py +0 -35
  240. mapFolding/algorithms/iff.py +0 -206
  241. mapFolding/algorithms/patternFinder.py +0 -280
  242. mapFolding/algorithms/pinning2Dn.py +0 -345
  243. mapFolding/algorithms/pinning2DnAnnex.py +0 -43
  244. mapFolding/tests/verify.py +0 -323
  245. mapfolding-0.17.1.dist-info/RECORD +0 -112
  246. {mapfolding-0.17.1.dist-info → mapfolding-0.18.0.dist-info}/entry_points.txt +0 -0
  247. {mapfolding-0.17.1.dist-info → mapfolding-0.18.0.dist-info}/licenses/LICENSE +0 -0
  248. {mapfolding-0.17.1.dist-info → mapfolding-0.18.0.dist-info}/top_level.txt +0 -0
@@ -1,323 +0,0 @@
1
- # ruff: noqa: T201
2
- from cytoolz.curried import dissoc, filter, map as toolz_map, valmap # noqa: A004
3
- from cytoolz.functoolz import compose
4
- from gmpy2 import fac
5
- from mapFolding.algorithms.patternFinder import getDictionaryAddends4Next
6
- from mapFolding.dataBaskets import EliminationState
7
- from math import prod
8
- from pathlib import Path
9
- from pprint import pprint
10
- from typing import TYPE_CHECKING
11
- import numpy
12
- import pickle
13
-
14
- if TYPE_CHECKING:
15
- from collections.abc import Callable
16
- from numpy.typing import NDArray
17
-
18
- def verifyDictionaryLeafRanges(state: EliminationState, dictionaryIndexLeafRanges: dict[int, range]) -> None:
19
- dictionaryIndexLeafRangesStartKnown32: dict[int, int] = {0: 0, 1: 1, 2: 3, 3: 2, 4: 7, 5: 2, 6: 4, 7: 3, 8: 15, 9: 2, 10: 4, 11: 3, 12: 8, 13: 3, 14: 5, 15: 4, 16: 31, 17: 2, 18: 4, 19: 3, 20: 8, 21: 3, 22: 5, 23: 4, 24: 16, 25: 3, 26: 5, 27: 4, 28: 9, 29: 4, 30: 6, 31: 5}
20
- dictionaryIndexLeafRangesStartKnown64Columns: list[int] = [0,1,3,2,7,2,4,3,15,2,4,3,8,3,5,4,31,2,4,3,8,3,5,4,16,3,5,4,9,4,6,5,63,2,4,3,8,3,5,4,16,3,5,4,9,4,6,5,32,3,5,4,9,4,6,5,17,4,6,5,10,5,7,6]
21
- dictionaryIndexLeafRangesStartKnown64: dict[int, int] = {indexLeaf: dictionaryIndexLeafRangesStartKnown64Columns[indexLeaf] for indexLeaf in range(64)}
22
- dictionaryIndexLeafRangesStopKnown64Columns: list[int] = [1,2,34,33,50,49,49,48,58,57,57,56,57,56,56,55,62,61,61,60,61,60,60,59,61,60,60,59,60,59,59,58,64,63,63,62,63,62,62,61,63,62,62,61,62,61,61,60,63,62,62,61,62,61,61,60,62,61,61,60,61,60,60,59]
23
- dictionaryIndexLeafRangesStopKnown64: dict[int, int] = {indexLeaf: dictionaryIndexLeafRangesStopKnown64Columns[indexLeaf] for indexLeaf in range(64)}
24
-
25
- dictionaryIndexLeafRangesStartKnown: dict[int, int] | None = None
26
- dictionaryIndexLeafRangesStopKnown: dict[int, int] | None = None
27
- if state.leavesTotal == 32:
28
- dictionaryIndexLeafRangesStartKnown = dictionaryIndexLeafRangesStartKnown32
29
- elif state.leavesTotal == 64:
30
- dictionaryIndexLeafRangesStartKnown = dictionaryIndexLeafRangesStartKnown64
31
- dictionaryIndexLeafRangesStopKnown = dictionaryIndexLeafRangesStopKnown64
32
-
33
- issues: int = 0
34
-
35
- for indexLeaf, rangeIndexLeaf in sorted(dictionaryIndexLeafRanges.items()):
36
- print(indexLeaf, repr(rangeIndexLeaf), sep="\t")
37
- if dictionaryIndexLeafRangesStartKnown is not None and rangeIndexLeaf.start != dictionaryIndexLeafRangesStartKnown[indexLeaf]:
38
- issues += 1
39
- print(f"\33[91mKnown range start: {dictionaryIndexLeafRangesStartKnown[indexLeaf]:2d}\33[0m")
40
-
41
- if dictionaryIndexLeafRangesStopKnown is not None:
42
- if rangeIndexLeaf.stop < dictionaryIndexLeafRangesStopKnown[indexLeaf]:
43
- issues += 1
44
- print(f"\33[91mKnown range stop: {dictionaryIndexLeafRangesStopKnown[indexLeaf]:2d}\33[0m")
45
- if rangeIndexLeaf.stop > dictionaryIndexLeafRangesStopKnown[indexLeaf] + 1:
46
- issues += 1
47
- print(f"Known range stop: {dictionaryIndexLeafRangesStopKnown[indexLeaf]:2d}\33[0m")
48
-
49
- if issues:
50
- print(f"\33[91mFound {issues} issues.\33[0m")
51
- else:
52
- print("\33[92mNo issues found.\33[0m")
53
- print(len(dictionaryIndexLeafRanges), "of", state.leavesTotal)
54
-
55
- def verifyDictionaryAddends4Next(state: EliminationState, dictionaryAddends4Next: dict[int, list[int]]) -> None:
56
- dictionaryAddends4NextKnown64: dict[int, list[int]] = {
57
- 0: [1],
58
- 1: [2, 4, 8, 16, 32],
59
- 2: [4, 8, 16, 32],
60
- 3: [-1],
61
- 4: [8, 16, 32],
62
- 5: [-1, 2],
63
- 6: [1, -2],
64
- 7: [-2, -4, 8, 16, 32],
65
- 8: [16, 32],
66
- 9: [-1, 2, 4],
67
- 10: [1, -2, 4],
68
- 11: [-2, 4, -8, 16, 32],
69
- 12: [1, 2, -4],
70
- 13: [2, -4, -8, 16, 32],
71
- 14: [-4, -8, 16, 32],
72
- 15: [-1, -2, -4],
73
- 16: [32],
74
- 17: [-1, 2, 4, 8],
75
- 18: [1, -2, 4, 8],
76
- 19: [-2, 4, 8, -16, 32],
77
- 20: [1, 2, -4, 8],
78
- 21: [2, -4, 8, -16, 32],
79
- 22: [-4, 8, -16, 32],
80
- 23: [-1, -2, -4, 8],
81
- 24: [1, 2, 4, -8],
82
- 25: [2, 4, -8, -16, 32],
83
- 26: [4, -8, -16, 32],
84
- 27: [-1, -2, 4, -8],
85
- 28: [-8, -16, 32],
86
- 29: [-1, 2, -4, -8],
87
- 30: [1, -2, -4, -8],
88
- 31: [-2, -4, -8, -16, 32],
89
- 32: [],
90
- 33: [-1, 2, 4, 8, 16],
91
- 34: [1, -2, 4, 8, 16],
92
- 35: [-2, 4, 8, 16, -32],
93
- 36: [1, 2, -4, 8, 16],
94
- 37: [2, -4, 8, 16, -32],
95
- 38: [-4, 8, 16, -32],
96
- 39: [-1, -2, -4, 8, 16],
97
- 40: [1, 2, 4, -8, 16],
98
- 41: [2, 4, -8, 16, -32],
99
- 42: [4, -8, 16, -32],
100
- 43: [-1, -2, 4, -8, 16],
101
- 44: [-8, 16, -32],
102
- 45: [-1, 2, -4, -8, 16],
103
- 46: [1, -2, -4, -8, 16],
104
- 47: [-2, -4, -8, 16, -32],
105
- 48: [1, 2, 4, 8, -16],
106
- 49: [2, 4, 8, -16, -32],
107
- 50: [4, 8, -16, -32],
108
- 51: [-1, -2, 4, 8, -16],
109
- 52: [8, -16, -32],
110
- 53: [-1, 2, -4, 8, -16],
111
- 54: [1, -2, -4, 8, -16],
112
- 55: [-2, -4, 8, -16, -32],
113
- 56: [-16, -32],
114
- 57: [-1, 2, 4, -8, -16],
115
- 58: [1, -2, 4, -8, -16],
116
- 59: [-2, 4, -8, -16, -32],
117
- 60: [1, 2, -4, -8, -16],
118
- 61: [2, -4, -8, -16, -32],
119
- 62: [-4, -8, -16, -32],
120
- 63: [-1, -2, -4, -8, -16]
121
- }
122
-
123
- dictionaryAddends4NextKnown: dict[int, list[int]] | None = None
124
- if state.leavesTotal == 64:
125
- dictionaryAddends4NextKnown = dictionaryAddends4NextKnown64
126
-
127
- pprint(dictionaryAddends4Next) # noqa: T203
128
- print(len(dictionaryAddends4Next), "of", state.leavesTotal)
129
-
130
- if dictionaryAddends4NextKnown is not None:
131
- for indexLeaf, listAddends in dictionaryAddends4Next.items():
132
- if listAddends != dictionaryAddends4NextKnown[indexLeaf]:
133
- print(f"\33[91m{indexLeaf = :2d}\t{listAddends = } != {dictionaryAddends4NextKnown[indexLeaf]}, the known value.\33[0m")
134
- print("\33[92mChecked known values.\33[0m")
135
-
136
- def verifyDictionaryAddends4Prior(state: EliminationState, dictionaryAddends4Prior: dict[int, list[int]]) -> None:
137
- dictionaryAddends4PriorKnown16: dict[int, list[int]] = {
138
- 0: [],
139
- 1: [-1],
140
- 2: [1],
141
- 3: [-2, 4, 8],
142
- 4: [1, 2],
143
- 5: [2, -4, 8],
144
- 6: [-4, 8],
145
- 7: [-1, -2],
146
- 8: [1, 2, 4],
147
- 9: [2, 4, -8],
148
- 10: [4, -8],
149
- 11: [-1, -2, 4],
150
- 12: [-8],
151
- 13: [-1, 2, -4],
152
- 14: [1, -2, -4],
153
- 15: [-2, -4, -8]}
154
-
155
- dictionaryAddends4PriorKnown32: dict[int, list[int]] = {
156
- 0: [],
157
- 1: [-1],
158
- 2: [1],
159
- 3: [-2, 4, 8, 16],
160
- 4: [1, 2],
161
- 5: [2, -4, 8, 16],
162
- 6: [-4, 8, 16],
163
- 7: [-1, -2],
164
- 8: [1, 2, 4],
165
- 9: [2, 4, -8, 16],
166
- 10: [4, -8, 16],
167
- 11: [-1, -2, 4],
168
- 12: [-8, 16],
169
- 13: [-1, 2, -4],
170
- 14: [1, -2, -4],
171
- 15: [-2, -4, -8, 16],
172
- 16: [1, 2, 4, 8],
173
- 17: [2, 4, 8, -16],
174
- 18: [4, 8, -16],
175
- 19: [-1, -2, 4, 8],
176
- 20: [8, -16],
177
- 21: [-1, 2, -4, 8],
178
- 22: [1, -2, -4, 8],
179
- 23: [-2, -4, 8, -16],
180
- 24: [-16],
181
- 25: [-1, 2, 4, -8],
182
- 26: [1, -2, 4, -8],
183
- 27: [-2, 4, -8, -16],
184
- 28: [1, 2, -4, -8],
185
- 29: [2, -4, -8, -16],
186
- 30: [-4, -8, -16],
187
- 31: [-1, -2, -4, -8]}
188
- dictionaryAddends4PriorKnown64: dict[int, list[int]] = {
189
- 0: [],
190
- 1: [-1],
191
- 2: [1],
192
- 3: [-2, 4, 8, 16, 32],
193
- 4: [1, 2],
194
- 5: [2, -4, 8, 16, 32],
195
- 6: [-4, 8, 16, 32],
196
- 7: [-1, -2],
197
- 8: [1, 2, 4],
198
- 9: [2, 4, -8, 16, 32],
199
- 10: [4, -8, 16, 32],
200
- 11: [-1, -2, 4],
201
- 12: [-8, 16, 32],
202
- 13: [-1, 2, -4],
203
- 14: [1, -2, -4],
204
- 15: [-2, -4, -8, 16, 32],
205
- 16: [1, 2, 4, 8],
206
- 17: [2, 4, 8, -16, 32],
207
- 18: [4, 8, -16, 32],
208
- 19: [-1, -2, 4, 8],
209
- 20: [8, -16, 32],
210
- 21: [-1, 2, -4, 8],
211
- 22: [1, -2, -4, 8],
212
- 23: [-2, -4, 8, -16, 32],
213
- 24: [-16, 32],
214
- 25: [-1, 2, 4, -8],
215
- 26: [1, -2, 4, -8],
216
- 27: [-2, 4, -8, -16, 32],
217
- 28: [1, 2, -4, -8],
218
- 29: [2, -4, -8, -16, 32],
219
- 30: [-4, -8, -16, 32],
220
- 31: [-1, -2, -4, -8],
221
- 32: [1, 2, 4, 8, 16],
222
- 33: [2, 4, 8, 16, -32],
223
- 34: [4, 8, 16, -32],
224
- 35: [-1, -2, 4, 8, 16],
225
- 36: [8, 16, -32],
226
- 37: [-1, 2, -4, 8, 16],
227
- 38: [1, -2, -4, 8, 16],
228
- 39: [-2, -4, 8, 16, -32],
229
- 40: [16, -32],
230
- 41: [-1, 2, 4, -8, 16],
231
- 42: [1, -2, 4, -8, 16],
232
- 43: [-2, 4, -8, 16, -32],
233
- 44: [1, 2, -4, -8, 16],
234
- 45: [2, -4, -8, 16, -32],
235
- 46: [-4, -8, 16, -32],
236
- 47: [-1, -2, -4, -8, 16],
237
- 48: [-32],
238
- 49: [-1, 2, 4, 8, -16],
239
- 50: [1, -2, 4, 8, -16],
240
- 51: [-2, 4, 8, -16, -32],
241
- 52: [1, 2, -4, 8, -16],
242
- 53: [2, -4, 8, -16, -32],
243
- 54: [-4, 8, -16, -32],
244
- 55: [-1, -2, -4, 8, -16],
245
- 56: [1, 2, 4, -8, -16],
246
- 57: [2, 4, -8, -16, -32],
247
- 58: [4, -8, -16, -32],
248
- 59: [-1, -2, 4, -8, -16],
249
- 60: [-8, -16, -32],
250
- 61: [-1, 2, -4, -8, -16],
251
- 62: [1, -2, -4, -8, -16],
252
- 63: [-2, -4, -8, -16, -32]
253
- }
254
-
255
- dictionaryAddends4PriorKnown: dict[int, list[int]] | None = None
256
- if state.leavesTotal == 16:
257
- dictionaryAddends4PriorKnown = dictionaryAddends4PriorKnown16
258
- elif state.leavesTotal == 32:
259
- dictionaryAddends4PriorKnown = dictionaryAddends4PriorKnown32
260
- elif state.leavesTotal == 64:
261
- dictionaryAddends4PriorKnown = dictionaryAddends4PriorKnown64
262
-
263
- pprint(dictionaryAddends4Prior) # noqa: T203
264
- print(len(dictionaryAddends4Prior), "of", state.leavesTotal)
265
-
266
- if dictionaryAddends4PriorKnown is not None:
267
- for indexLeaf, listAddends in dictionaryAddends4Prior.items():
268
- if listAddends != dictionaryAddends4PriorKnown[indexLeaf]:
269
- print(f"\33[91m{indexLeaf = :2d}\t{listAddends = } != {dictionaryAddends4PriorKnown[indexLeaf]}, the known value.\33[0m")
270
- print("\33[92mChecked known values.\33[0m")
271
-
272
- def verifyPinning2Dn(state: EliminationState) -> None:
273
- colorReset = '\33[0m'
274
- pathFilename: Path = Path(f"/apps/mapFolding/Z0Z_notes/arrayFoldingsP2d{state.dimensionsTotal}.pkl")
275
- arrayFoldings: NDArray[numpy.uint8] = pickle.loads(pathFilename.read_bytes()) # noqa: S301
276
-
277
- rowsTotal: int = int(arrayFoldings.shape[0])
278
- listMasks: list[numpy.ndarray] = []
279
- listDictionaryPinned: list[dict[int, int]] = []
280
- for dictionaryPinned in state.listPinnedLeaves:
281
- maskMatches: numpy.ndarray = numpy.ones(rowsTotal, dtype=bool)
282
- for indexPile, indexLeaf in dictionaryPinned.items():
283
- maskMatches = maskMatches & (arrayFoldings[:, indexPile] == indexLeaf)
284
- if not bool(maskMatches.any()):
285
- # print(f"\33[93m{(dictionaryPinned)}\33[0m")
286
- print(f"\33[93m", end='')
287
- pprint(dictionaryPinned, width=140)
288
- print(colorReset, end='')
289
- listDictionaryPinned.append(dictionaryPinned)
290
- listMasks.append(maskMatches)
291
- print(len(listDictionaryPinned), "surplus dictionaries.")
292
-
293
- maskUnion = numpy.logical_or.reduce(listMasks)
294
- rowsCovered: int = int(maskUnion.sum())
295
- color = colorReset
296
- if rowsCovered < rowsTotal:
297
- color = '\33[91m'
298
- indicesMissingRows: numpy.ndarray = numpy.flatnonzero(~maskUnion)
299
- for indexRow in indicesMissingRows[0:2]:
300
- print(arrayFoldings[indexRow, :])
301
- print(f"{color}Covered rows: {rowsCovered}/{rowsTotal}{colorReset}")
302
-
303
- masksStacked: numpy.ndarray = numpy.column_stack(listMasks)
304
- coverageCountPerRow: numpy.ndarray = masksStacked.sum(axis=1)
305
- indicesOverlappedRows: numpy.ndarray = numpy.nonzero(coverageCountPerRow >= 2)[0]
306
- if indicesOverlappedRows.size > 0:
307
- overlappingIndices: set[int] = set()
308
- for indexMask, mask in enumerate(listMasks):
309
- if bool(mask[indicesOverlappedRows].any()):
310
- overlappingIndices.add(indexMask)
311
- for indexDictionary in sorted(overlappingIndices):
312
- print("Overlapping", state.listPinnedLeaves[indexDictionary])
313
-
314
- def printStatisticsPermutations(state: EliminationState) -> None:
315
- dictionaryAddends4Next: dict[int, list[int]] = getDictionaryAddends4Next(state)
316
- permutationsTotal: Callable[[dict[int, list[int]]], int] = compose(prod, filter(None), dict[int, list[int]].values, valmap(len))
317
- permutationsPinnedLeaves: Callable[[dict[int, int]], int] = compose(permutationsTotal, lambda pinnedLeaves: dissoc(dictionaryAddends4Next, *pinnedLeaves.keys())) # pyright: ignore[reportUnknownLambdaType, reportUnknownArgumentType, reportUnknownMemberType]
318
- permutationsPinnedLeavesTotal: Callable[[list[dict[int, int]]], int] = compose(sum, toolz_map(permutationsPinnedLeaves))
319
-
320
- print(fac(state.leavesTotal))
321
- print(permutationsTotal(dictionaryAddends4Next))
322
- print(permutationsPinnedLeavesTotal(state.listPinnedLeaves))
323
-
@@ -1,112 +0,0 @@
1
- easyRun/NOTcountingFolds.py,sha256=G7_B2ovn7f-9C11KJvtAWpcrcJUbicl5nbHXr2_b-HE,1534
2
- easyRun/__init__.py,sha256=NUCOesaiyJCAmOif1-vCtb33PrZ_ve6M1npWovmlNbA,69
3
- easyRun/countFolds.py,sha256=UvKmTZ9W9nPhEw9mXBDbHzp75mPx2u5-tjnHMKPPOD8,1604
4
- easyRun/eliminateFolds.py,sha256=RplMvUWYXlhTwjTeXRPRcw2PFl6F38809jBcQ7Y6Jbs,1725
5
- easyRun/generateAllModules.py,sha256=xsXFs0BwQ_O5m5rqMjhgMOZ3lj9ssmc3Qdxazp7_uAI,622
6
- easyRun/meanders.py,sha256=Npcq5RL7WR6mFEZYlHLaUzedULbQxkGT8i7ydbH8DCA,1827
7
- mapFolding/__init__.py,sha256=MtP7tg4GCX2aHjdNLN7tMCSpvDfWduU3Ow3WmJR_GTU,1971
8
- mapFolding/_theSSOT.py,sha256=QuyDsMCbqv3Au4RUgdYPcyR89JrT9WkzcauzybpgKzU,5384
9
- mapFolding/_theTypes.py,sha256=z50MjKlFVkXjQtvne61kTLNquY1Q7VRoD4j8VaVs_TQ,7375
10
- mapFolding/basecamp.py,sha256=EBYPNwmFGlj0cdIpzj30Q90Tgn8uCxPxsTzhQy4xsE4,18645
11
- mapFolding/beDRY.py,sha256=cGiPo-Sxt6u1ijq0CUiqo2luaBQxrPGIIyO-M0B_Y7M,13230
12
- mapFolding/dataBaskets.py,sha256=0t1qtA2XxYw4WFIo2Sn60nraW38gPI0jTC41qm9Ci7w,29161
13
- mapFolding/filesystemToolkit.py,sha256=ic69Y043xrdoFjKqiB0YJ6Zp8oosBWwdXi_hmg79PVs,10134
14
- mapFolding/oeis.py,sha256=2sqdFgYguB4sDpcYGYB_mJL57k9sHs7FUXF05pvIEak,17300
15
- mapFolding/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- mapFolding/algorithms/A086345.py,sha256=YCd3WB6jnTLu31_ty8P9EuC3ciLm2vxUzZToqA6QPn4,2629
17
- mapFolding/algorithms/__init__.py,sha256=CvDJ0LjZ6f0XGFFVrhjo-2PwuybL325yTng3LBiLlX8,41
18
- mapFolding/algorithms/constraintPropagation.py,sha256=VyTI-ibcslkydW46ulzmioRRSIHppYRCCzleV4y6j2Q,9504
19
- mapFolding/algorithms/daoOfMapFolding.py,sha256=ncTIiBfTsM8SNVx9qefZ0bBcBtviWLSk4iPv3Z9nGiE,5442
20
- mapFolding/algorithms/elimination.py,sha256=45361Q2pOv-uIgUgrqkfOoYspPyUE-Zy65OjUwxzW28,6678
21
- mapFolding/algorithms/eliminationCount.py,sha256=HRIsn9rpxNUkjwIMHDVl778gSMwabUFzvT4MWbRm5_s,1393
22
- mapFolding/algorithms/eliminationPinned.py,sha256=6hd5eC0Ji_r9jCBJ0XUCkUvM28UExOv4-xEuPutSOL4,1375
23
- mapFolding/algorithms/iff.py,sha256=zX1abnAdhLP8GLcJeq3N1torjpc-UYcKBAgqN2wVgNE,11983
24
- mapFolding/algorithms/matrixMeanders.py,sha256=g8h9sF1emt5OQCXe3EVA_g0FdhvNu7Wo1FI4kMFsqZY,5167
25
- mapFolding/algorithms/matrixMeandersNumPyndas.py,sha256=giCqLNnxu4RbGERtyAJb5mbvMd1ZbzLR_EoRiEjCXUY,39140
26
- mapFolding/algorithms/oeisIDbyFormula.py,sha256=jinaLXJb3annODlyidtNZkKIKUuFKp_yzjEZMHSMhQ0,11782
27
- mapFolding/algorithms/patternFinder.py,sha256=XFFiedthujE4GhwYs-yp1iYqy6VGca9yDEUWOzf1oow,12706
28
- mapFolding/algorithms/pinning2Dn.py,sha256=A7q3aSdaw9eZl2VVIo9j37oE3AjC3V0gxdj7gvkFv50,18116
29
- mapFolding/algorithms/pinning2DnAnnex.py,sha256=4BmYycPw8VPMPgfMdcCQ0FfR923i3H0YUWSHoWt8VnA,1953
30
- mapFolding/algorithms/symmetricFolds.py,sha256=g_3Xm3UQ4KwduDdsQJPwQxrIXdBmBjei2_idsLgIIZQ,1200
31
- mapFolding/algorithms/zCuzDocStoopidoeisIDbyFormula.py,sha256=eGf_gvHUuHAPFFQZd3NIaozY2sQUGse_njtZ8_AyZ-U,2438
32
- mapFolding/reference/A000682facts.py,sha256=wRg5uy72M-o-cYEF3waCa7NjTUZ3XOoD9dmkTaUiH0o,23510
33
- mapFolding/reference/A005316facts.py,sha256=Cg2Pqtv3Dnk8IZOqer8Wu3Ie2uwJV_M0Kmr6_QXjKuQ,11768
34
- mapFolding/reference/A086345Wu.py,sha256=3FJlvcVkrQL2hz4IN2NdzmdMW0weWfYh9l1pnXBTQnc,1110
35
- mapFolding/reference/__init__.py,sha256=GKcSgYE49NcTISx-JZbELXyq-eRkMeTL5g4DXInWFw0,2206
36
- mapFolding/reference/flattened.py,sha256=0eHgLFIeIeVUsI5zF5oSy5iWYrjOMzxr7KjDxiTe01k,16078
37
- mapFolding/reference/hunterNumba.py,sha256=iLfyqwGdAh6c5GbapnKsWhAsNsR3O-fyGGHAdohluLw,7258
38
- mapFolding/reference/irvineJavaPort.py,sha256=GcnFazAClLsgh4JoO1n-iCtO5aSKJB0SMsKu3RCV--4,3721
39
- mapFolding/reference/jaxCount.py,sha256=t8ons45zyWNJQ-nmn1qbhNsTkTnRzf7ATauaYvIlkRI,14853
40
- mapFolding/reference/lunnonNumpy.py,sha256=mMgrgbrBpe4nmo72ThEI-MGH0OwEHmfMPczSXHp2qKo,4357
41
- mapFolding/reference/lunnonWhile.py,sha256=ZL8GAQtPs5nJZSgoDl5USrLSS_zs03y98y1Z9E4jOmQ,3799
42
- mapFolding/reference/rotatedEntryPoint.py,sha256=3IJU7Hc2PDSE71wmSkDs4Z3t0Px9NBSzmCsVrgQuQyU,10274
43
- mapFolding/reference/total_countPlus1vsPlusN.py,sha256=yJZAVLVdoXqHag2_N6_6CT-Q6HXBgRro-eny93-Rlpw,9307
44
- mapFolding/reference/jobsCompleted/__init__.py,sha256=TU93ZGUW1xEkT6d9mQFn_rp5DvRy0ZslEB2Q6MF5ZDc,2596
45
- mapFolding/reference/jobsCompleted/[2x19]/p2x19.py,sha256=_tvYtfzMWVo2VtUbIAieoscb4N8FFflgTdW4-ljBUuA,19626
46
- mapFolding/reference/jobsCompleted/p2x19/p2x19.py,sha256=eZEw4Me4ocTt6VXoK2-Sbd5SowZtxRIbN9dZmc7OCVg,6395
47
- mapFolding/reference/matrixMeandersAnalysis/__init__.py,sha256=FQbR63_z3_zd3HMrpUxx3_YIcn9znzA0RIggcMntSC8,35
48
- mapFolding/reference/matrixMeandersAnalysis/prefixNotationNotes.py,sha256=R9MUdS0vLEyaVdCio2AAfxEpBz6FDp7cZotEE47nFdU,1001
49
- mapFolding/reference/matrixMeandersAnalysis/signatures.py,sha256=6yHwW22032ysBgoG9LXxUyvWlKjQgxpB-f8lI213YZ0,20677
50
- mapFolding/reference/meandersDumpingGround/A005316JavaPort.py,sha256=syMHicfioP-0GrOq7GnEpuAFSNvRwnbGim0mqV862sA,4885
51
- mapFolding/reference/meandersDumpingGround/A005316imperative.py,sha256=UEbXPkORngVo0UrwS81SY2gwz1XWAaMZ0rgA7HMiVYk,3793
52
- mapFolding/reference/meandersDumpingGround/A005316primitiveOptimized.py,sha256=iFig6Edv1E774xrlVUFLyscC40DqDhV-oh4hOnG2DLI,4116
53
- mapFolding/reference/meandersDumpingGround/A005316redis.py,sha256=MPeiobrs3VsNZOOKYBg52oVp0OjVDzLEdsRKfrZ9LrU,4328
54
- mapFolding/reference/meandersDumpingGround/A005316write2disk.py,sha256=NMVrdhe5KhnXQfaQ5Xr7Pwl5oXYEOM1DrMISDDOCVVw,5633
55
- mapFolding/reference/meandersDumpingGround/matrixMeanders64retired.py,sha256=oRVgf6zkWRjk7dWR-Px41M_5spdvKy_Pich0qd7oxVA,9270
56
- mapFolding/reference/meandersDumpingGround/matrixMeandersBaselineV2.py,sha256=VpRiIGhnk-DbxwsHwCeCwXqcKLSNyHl-iRGLDH9ZGMY,7674
57
- mapFolding/reference/meandersDumpingGround/matrixMeandersNumPyV1finalForm.py,sha256=yMEF8GIz_1lMMkJiMk-5lek9TAAoqEzfkMbQP80dC_Y,24425
58
- mapFolding/reference/meandersDumpingGround/matrixMeandersSlicePop.py,sha256=XyiesSQAH1dRplYx_CdR1FzcXvgmmxzj27V4aIqPp7o,5353
59
- mapFolding/someAssemblyRequired/RecipeJob.py,sha256=8sIRcgP8yFeUplw4GgR5eN8CwVK1ELXPU2xaC2UCLvY,13102
60
- mapFolding/someAssemblyRequired/__init__.py,sha256=tDDYGBKNhZgcVXZIW-HnUeyXAMdURTOKandc59dUZ7s,5835
61
- mapFolding/someAssemblyRequired/_toolIfThis.py,sha256=QC2cmCea18BZ_WpoWoErYCWhROvmd40_i_nBO7YFRaE,6378
62
- mapFolding/someAssemblyRequired/_toolkitContainers.py,sha256=r2Ll4ZW6dz_EDPW2IViYKggsNYbB5L0JfHLbcxXq7EI,14884
63
- mapFolding/someAssemblyRequired/getLLVMforNoReason.py,sha256=tY0-2K0BFkwLAAjSrFJLPoG8CevDHOFc3OH3TxXANzg,2806
64
- mapFolding/someAssemblyRequired/infoBooth.py,sha256=nkuBBb_owBCQijqum98QzeKjoIsFrHB5-1pIWObcH0E,2446
65
- mapFolding/someAssemblyRequired/makeJobTheorem2Numba.py,sha256=z_hXGdl6WbgTZXEKUWZ0FJ9yVfRxXhZyqzgbsLXD9Z4,18189
66
- mapFolding/someAssemblyRequired/makeJobTheorem2codon.py,sha256=Y51NC5LkdieIjcCyVdeAaXrJzjYKfzNJlRZmlSSGDqk,10133
67
- mapFolding/someAssemblyRequired/makingModules_count.py,sha256=qudUryuwExzD92_o14OaDg8_Gy3NaHDXLCGttG8hrNI,15068
68
- mapFolding/someAssemblyRequired/makingModules_doTheNeedful.py,sha256=jp3OmAcTXifxL2XH3AfIMK30nE6Vg9kTCiSDLcUoSEI,3277
69
- mapFolding/someAssemblyRequired/toolkitMakeModules.py,sha256=wdu-DBdevmoZKc8icl-lzDQ-q0-0iIbligwNYyMztcY,6854
70
- mapFolding/someAssemblyRequired/toolkitNumba.py,sha256=ABmNjqMfDlUbHfo69eSoFzJRKPe3pkSrfd4YIeGFYdY,14947
71
- mapFolding/someAssemblyRequired/transformationTools.py,sha256=mJgJGuPI7FcTnc_tPJv1x_BuDtEvXpYuFCS-Mv-tKIw,11581
72
- mapFolding/someAssemblyRequired/A007822/A007822rawMaterials.py,sha256=HbnYk4th5p_jCJI-WzIED8a35JZSLVpecZyTaSIfKXM,1609
73
- mapFolding/someAssemblyRequired/A007822/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
- mapFolding/someAssemblyRequired/A007822/_asynchronousAnnex.py,sha256=eGZrTkNWlMXgzMx86IQJk7-QH7UwYoBHXFfMZ_MYL6E,1727
75
- mapFolding/someAssemblyRequired/A007822/makeA007822AsynchronousModules.py,sha256=qnLLG-uN6KMKxYCOrNsyDET6aYkT8HLXYuzYrK2vfTo,5621
76
- mapFolding/someAssemblyRequired/A007822/makeA007822Modules.py,sha256=qDQDd_mT40Di56-Dg1iYoFiMXzbcupkF81T3CUAPboE,5193
77
- mapFolding/someAssemblyRequired/mapFoldingModules/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
78
- mapFolding/someAssemblyRequired/mapFoldingModules/makeMapFoldingModules.py,sha256=braLUATAOUlsJyaVBQnLCSGDYAbwfS7UOkLd4BFhxbM,16355
79
- mapFolding/someAssemblyRequired/meanders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
80
- mapFolding/someAssemblyRequired/meanders/makeMeandersModules.py,sha256=fvIXxxJ6DLfsxgcOMJsht8_JxdbAKfltgQgA3PsYeBM,3444
81
- mapFolding/syntheticModules/__init__.py,sha256=evVFqhCGa-WZKDiLcnQWjs-Bj34eRnfSLqz_d7dFYZY,83
82
- mapFolding/syntheticModules/countParallelNumba.py,sha256=_-OoZ07-5oC3WeB603tXUGT9c9-kmsDVtcluMTM8y1U,7784
83
- mapFolding/syntheticModules/daoOfMapFoldingNumba.py,sha256=OYaMwdyFzlll0OYlUwxQSvyLHgI4QzkDGkCPen1TFJ4,5946
84
- mapFolding/syntheticModules/initializeState.py,sha256=54kXfjv6Fqv-yQij13736ixDcVzdMIakwlBqd_kN8mw,3122
85
- mapFolding/syntheticModules/theorem2.py,sha256=QabuLPZ1q0_fK0lkNs1b2QqBbokUkUYGazoK-UF4ssM,3263
86
- mapFolding/syntheticModules/theorem2Numba.py,sha256=WtEXVExU_ipBwSgztZCPjDayzmL4xd1AecIGenqX1o0,5656
87
- mapFolding/syntheticModules/theorem2Trimmed.py,sha256=6vOlPYom9XsMyjyu8vIe9pvWbTlfpyow60x3iBvx8Ek,2931
88
- mapFolding/syntheticModules/A007822/__init__.py,sha256=evVFqhCGa-WZKDiLcnQWjs-Bj34eRnfSLqz_d7dFYZY,83
89
- mapFolding/syntheticModules/A007822/algorithm.py,sha256=rgdABvNKUVtHokn6IwDF_8-FdYsOUNka-rgK-v8PPXU,7020
90
- mapFolding/syntheticModules/A007822/asynchronous.py,sha256=cHkhBTW4bjXbv1wGijZcjyps9KRNBHBgyq39-ZsvqrY,8523
91
- mapFolding/syntheticModules/A007822/initializeState.py,sha256=is2AwFWZbTq1rHKRMSJN5pzAlMWu2dLgjw8o9nZwbvk,4059
92
- mapFolding/syntheticModules/A007822/theorem2.py,sha256=hciTpia3zUZJfl0EqNvn7Sz3PGxPLNczST7fXWzz-JU,4216
93
- mapFolding/syntheticModules/A007822/theorem2Numba.py,sha256=XyhYEVIl0Dyeu7sgtBDGMTOSZurQJyep1TlHYYdt3Hw,6932
94
- mapFolding/syntheticModules/A007822/theorem2Trimmed.py,sha256=kZgAK2qka_xoC7H9UiLef0mrG31WRK4Hte2Nf4HiCuI,3884
95
- mapFolding/syntheticModules/meanders/__init__.py,sha256=evVFqhCGa-WZKDiLcnQWjs-Bj34eRnfSLqz_d7dFYZY,83
96
- mapFolding/syntheticModules/meanders/bigInt.py,sha256=He9Ty9XPQFyt33Ye-LQA2WbaQFRkGpG7SDL9m7IlTA0,4213
97
- mapFolding/tests/__init__.py,sha256=QVCHSMFVvTxV3mAyYOLkMFAFyBJ514zdoVnDmpBJnTo,1336
98
- mapFolding/tests/conftest.py,sha256=yyd-8kC2GCC0iVGE2jWElIr2YfLg988m_Ve1nLT-W14,15711
99
- mapFolding/tests/test_computations.py,sha256=64aBHsKsLKlhcUKP7djeGA0pQimWV4IT8a--5Ofbd9U,9512
100
- mapFolding/tests/test_filesystem.py,sha256=0rYQ62f4e3HOoymXrxDWbqNEBJQ7DGN8RUOMI84tE2Q,3892
101
- mapFolding/tests/test_oeis.py,sha256=M4Fb0e4_h9QTX9Oy6l5-M1UQfNqeonoGVOn0DJI9huE,4854
102
- mapFolding/tests/test_other.py,sha256=ScBiJ78LnyAaW-RhxcouX6Xw10wgpSdqfvT4LO3WjnQ,4766
103
- mapFolding/tests/test_tasks.py,sha256=_pr9JRWjjNKA7sww70XvkJJdGPruBVzubM63RmD_Du0,4013
104
- mapFolding/tests/verify.py,sha256=QywpxNNQWyFZX9TQPK0w-gCqVBDG5uFkM6_7z2DaDRE,11274
105
- mapFolding/zCuzDocStoopid/__init__.py,sha256=uKcGXsaYKH9kQUGHjaY0EtWtU6qybb9Fs09ZYKEFMNs,236
106
- mapFolding/zCuzDocStoopid/makeDocstrings.py,sha256=cQl-B-RlAkFijATUTWfKCael46foH-ZsOp1EHoYxoGs,3212
107
- mapfolding-0.17.1.dist-info/licenses/LICENSE,sha256=NxH5Y8BdC-gNU-WSMwim3uMbID2iNDXJz7fHtuTdXhk,19346
108
- mapfolding-0.17.1.dist-info/METADATA,sha256=tnb9AIshFyDSa7oeRf4nQZ9vfUdafYT_4fJYWO2BapY,7837
109
- mapfolding-0.17.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
110
- mapfolding-0.17.1.dist-info/entry_points.txt,sha256=-mH9DjW9tDRMPaeoSWKKywG35cR28m12H_jtmrB4eY8,98
111
- mapfolding-0.17.1.dist-info/top_level.txt,sha256=jNj7ccwEy_9uqs0hsQCO_rPXgaGn8-IMqXePQN6nZTY,19
112
- mapfolding-0.17.1.dist-info/RECORD,,