quantum-spherifier 1.0.0

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 (747) hide show
  1. package/.env.example +37 -0
  2. package/LICENSE +21 -0
  3. package/README.md +738 -0
  4. package/config/default.json +83 -0
  5. package/config/production.json +31 -0
  6. package/docker/Dockerfile +37 -0
  7. package/docker/docker-compose.yml +25 -0
  8. package/docs/architecture.md +160 -0
  9. package/docs/qspherifier.jpg +0 -0
  10. package/package.json +128 -0
  11. package/plugins/example-plugin.js +44 -0
  12. package/research/INDEX.md +37 -0
  13. package/research/cross_refs/.gitkeep +0 -0
  14. package/research/designs/.gitkeep +0 -0
  15. package/research/hypotheses/.gitkeep +0 -0
  16. package/research/hypotheses/new_qubit_modalities/doc_0035ce8c/main.md +60 -0
  17. package/research/hypotheses/new_qubit_modalities/doc_0035ce8c/manifest.json +139 -0
  18. package/research/hypotheses/new_qubit_modalities/doc_005f1a09/main.md +63 -0
  19. package/research/hypotheses/new_qubit_modalities/doc_005f1a09/manifest.json +143 -0
  20. package/research/hypotheses/new_qubit_modalities/doc_05f0ed46/main.md +61 -0
  21. package/research/hypotheses/new_qubit_modalities/doc_05f0ed46/manifest.json +136 -0
  22. package/research/hypotheses/new_qubit_modalities/doc_05fd0eb1/main.md +60 -0
  23. package/research/hypotheses/new_qubit_modalities/doc_05fd0eb1/manifest.json +139 -0
  24. package/research/hypotheses/new_qubit_modalities/doc_0705eed0/main.md +60 -0
  25. package/research/hypotheses/new_qubit_modalities/doc_0705eed0/manifest.json +139 -0
  26. package/research/hypotheses/new_qubit_modalities/doc_07aff3d1/main.md +59 -0
  27. package/research/hypotheses/new_qubit_modalities/doc_07aff3d1/manifest.json +128 -0
  28. package/research/hypotheses/new_qubit_modalities/doc_0894efe7/main.md +60 -0
  29. package/research/hypotheses/new_qubit_modalities/doc_0894efe7/manifest.json +139 -0
  30. package/research/hypotheses/new_qubit_modalities/doc_08e086ad/main.md +59 -0
  31. package/research/hypotheses/new_qubit_modalities/doc_08e086ad/manifest.json +128 -0
  32. package/research/hypotheses/new_qubit_modalities/doc_0929ce83/main.md +60 -0
  33. package/research/hypotheses/new_qubit_modalities/doc_0929ce83/manifest.json +119 -0
  34. package/research/hypotheses/new_qubit_modalities/doc_0b51b472/main.md +61 -0
  35. package/research/hypotheses/new_qubit_modalities/doc_0b51b472/manifest.json +131 -0
  36. package/research/hypotheses/new_qubit_modalities/doc_0cfcfcbe/main.md +60 -0
  37. package/research/hypotheses/new_qubit_modalities/doc_0cfcfcbe/manifest.json +139 -0
  38. package/research/hypotheses/new_qubit_modalities/doc_0d9f04a2/main.md +60 -0
  39. package/research/hypotheses/new_qubit_modalities/doc_0d9f04a2/manifest.json +139 -0
  40. package/research/hypotheses/new_qubit_modalities/doc_0f665487/main.md +62 -0
  41. package/research/hypotheses/new_qubit_modalities/doc_0f665487/manifest.json +146 -0
  42. package/research/hypotheses/new_qubit_modalities/doc_11a00531/main.md +61 -0
  43. package/research/hypotheses/new_qubit_modalities/doc_11a00531/manifest.json +136 -0
  44. package/research/hypotheses/new_qubit_modalities/doc_12507df9/main.md +62 -0
  45. package/research/hypotheses/new_qubit_modalities/doc_12507df9/manifest.json +146 -0
  46. package/research/hypotheses/new_qubit_modalities/doc_14edc7a7/main.md +61 -0
  47. package/research/hypotheses/new_qubit_modalities/doc_14edc7a7/manifest.json +136 -0
  48. package/research/hypotheses/new_qubit_modalities/doc_17dce1f5/main.md +60 -0
  49. package/research/hypotheses/new_qubit_modalities/doc_17dce1f5/manifest.json +139 -0
  50. package/research/hypotheses/new_qubit_modalities/doc_18a79edc/main.md +59 -0
  51. package/research/hypotheses/new_qubit_modalities/doc_18a79edc/manifest.json +133 -0
  52. package/research/hypotheses/new_qubit_modalities/doc_18b76f8b/main.md +59 -0
  53. package/research/hypotheses/new_qubit_modalities/doc_18b76f8b/manifest.json +133 -0
  54. package/research/hypotheses/new_qubit_modalities/doc_1d8b27dd/main.md +59 -0
  55. package/research/hypotheses/new_qubit_modalities/doc_1d8b27dd/manifest.json +133 -0
  56. package/research/hypotheses/new_qubit_modalities/doc_1e746572/main.md +60 -0
  57. package/research/hypotheses/new_qubit_modalities/doc_1e746572/manifest.json +139 -0
  58. package/research/hypotheses/new_qubit_modalities/doc_1f409f63/main.md +60 -0
  59. package/research/hypotheses/new_qubit_modalities/doc_1f409f63/manifest.json +139 -0
  60. package/research/hypotheses/new_qubit_modalities/doc_1fb93b3c/main.md +59 -0
  61. package/research/hypotheses/new_qubit_modalities/doc_1fb93b3c/manifest.json +118 -0
  62. package/research/hypotheses/new_qubit_modalities/doc_2014700e/main.md +59 -0
  63. package/research/hypotheses/new_qubit_modalities/doc_2014700e/manifest.json +118 -0
  64. package/research/hypotheses/new_qubit_modalities/doc_21d9499b/main.md +59 -0
  65. package/research/hypotheses/new_qubit_modalities/doc_21d9499b/manifest.json +133 -0
  66. package/research/hypotheses/new_qubit_modalities/doc_22744a09/main.md +60 -0
  67. package/research/hypotheses/new_qubit_modalities/doc_22744a09/manifest.json +139 -0
  68. package/research/hypotheses/new_qubit_modalities/doc_25a11cb2/main.md +59 -0
  69. package/research/hypotheses/new_qubit_modalities/doc_25a11cb2/manifest.json +128 -0
  70. package/research/hypotheses/new_qubit_modalities/doc_26180f52/main.md +60 -0
  71. package/research/hypotheses/new_qubit_modalities/doc_26180f52/manifest.json +139 -0
  72. package/research/hypotheses/new_qubit_modalities/doc_264f31a7/main.md +59 -0
  73. package/research/hypotheses/new_qubit_modalities/doc_264f31a7/manifest.json +133 -0
  74. package/research/hypotheses/new_qubit_modalities/doc_273d88b1/main.md +61 -0
  75. package/research/hypotheses/new_qubit_modalities/doc_273d88b1/manifest.json +140 -0
  76. package/research/hypotheses/new_qubit_modalities/doc_27b9d2bc/main.md +61 -0
  77. package/research/hypotheses/new_qubit_modalities/doc_27b9d2bc/manifest.json +136 -0
  78. package/research/hypotheses/new_qubit_modalities/doc_2942ef20/main.md +59 -0
  79. package/research/hypotheses/new_qubit_modalities/doc_2942ef20/manifest.json +133 -0
  80. package/research/hypotheses/new_qubit_modalities/doc_2babdd5a/main.md +62 -0
  81. package/research/hypotheses/new_qubit_modalities/doc_2babdd5a/manifest.json +146 -0
  82. package/research/hypotheses/new_qubit_modalities/doc_2bb39428/main.md +59 -0
  83. package/research/hypotheses/new_qubit_modalities/doc_2bb39428/manifest.json +128 -0
  84. package/research/hypotheses/new_qubit_modalities/doc_2e1771dc/main.md +60 -0
  85. package/research/hypotheses/new_qubit_modalities/doc_2e1771dc/manifest.json +139 -0
  86. package/research/hypotheses/new_qubit_modalities/doc_2f6e27eb/main.md +60 -0
  87. package/research/hypotheses/new_qubit_modalities/doc_2f6e27eb/manifest.json +139 -0
  88. package/research/hypotheses/new_qubit_modalities/doc_2ff8c87a/main.md +59 -0
  89. package/research/hypotheses/new_qubit_modalities/doc_2ff8c87a/manifest.json +133 -0
  90. package/research/hypotheses/new_qubit_modalities/doc_311003a4/main.md +59 -0
  91. package/research/hypotheses/new_qubit_modalities/doc_311003a4/manifest.json +133 -0
  92. package/research/hypotheses/new_qubit_modalities/doc_329910b6/main.md +59 -0
  93. package/research/hypotheses/new_qubit_modalities/doc_329910b6/manifest.json +128 -0
  94. package/research/hypotheses/new_qubit_modalities/doc_32b3ea58/main.md +61 -0
  95. package/research/hypotheses/new_qubit_modalities/doc_32b3ea58/manifest.json +136 -0
  96. package/research/hypotheses/new_qubit_modalities/doc_354b23cb/main.md +59 -0
  97. package/research/hypotheses/new_qubit_modalities/doc_354b23cb/manifest.json +128 -0
  98. package/research/hypotheses/new_qubit_modalities/doc_3630eed6/main.md +60 -0
  99. package/research/hypotheses/new_qubit_modalities/doc_3630eed6/manifest.json +113 -0
  100. package/research/hypotheses/new_qubit_modalities/doc_37ca8f04/main.md +60 -0
  101. package/research/hypotheses/new_qubit_modalities/doc_37ca8f04/manifest.json +139 -0
  102. package/research/hypotheses/new_qubit_modalities/doc_3a8f0c5e/main.md +59 -0
  103. package/research/hypotheses/new_qubit_modalities/doc_3a8f0c5e/manifest.json +133 -0
  104. package/research/hypotheses/new_qubit_modalities/doc_3d55724e/main.md +59 -0
  105. package/research/hypotheses/new_qubit_modalities/doc_3d55724e/manifest.json +128 -0
  106. package/research/hypotheses/new_qubit_modalities/doc_3e27ad06/main.md +59 -0
  107. package/research/hypotheses/new_qubit_modalities/doc_3e27ad06/manifest.json +108 -0
  108. package/research/hypotheses/new_qubit_modalities/doc_401a8bad/main.md +59 -0
  109. package/research/hypotheses/new_qubit_modalities/doc_401a8bad/manifest.json +128 -0
  110. package/research/hypotheses/new_qubit_modalities/doc_40f8352b/main.md +60 -0
  111. package/research/hypotheses/new_qubit_modalities/doc_40f8352b/manifest.json +139 -0
  112. package/research/hypotheses/new_qubit_modalities/doc_4331dcfd/main.md +60 -0
  113. package/research/hypotheses/new_qubit_modalities/doc_4331dcfd/manifest.json +139 -0
  114. package/research/hypotheses/new_qubit_modalities/doc_4337cbdc/main.md +59 -0
  115. package/research/hypotheses/new_qubit_modalities/doc_4337cbdc/manifest.json +133 -0
  116. package/research/hypotheses/new_qubit_modalities/doc_45d2acc5/main.md +60 -0
  117. package/research/hypotheses/new_qubit_modalities/doc_45d2acc5/manifest.json +139 -0
  118. package/research/hypotheses/new_qubit_modalities/doc_45d39a5f/main.md +60 -0
  119. package/research/hypotheses/new_qubit_modalities/doc_45d39a5f/manifest.json +139 -0
  120. package/research/hypotheses/new_qubit_modalities/doc_4ed900da/main.md +59 -0
  121. package/research/hypotheses/new_qubit_modalities/doc_4ed900da/manifest.json +133 -0
  122. package/research/hypotheses/new_qubit_modalities/doc_525bf00e/main.md +59 -0
  123. package/research/hypotheses/new_qubit_modalities/doc_525bf00e/manifest.json +128 -0
  124. package/research/hypotheses/new_qubit_modalities/doc_54035ce1/main.md +61 -0
  125. package/research/hypotheses/new_qubit_modalities/doc_54035ce1/manifest.json +136 -0
  126. package/research/hypotheses/new_qubit_modalities/doc_552565a2/main.md +60 -0
  127. package/research/hypotheses/new_qubit_modalities/doc_552565a2/manifest.json +139 -0
  128. package/research/hypotheses/new_qubit_modalities/doc_5652c681/main.md +59 -0
  129. package/research/hypotheses/new_qubit_modalities/doc_5652c681/manifest.json +128 -0
  130. package/research/hypotheses/new_qubit_modalities/doc_59b3863c/main.md +61 -0
  131. package/research/hypotheses/new_qubit_modalities/doc_59b3863c/manifest.json +136 -0
  132. package/research/hypotheses/new_qubit_modalities/doc_5cd7ecd5/main.md +60 -0
  133. package/research/hypotheses/new_qubit_modalities/doc_5cd7ecd5/manifest.json +139 -0
  134. package/research/hypotheses/new_qubit_modalities/doc_5dec51b1/main.md +60 -0
  135. package/research/hypotheses/new_qubit_modalities/doc_5dec51b1/manifest.json +139 -0
  136. package/research/hypotheses/new_qubit_modalities/doc_5e6dc9c1/main.md +60 -0
  137. package/research/hypotheses/new_qubit_modalities/doc_5e6dc9c1/manifest.json +139 -0
  138. package/research/hypotheses/new_qubit_modalities/doc_60cdeb68/main.md +59 -0
  139. package/research/hypotheses/new_qubit_modalities/doc_60cdeb68/manifest.json +128 -0
  140. package/research/hypotheses/new_qubit_modalities/doc_637c1a32/main.md +59 -0
  141. package/research/hypotheses/new_qubit_modalities/doc_637c1a32/manifest.json +128 -0
  142. package/research/hypotheses/new_qubit_modalities/doc_659be8e8/main.md +59 -0
  143. package/research/hypotheses/new_qubit_modalities/doc_659be8e8/manifest.json +128 -0
  144. package/research/hypotheses/new_qubit_modalities/doc_69f47a99/main.md +61 -0
  145. package/research/hypotheses/new_qubit_modalities/doc_69f47a99/manifest.json +136 -0
  146. package/research/hypotheses/new_qubit_modalities/doc_6a06ee6e/main.md +59 -0
  147. package/research/hypotheses/new_qubit_modalities/doc_6a06ee6e/manifest.json +133 -0
  148. package/research/hypotheses/new_qubit_modalities/doc_6c383667/main.md +59 -0
  149. package/research/hypotheses/new_qubit_modalities/doc_6c383667/manifest.json +123 -0
  150. package/research/hypotheses/new_qubit_modalities/doc_788cc9f1/main.md +60 -0
  151. package/research/hypotheses/new_qubit_modalities/doc_788cc9f1/manifest.json +139 -0
  152. package/research/hypotheses/new_qubit_modalities/doc_85cd549d/main.md +60 -0
  153. package/research/hypotheses/new_qubit_modalities/doc_85cd549d/manifest.json +139 -0
  154. package/research/hypotheses/new_qubit_modalities/doc_86023f9a/main.md +59 -0
  155. package/research/hypotheses/new_qubit_modalities/doc_86023f9a/manifest.json +128 -0
  156. package/research/hypotheses/new_qubit_modalities/doc_86c37a8e/main.md +59 -0
  157. package/research/hypotheses/new_qubit_modalities/doc_86c37a8e/manifest.json +128 -0
  158. package/research/hypotheses/new_qubit_modalities/doc_875cb066/main.md +59 -0
  159. package/research/hypotheses/new_qubit_modalities/doc_875cb066/manifest.json +128 -0
  160. package/research/hypotheses/new_qubit_modalities/doc_8a7a0b27/main.md +60 -0
  161. package/research/hypotheses/new_qubit_modalities/doc_8a7a0b27/manifest.json +139 -0
  162. package/research/hypotheses/new_qubit_modalities/doc_8b8c723e/main.md +60 -0
  163. package/research/hypotheses/new_qubit_modalities/doc_8b8c723e/manifest.json +139 -0
  164. package/research/hypotheses/new_qubit_modalities/doc_8c881657/main.md +60 -0
  165. package/research/hypotheses/new_qubit_modalities/doc_8c881657/manifest.json +139 -0
  166. package/research/hypotheses/new_qubit_modalities/doc_8d3bbca1/main.md +59 -0
  167. package/research/hypotheses/new_qubit_modalities/doc_8d3bbca1/manifest.json +128 -0
  168. package/research/hypotheses/new_qubit_modalities/doc_8d45fa02/main.md +60 -0
  169. package/research/hypotheses/new_qubit_modalities/doc_8d45fa02/manifest.json +139 -0
  170. package/research/hypotheses/new_qubit_modalities/doc_8d5389e6/main.md +60 -0
  171. package/research/hypotheses/new_qubit_modalities/doc_8d5389e6/manifest.json +139 -0
  172. package/research/hypotheses/new_qubit_modalities/doc_9288e51d/main.md +59 -0
  173. package/research/hypotheses/new_qubit_modalities/doc_9288e51d/manifest.json +128 -0
  174. package/research/hypotheses/new_qubit_modalities/doc_9bd195fd/main.md +61 -0
  175. package/research/hypotheses/new_qubit_modalities/doc_9bd195fd/manifest.json +136 -0
  176. package/research/hypotheses/new_qubit_modalities/doc_9c000140/main.md +61 -0
  177. package/research/hypotheses/new_qubit_modalities/doc_9c000140/manifest.json +136 -0
  178. package/research/hypotheses/new_qubit_modalities/doc_9c1775b8/main.md +60 -0
  179. package/research/hypotheses/new_qubit_modalities/doc_9c1775b8/manifest.json +139 -0
  180. package/research/hypotheses/new_qubit_modalities/doc_9ea9fbaa/main.md +59 -0
  181. package/research/hypotheses/new_qubit_modalities/doc_9ea9fbaa/manifest.json +128 -0
  182. package/research/hypotheses/new_qubit_modalities/doc_9f34ca4b/main.md +61 -0
  183. package/research/hypotheses/new_qubit_modalities/doc_9f34ca4b/manifest.json +136 -0
  184. package/research/hypotheses/new_qubit_modalities/doc_9fe95a15/main.md +60 -0
  185. package/research/hypotheses/new_qubit_modalities/doc_9fe95a15/manifest.json +139 -0
  186. package/research/hypotheses/new_qubit_modalities/doc_a0b6a004/main.md +59 -0
  187. package/research/hypotheses/new_qubit_modalities/doc_a0b6a004/manifest.json +128 -0
  188. package/research/hypotheses/new_qubit_modalities/doc_a11472f7/main.md +60 -0
  189. package/research/hypotheses/new_qubit_modalities/doc_a11472f7/manifest.json +139 -0
  190. package/research/hypotheses/new_qubit_modalities/doc_a226de32/main.md +60 -0
  191. package/research/hypotheses/new_qubit_modalities/doc_a226de32/manifest.json +139 -0
  192. package/research/hypotheses/new_qubit_modalities/doc_a3ed0beb/main.md +60 -0
  193. package/research/hypotheses/new_qubit_modalities/doc_a3ed0beb/manifest.json +139 -0
  194. package/research/hypotheses/new_qubit_modalities/doc_a49aeac3/main.md +63 -0
  195. package/research/hypotheses/new_qubit_modalities/doc_a49aeac3/manifest.json +143 -0
  196. package/research/hypotheses/new_qubit_modalities/doc_a548aead/main.md +61 -0
  197. package/research/hypotheses/new_qubit_modalities/doc_a548aead/manifest.json +136 -0
  198. package/research/hypotheses/new_qubit_modalities/doc_a94c6b43/main.md +60 -0
  199. package/research/hypotheses/new_qubit_modalities/doc_a94c6b43/manifest.json +139 -0
  200. package/research/hypotheses/new_qubit_modalities/doc_ab2c416b/main.md +61 -0
  201. package/research/hypotheses/new_qubit_modalities/doc_ab2c416b/manifest.json +136 -0
  202. package/research/hypotheses/new_qubit_modalities/doc_ad5b545f/main.md +59 -0
  203. package/research/hypotheses/new_qubit_modalities/doc_ad5b545f/manifest.json +128 -0
  204. package/research/hypotheses/new_qubit_modalities/doc_ae0d0b6f/main.md +61 -0
  205. package/research/hypotheses/new_qubit_modalities/doc_ae0d0b6f/manifest.json +136 -0
  206. package/research/hypotheses/new_qubit_modalities/doc_aeb039af/main.md +59 -0
  207. package/research/hypotheses/new_qubit_modalities/doc_aeb039af/manifest.json +128 -0
  208. package/research/hypotheses/new_qubit_modalities/doc_b5569c01/main.md +59 -0
  209. package/research/hypotheses/new_qubit_modalities/doc_b5569c01/manifest.json +133 -0
  210. package/research/hypotheses/new_qubit_modalities/doc_ba323435/main.md +59 -0
  211. package/research/hypotheses/new_qubit_modalities/doc_ba323435/manifest.json +133 -0
  212. package/research/hypotheses/new_qubit_modalities/doc_be91ffb6/main.md +61 -0
  213. package/research/hypotheses/new_qubit_modalities/doc_be91ffb6/manifest.json +121 -0
  214. package/research/hypotheses/new_qubit_modalities/doc_bfc11573/main.md +61 -0
  215. package/research/hypotheses/new_qubit_modalities/doc_bfc11573/manifest.json +136 -0
  216. package/research/hypotheses/new_qubit_modalities/doc_c01dda61/main.md +61 -0
  217. package/research/hypotheses/new_qubit_modalities/doc_c01dda61/manifest.json +140 -0
  218. package/research/hypotheses/new_qubit_modalities/doc_c40b6bac/main.md +59 -0
  219. package/research/hypotheses/new_qubit_modalities/doc_c40b6bac/manifest.json +133 -0
  220. package/research/hypotheses/new_qubit_modalities/doc_c449abfd/main.md +60 -0
  221. package/research/hypotheses/new_qubit_modalities/doc_c449abfd/manifest.json +139 -0
  222. package/research/hypotheses/new_qubit_modalities/doc_c5286a95/main.md +59 -0
  223. package/research/hypotheses/new_qubit_modalities/doc_c5286a95/manifest.json +123 -0
  224. package/research/hypotheses/new_qubit_modalities/doc_c6232031/main.md +59 -0
  225. package/research/hypotheses/new_qubit_modalities/doc_c6232031/manifest.json +133 -0
  226. package/research/hypotheses/new_qubit_modalities/doc_c8567a48/main.md +59 -0
  227. package/research/hypotheses/new_qubit_modalities/doc_c8567a48/manifest.json +128 -0
  228. package/research/hypotheses/new_qubit_modalities/doc_ca23e08b/main.md +59 -0
  229. package/research/hypotheses/new_qubit_modalities/doc_ca23e08b/manifest.json +128 -0
  230. package/research/hypotheses/new_qubit_modalities/doc_caf7e9d3/main.md +60 -0
  231. package/research/hypotheses/new_qubit_modalities/doc_caf7e9d3/manifest.json +139 -0
  232. package/research/hypotheses/new_qubit_modalities/doc_cbb77c2d/main.md +61 -0
  233. package/research/hypotheses/new_qubit_modalities/doc_cbb77c2d/manifest.json +110 -0
  234. package/research/hypotheses/new_qubit_modalities/doc_cc601d30/main.md +61 -0
  235. package/research/hypotheses/new_qubit_modalities/doc_cc601d30/manifest.json +136 -0
  236. package/research/hypotheses/new_qubit_modalities/doc_ccdd3f14/main.md +61 -0
  237. package/research/hypotheses/new_qubit_modalities/doc_ccdd3f14/manifest.json +136 -0
  238. package/research/hypotheses/new_qubit_modalities/doc_cde08d2e/main.md +60 -0
  239. package/research/hypotheses/new_qubit_modalities/doc_cde08d2e/manifest.json +139 -0
  240. package/research/hypotheses/new_qubit_modalities/doc_ce6a235a/main.md +60 -0
  241. package/research/hypotheses/new_qubit_modalities/doc_ce6a235a/manifest.json +139 -0
  242. package/research/hypotheses/new_qubit_modalities/doc_d093b9ad/main.md +60 -0
  243. package/research/hypotheses/new_qubit_modalities/doc_d093b9ad/manifest.json +139 -0
  244. package/research/hypotheses/new_qubit_modalities/doc_d17719c6/main.md +60 -0
  245. package/research/hypotheses/new_qubit_modalities/doc_d17719c6/manifest.json +139 -0
  246. package/research/hypotheses/new_qubit_modalities/doc_d399eea3/main.md +63 -0
  247. package/research/hypotheses/new_qubit_modalities/doc_d399eea3/manifest.json +143 -0
  248. package/research/hypotheses/new_qubit_modalities/doc_d3d90e51/main.md +60 -0
  249. package/research/hypotheses/new_qubit_modalities/doc_d3d90e51/manifest.json +139 -0
  250. package/research/hypotheses/new_qubit_modalities/doc_d874dc7e/main.md +59 -0
  251. package/research/hypotheses/new_qubit_modalities/doc_d874dc7e/manifest.json +133 -0
  252. package/research/hypotheses/new_qubit_modalities/doc_db98a164/main.md +60 -0
  253. package/research/hypotheses/new_qubit_modalities/doc_db98a164/manifest.json +139 -0
  254. package/research/hypotheses/new_qubit_modalities/doc_dbe2ca8c/main.md +60 -0
  255. package/research/hypotheses/new_qubit_modalities/doc_dbe2ca8c/manifest.json +139 -0
  256. package/research/hypotheses/new_qubit_modalities/doc_dc21205e/main.md +60 -0
  257. package/research/hypotheses/new_qubit_modalities/doc_dc21205e/manifest.json +139 -0
  258. package/research/hypotheses/new_qubit_modalities/doc_e13ae515/main.md +61 -0
  259. package/research/hypotheses/new_qubit_modalities/doc_e13ae515/manifest.json +136 -0
  260. package/research/hypotheses/new_qubit_modalities/doc_e14a007d/main.md +59 -0
  261. package/research/hypotheses/new_qubit_modalities/doc_e14a007d/manifest.json +133 -0
  262. package/research/hypotheses/new_qubit_modalities/doc_e15ccaf5/main.md +61 -0
  263. package/research/hypotheses/new_qubit_modalities/doc_e15ccaf5/manifest.json +116 -0
  264. package/research/hypotheses/new_qubit_modalities/doc_e2d250b7/main.md +60 -0
  265. package/research/hypotheses/new_qubit_modalities/doc_e2d250b7/manifest.json +139 -0
  266. package/research/hypotheses/new_qubit_modalities/doc_e32df689/main.md +59 -0
  267. package/research/hypotheses/new_qubit_modalities/doc_e32df689/manifest.json +133 -0
  268. package/research/hypotheses/new_qubit_modalities/doc_e5b4bedb/main.md +60 -0
  269. package/research/hypotheses/new_qubit_modalities/doc_e5b4bedb/manifest.json +134 -0
  270. package/research/hypotheses/new_qubit_modalities/doc_e72263b3/main.md +60 -0
  271. package/research/hypotheses/new_qubit_modalities/doc_e72263b3/manifest.json +139 -0
  272. package/research/hypotheses/new_qubit_modalities/doc_e855d210/main.md +60 -0
  273. package/research/hypotheses/new_qubit_modalities/doc_e855d210/manifest.json +139 -0
  274. package/research/hypotheses/new_qubit_modalities/doc_ecf6f682/main.md +59 -0
  275. package/research/hypotheses/new_qubit_modalities/doc_ecf6f682/manifest.json +133 -0
  276. package/research/hypotheses/new_qubit_modalities/doc_ed1d25a4/main.md +59 -0
  277. package/research/hypotheses/new_qubit_modalities/doc_ed1d25a4/manifest.json +128 -0
  278. package/research/hypotheses/new_qubit_modalities/doc_f07aa6d9/main.md +62 -0
  279. package/research/hypotheses/new_qubit_modalities/doc_f07aa6d9/manifest.json +146 -0
  280. package/research/hypotheses/new_qubit_modalities/doc_f257c4ba/main.md +59 -0
  281. package/research/hypotheses/new_qubit_modalities/doc_f257c4ba/manifest.json +128 -0
  282. package/research/hypotheses/new_qubit_modalities/doc_f2e20da6/main.md +60 -0
  283. package/research/hypotheses/new_qubit_modalities/doc_f2e20da6/manifest.json +139 -0
  284. package/research/hypotheses/new_qubit_modalities/doc_f34857aa/main.md +60 -0
  285. package/research/hypotheses/new_qubit_modalities/doc_f34857aa/manifest.json +139 -0
  286. package/research/hypotheses/new_qubit_modalities/doc_fae0902f/main.md +62 -0
  287. package/research/hypotheses/new_qubit_modalities/doc_fae0902f/manifest.json +146 -0
  288. package/research/hypotheses/new_qubit_modalities/doc_fbbb63bb/main.md +60 -0
  289. package/research/hypotheses/new_qubit_modalities/doc_fbbb63bb/manifest.json +139 -0
  290. package/research/hypotheses/new_qubit_modalities/doc_fd4cec3b/main.md +61 -0
  291. package/research/hypotheses/new_qubit_modalities/doc_fd4cec3b/manifest.json +136 -0
  292. package/research/hypotheses/new_qubit_modalities/doc_fe713bc9/main.md +59 -0
  293. package/research/hypotheses/new_qubit_modalities/doc_fe713bc9/manifest.json +133 -0
  294. package/research/hypotheses/quantum_algorithms/doc_479d7cf8/main.md +62 -0
  295. package/research/hypotheses/quantum_algorithms/doc_479d7cf8/manifest.json +146 -0
  296. package/research/hypotheses/quantum_algorithms/doc_6dbdd005/main.md +63 -0
  297. package/research/hypotheses/quantum_algorithms/doc_6dbdd005/manifest.json +143 -0
  298. package/research/hypotheses/quantum_algorithms/doc_b862fc72/main.md +61 -0
  299. package/research/hypotheses/quantum_algorithms/doc_b862fc72/manifest.json +140 -0
  300. package/research/hypotheses/quantum_algorithms/doc_cdf33ced/main.md +63 -0
  301. package/research/hypotheses/quantum_algorithms/doc_cdf33ced/manifest.json +143 -0
  302. package/research/hypotheses/quantum_error_correction/doc_3986910a/main.md +61 -0
  303. package/research/hypotheses/quantum_error_correction/doc_3986910a/manifest.json +140 -0
  304. package/research/hypotheses/quantum_error_correction/doc_460e1a25/main.md +61 -0
  305. package/research/hypotheses/quantum_error_correction/doc_460e1a25/manifest.json +140 -0
  306. package/research/hypotheses/quantum_error_correction/doc_4cdf3487/main.md +62 -0
  307. package/research/hypotheses/quantum_error_correction/doc_4cdf3487/manifest.json +131 -0
  308. package/research/hypotheses/quantum_error_correction/doc_55457312/main.md +63 -0
  309. package/research/hypotheses/quantum_error_correction/doc_55457312/manifest.json +143 -0
  310. package/research/hypotheses/quantum_error_correction/doc_562627d3/main.md +62 -0
  311. package/research/hypotheses/quantum_error_correction/doc_562627d3/manifest.json +146 -0
  312. package/research/hypotheses/quantum_error_correction/doc_60af027e/main.md +62 -0
  313. package/research/hypotheses/quantum_error_correction/doc_60af027e/manifest.json +146 -0
  314. package/research/hypotheses/quantum_error_correction/doc_83a8579f/main.md +63 -0
  315. package/research/hypotheses/quantum_error_correction/doc_83a8579f/manifest.json +143 -0
  316. package/research/hypotheses/quantum_error_correction/doc_8ec38dbd/main.md +62 -0
  317. package/research/hypotheses/quantum_error_correction/doc_8ec38dbd/manifest.json +146 -0
  318. package/research/hypotheses/quantum_error_correction/doc_90cb416e/main.md +61 -0
  319. package/research/hypotheses/quantum_error_correction/doc_90cb416e/manifest.json +140 -0
  320. package/research/hypotheses/quantum_error_correction/doc_a40b574c/main.md +62 -0
  321. package/research/hypotheses/quantum_error_correction/doc_a40b574c/manifest.json +146 -0
  322. package/research/hypotheses/quantum_error_correction/doc_b4efacc8/main.md +63 -0
  323. package/research/hypotheses/quantum_error_correction/doc_b4efacc8/manifest.json +143 -0
  324. package/research/hypotheses/quantum_error_correction/doc_ca0d6569/main.md +62 -0
  325. package/research/hypotheses/quantum_error_correction/doc_ca0d6569/manifest.json +146 -0
  326. package/research/hypotheses/quantum_error_correction/doc_d1eb8740/main.md +61 -0
  327. package/research/hypotheses/quantum_error_correction/doc_d1eb8740/manifest.json +140 -0
  328. package/research/hypotheses/quantum_error_correction/doc_e55fcdcf/main.md +62 -0
  329. package/research/hypotheses/quantum_error_correction/doc_e55fcdcf/manifest.json +120 -0
  330. package/research/hypotheses/quantum_error_correction/doc_f227b165/main.md +63 -0
  331. package/research/hypotheses/quantum_error_correction/doc_f227b165/manifest.json +133 -0
  332. package/research/hypotheses/quantum_error_correction/doc_f5f78884/main.md +61 -0
  333. package/research/hypotheses/quantum_error_correction/doc_f5f78884/manifest.json +140 -0
  334. package/research/hypotheses/quantum_error_correction/doc_fdbcc4b0/main.md +61 -0
  335. package/research/hypotheses/quantum_error_correction/doc_fdbcc4b0/manifest.json +140 -0
  336. package/research/indices/patent_queue.md +124 -0
  337. package/research/patents/.gitkeep +0 -0
  338. package/research/patents/new_qubit_modalities/doc_083cce20/main.md +64 -0
  339. package/research/patents/new_qubit_modalities/doc_083cce20/main.tex +68 -0
  340. package/research/patents/new_qubit_modalities/doc_083cce20/manifest.json +144 -0
  341. package/research/patents/new_qubit_modalities/doc_096ccdfa/main.md +64 -0
  342. package/research/patents/new_qubit_modalities/doc_096ccdfa/main.tex +68 -0
  343. package/research/patents/new_qubit_modalities/doc_096ccdfa/manifest.json +145 -0
  344. package/research/patents/new_qubit_modalities/doc_099071ac/main.md +64 -0
  345. package/research/patents/new_qubit_modalities/doc_099071ac/main.tex +68 -0
  346. package/research/patents/new_qubit_modalities/doc_099071ac/manifest.json +145 -0
  347. package/research/patents/new_qubit_modalities/doc_0adeaec6/main.md +64 -0
  348. package/research/patents/new_qubit_modalities/doc_0adeaec6/main.tex +68 -0
  349. package/research/patents/new_qubit_modalities/doc_0adeaec6/manifest.json +145 -0
  350. package/research/patents/new_qubit_modalities/doc_0e4132a8/main.md +64 -0
  351. package/research/patents/new_qubit_modalities/doc_0e4132a8/main.tex +68 -0
  352. package/research/patents/new_qubit_modalities/doc_0e4132a8/manifest.json +145 -0
  353. package/research/patents/new_qubit_modalities/doc_10af60fa/main.md +64 -0
  354. package/research/patents/new_qubit_modalities/doc_10af60fa/main.tex +68 -0
  355. package/research/patents/new_qubit_modalities/doc_10af60fa/manifest.json +145 -0
  356. package/research/patents/new_qubit_modalities/doc_10afe71a/main.md +64 -0
  357. package/research/patents/new_qubit_modalities/doc_10afe71a/main.tex +68 -0
  358. package/research/patents/new_qubit_modalities/doc_10afe71a/manifest.json +145 -0
  359. package/research/patents/new_qubit_modalities/doc_1339dcfa/main.md +64 -0
  360. package/research/patents/new_qubit_modalities/doc_1339dcfa/main.tex +68 -0
  361. package/research/patents/new_qubit_modalities/doc_1339dcfa/manifest.json +145 -0
  362. package/research/patents/new_qubit_modalities/doc_15222e50/main.md +64 -0
  363. package/research/patents/new_qubit_modalities/doc_15222e50/main.tex +68 -0
  364. package/research/patents/new_qubit_modalities/doc_15222e50/manifest.json +145 -0
  365. package/research/patents/new_qubit_modalities/doc_19e3f8ad/main.md +64 -0
  366. package/research/patents/new_qubit_modalities/doc_19e3f8ad/main.tex +68 -0
  367. package/research/patents/new_qubit_modalities/doc_19e3f8ad/manifest.json +144 -0
  368. package/research/patents/new_qubit_modalities/doc_1a5d01f8/main.md +64 -0
  369. package/research/patents/new_qubit_modalities/doc_1a5d01f8/main.tex +68 -0
  370. package/research/patents/new_qubit_modalities/doc_1a5d01f8/manifest.json +145 -0
  371. package/research/patents/new_qubit_modalities/doc_1bd8bb3b/main.md +64 -0
  372. package/research/patents/new_qubit_modalities/doc_1bd8bb3b/main.tex +68 -0
  373. package/research/patents/new_qubit_modalities/doc_1bd8bb3b/manifest.json +145 -0
  374. package/research/patents/new_qubit_modalities/doc_1c7b4dc1/main.md +64 -0
  375. package/research/patents/new_qubit_modalities/doc_1c7b4dc1/main.tex +68 -0
  376. package/research/patents/new_qubit_modalities/doc_1c7b4dc1/manifest.json +145 -0
  377. package/research/patents/new_qubit_modalities/doc_1ce08a7e/main.md +64 -0
  378. package/research/patents/new_qubit_modalities/doc_1ce08a7e/main.tex +68 -0
  379. package/research/patents/new_qubit_modalities/doc_1ce08a7e/manifest.json +130 -0
  380. package/research/patents/new_qubit_modalities/doc_1cecf1a6/main.md +64 -0
  381. package/research/patents/new_qubit_modalities/doc_1cecf1a6/main.tex +68 -0
  382. package/research/patents/new_qubit_modalities/doc_1cecf1a6/manifest.json +145 -0
  383. package/research/patents/new_qubit_modalities/doc_1d9ad900/main.md +64 -0
  384. package/research/patents/new_qubit_modalities/doc_1d9ad900/main.tex +68 -0
  385. package/research/patents/new_qubit_modalities/doc_1d9ad900/manifest.json +144 -0
  386. package/research/patents/new_qubit_modalities/doc_1ec2eda5/main.md +64 -0
  387. package/research/patents/new_qubit_modalities/doc_1ec2eda5/main.tex +68 -0
  388. package/research/patents/new_qubit_modalities/doc_1ec2eda5/manifest.json +145 -0
  389. package/research/patents/new_qubit_modalities/doc_24b05ff7/main.md +64 -0
  390. package/research/patents/new_qubit_modalities/doc_24b05ff7/main.tex +68 -0
  391. package/research/patents/new_qubit_modalities/doc_24b05ff7/manifest.json +145 -0
  392. package/research/patents/new_qubit_modalities/doc_31c650c7/main.md +64 -0
  393. package/research/patents/new_qubit_modalities/doc_31c650c7/main.tex +68 -0
  394. package/research/patents/new_qubit_modalities/doc_31c650c7/manifest.json +144 -0
  395. package/research/patents/new_qubit_modalities/doc_32f4c6cd/main.md +64 -0
  396. package/research/patents/new_qubit_modalities/doc_32f4c6cd/main.tex +68 -0
  397. package/research/patents/new_qubit_modalities/doc_32f4c6cd/manifest.json +145 -0
  398. package/research/patents/new_qubit_modalities/doc_35a33533/main.md +64 -0
  399. package/research/patents/new_qubit_modalities/doc_35a33533/main.tex +68 -0
  400. package/research/patents/new_qubit_modalities/doc_35a33533/manifest.json +145 -0
  401. package/research/patents/new_qubit_modalities/doc_37d39074/main.md +64 -0
  402. package/research/patents/new_qubit_modalities/doc_37d39074/main.tex +68 -0
  403. package/research/patents/new_qubit_modalities/doc_37d39074/manifest.json +144 -0
  404. package/research/patents/new_qubit_modalities/doc_3bf9f16d/main.md +64 -0
  405. package/research/patents/new_qubit_modalities/doc_3bf9f16d/main.tex +68 -0
  406. package/research/patents/new_qubit_modalities/doc_3bf9f16d/manifest.json +145 -0
  407. package/research/patents/new_qubit_modalities/doc_4440d9d5/main.md +64 -0
  408. package/research/patents/new_qubit_modalities/doc_4440d9d5/main.tex +68 -0
  409. package/research/patents/new_qubit_modalities/doc_4440d9d5/manifest.json +130 -0
  410. package/research/patents/new_qubit_modalities/doc_46620281/main.md +64 -0
  411. package/research/patents/new_qubit_modalities/doc_46620281/main.tex +68 -0
  412. package/research/patents/new_qubit_modalities/doc_46620281/manifest.json +145 -0
  413. package/research/patents/new_qubit_modalities/doc_48532723/main.md +64 -0
  414. package/research/patents/new_qubit_modalities/doc_48532723/main.tex +68 -0
  415. package/research/patents/new_qubit_modalities/doc_48532723/manifest.json +145 -0
  416. package/research/patents/new_qubit_modalities/doc_496df511/main.md +64 -0
  417. package/research/patents/new_qubit_modalities/doc_496df511/main.tex +68 -0
  418. package/research/patents/new_qubit_modalities/doc_496df511/manifest.json +145 -0
  419. package/research/patents/new_qubit_modalities/doc_4c89560e/main.md +64 -0
  420. package/research/patents/new_qubit_modalities/doc_4c89560e/main.tex +68 -0
  421. package/research/patents/new_qubit_modalities/doc_4c89560e/manifest.json +145 -0
  422. package/research/patents/new_qubit_modalities/doc_4cea899d/main.md +64 -0
  423. package/research/patents/new_qubit_modalities/doc_4cea899d/main.tex +68 -0
  424. package/research/patents/new_qubit_modalities/doc_4cea899d/manifest.json +145 -0
  425. package/research/patents/new_qubit_modalities/doc_4d2078d6/main.md +64 -0
  426. package/research/patents/new_qubit_modalities/doc_4d2078d6/main.tex +68 -0
  427. package/research/patents/new_qubit_modalities/doc_4d2078d6/manifest.json +145 -0
  428. package/research/patents/new_qubit_modalities/doc_567d30eb/main.md +64 -0
  429. package/research/patents/new_qubit_modalities/doc_567d30eb/main.tex +68 -0
  430. package/research/patents/new_qubit_modalities/doc_567d30eb/manifest.json +144 -0
  431. package/research/patents/new_qubit_modalities/doc_58bc6d20/main.md +64 -0
  432. package/research/patents/new_qubit_modalities/doc_58bc6d20/main.tex +68 -0
  433. package/research/patents/new_qubit_modalities/doc_58bc6d20/manifest.json +145 -0
  434. package/research/patents/new_qubit_modalities/doc_59084437/main.md +64 -0
  435. package/research/patents/new_qubit_modalities/doc_59084437/main.tex +68 -0
  436. package/research/patents/new_qubit_modalities/doc_59084437/manifest.json +144 -0
  437. package/research/patents/new_qubit_modalities/doc_5b665385/main.md +64 -0
  438. package/research/patents/new_qubit_modalities/doc_5b665385/main.tex +68 -0
  439. package/research/patents/new_qubit_modalities/doc_5b665385/manifest.json +144 -0
  440. package/research/patents/new_qubit_modalities/doc_5f6eb22e/main.md +64 -0
  441. package/research/patents/new_qubit_modalities/doc_5f6eb22e/main.tex +68 -0
  442. package/research/patents/new_qubit_modalities/doc_5f6eb22e/manifest.json +144 -0
  443. package/research/patents/new_qubit_modalities/doc_61841835/main.md +64 -0
  444. package/research/patents/new_qubit_modalities/doc_61841835/main.tex +68 -0
  445. package/research/patents/new_qubit_modalities/doc_61841835/manifest.json +145 -0
  446. package/research/patents/new_qubit_modalities/doc_652f3497/main.md +64 -0
  447. package/research/patents/new_qubit_modalities/doc_652f3497/main.tex +68 -0
  448. package/research/patents/new_qubit_modalities/doc_652f3497/manifest.json +145 -0
  449. package/research/patents/new_qubit_modalities/doc_65e31048/main.md +64 -0
  450. package/research/patents/new_qubit_modalities/doc_65e31048/main.tex +68 -0
  451. package/research/patents/new_qubit_modalities/doc_65e31048/manifest.json +145 -0
  452. package/research/patents/new_qubit_modalities/doc_6906c32e/main.md +64 -0
  453. package/research/patents/new_qubit_modalities/doc_6906c32e/main.tex +68 -0
  454. package/research/patents/new_qubit_modalities/doc_6906c32e/manifest.json +144 -0
  455. package/research/patents/new_qubit_modalities/doc_69b6b7f2/main.md +64 -0
  456. package/research/patents/new_qubit_modalities/doc_69b6b7f2/main.tex +68 -0
  457. package/research/patents/new_qubit_modalities/doc_69b6b7f2/manifest.json +146 -0
  458. package/research/patents/new_qubit_modalities/doc_6c2088b8/main.md +64 -0
  459. package/research/patents/new_qubit_modalities/doc_6c2088b8/main.tex +68 -0
  460. package/research/patents/new_qubit_modalities/doc_6c2088b8/manifest.json +145 -0
  461. package/research/patents/new_qubit_modalities/doc_6f269347/main.md +64 -0
  462. package/research/patents/new_qubit_modalities/doc_6f269347/main.tex +68 -0
  463. package/research/patents/new_qubit_modalities/doc_6f269347/manifest.json +144 -0
  464. package/research/patents/new_qubit_modalities/doc_72bb1059/main.md +64 -0
  465. package/research/patents/new_qubit_modalities/doc_72bb1059/main.tex +68 -0
  466. package/research/patents/new_qubit_modalities/doc_72bb1059/manifest.json +134 -0
  467. package/research/patents/new_qubit_modalities/doc_7302b617/main.md +64 -0
  468. package/research/patents/new_qubit_modalities/doc_7302b617/main.tex +68 -0
  469. package/research/patents/new_qubit_modalities/doc_7302b617/manifest.json +144 -0
  470. package/research/patents/new_qubit_modalities/doc_73419bbf/main.md +64 -0
  471. package/research/patents/new_qubit_modalities/doc_73419bbf/main.tex +68 -0
  472. package/research/patents/new_qubit_modalities/doc_73419bbf/manifest.json +139 -0
  473. package/research/patents/new_qubit_modalities/doc_7403ead0/main.md +64 -0
  474. package/research/patents/new_qubit_modalities/doc_7403ead0/main.tex +68 -0
  475. package/research/patents/new_qubit_modalities/doc_7403ead0/manifest.json +145 -0
  476. package/research/patents/new_qubit_modalities/doc_7541d2ca/main.md +64 -0
  477. package/research/patents/new_qubit_modalities/doc_7541d2ca/main.tex +68 -0
  478. package/research/patents/new_qubit_modalities/doc_7541d2ca/manifest.json +145 -0
  479. package/research/patents/new_qubit_modalities/doc_7680aa01/main.md +64 -0
  480. package/research/patents/new_qubit_modalities/doc_7680aa01/main.tex +68 -0
  481. package/research/patents/new_qubit_modalities/doc_7680aa01/manifest.json +144 -0
  482. package/research/patents/new_qubit_modalities/doc_7c687253/main.md +64 -0
  483. package/research/patents/new_qubit_modalities/doc_7c687253/main.tex +68 -0
  484. package/research/patents/new_qubit_modalities/doc_7c687253/manifest.json +145 -0
  485. package/research/patents/new_qubit_modalities/doc_7e9ac677/main.md +64 -0
  486. package/research/patents/new_qubit_modalities/doc_7e9ac677/main.tex +68 -0
  487. package/research/patents/new_qubit_modalities/doc_7e9ac677/manifest.json +144 -0
  488. package/research/patents/new_qubit_modalities/doc_80d1269d/main.md +64 -0
  489. package/research/patents/new_qubit_modalities/doc_80d1269d/main.tex +68 -0
  490. package/research/patents/new_qubit_modalities/doc_80d1269d/manifest.json +145 -0
  491. package/research/patents/new_qubit_modalities/doc_8415653b/main.md +64 -0
  492. package/research/patents/new_qubit_modalities/doc_8415653b/main.tex +68 -0
  493. package/research/patents/new_qubit_modalities/doc_8415653b/manifest.json +145 -0
  494. package/research/patents/new_qubit_modalities/doc_86c2029b/main.md +64 -0
  495. package/research/patents/new_qubit_modalities/doc_86c2029b/main.tex +68 -0
  496. package/research/patents/new_qubit_modalities/doc_86c2029b/manifest.json +145 -0
  497. package/research/patents/new_qubit_modalities/doc_88f8f770/main.md +64 -0
  498. package/research/patents/new_qubit_modalities/doc_88f8f770/main.tex +68 -0
  499. package/research/patents/new_qubit_modalities/doc_88f8f770/manifest.json +145 -0
  500. package/research/patents/new_qubit_modalities/doc_8b820b6d/main.md +64 -0
  501. package/research/patents/new_qubit_modalities/doc_8b820b6d/main.tex +68 -0
  502. package/research/patents/new_qubit_modalities/doc_8b820b6d/manifest.json +144 -0
  503. package/research/patents/new_qubit_modalities/doc_8de83b3b/main.md +64 -0
  504. package/research/patents/new_qubit_modalities/doc_8de83b3b/main.tex +68 -0
  505. package/research/patents/new_qubit_modalities/doc_8de83b3b/manifest.json +144 -0
  506. package/research/patents/new_qubit_modalities/doc_8f3c09b2/main.md +64 -0
  507. package/research/patents/new_qubit_modalities/doc_8f3c09b2/main.tex +68 -0
  508. package/research/patents/new_qubit_modalities/doc_8f3c09b2/manifest.json +145 -0
  509. package/research/patents/new_qubit_modalities/doc_8f84e761/main.md +64 -0
  510. package/research/patents/new_qubit_modalities/doc_8f84e761/main.tex +68 -0
  511. package/research/patents/new_qubit_modalities/doc_8f84e761/manifest.json +145 -0
  512. package/research/patents/new_qubit_modalities/doc_900ee19f/main.md +64 -0
  513. package/research/patents/new_qubit_modalities/doc_900ee19f/main.tex +68 -0
  514. package/research/patents/new_qubit_modalities/doc_900ee19f/manifest.json +144 -0
  515. package/research/patents/new_qubit_modalities/doc_908b0523/main.md +64 -0
  516. package/research/patents/new_qubit_modalities/doc_908b0523/main.tex +68 -0
  517. package/research/patents/new_qubit_modalities/doc_908b0523/manifest.json +145 -0
  518. package/research/patents/new_qubit_modalities/doc_931099a3/main.md +64 -0
  519. package/research/patents/new_qubit_modalities/doc_931099a3/main.tex +68 -0
  520. package/research/patents/new_qubit_modalities/doc_931099a3/manifest.json +145 -0
  521. package/research/patents/new_qubit_modalities/doc_93ee5d51/main.md +64 -0
  522. package/research/patents/new_qubit_modalities/doc_93ee5d51/main.tex +68 -0
  523. package/research/patents/new_qubit_modalities/doc_93ee5d51/manifest.json +144 -0
  524. package/research/patents/new_qubit_modalities/doc_98121789/main.md +64 -0
  525. package/research/patents/new_qubit_modalities/doc_98121789/main.tex +68 -0
  526. package/research/patents/new_qubit_modalities/doc_98121789/manifest.json +144 -0
  527. package/research/patents/new_qubit_modalities/doc_99fa1dbf/main.md +64 -0
  528. package/research/patents/new_qubit_modalities/doc_99fa1dbf/main.tex +68 -0
  529. package/research/patents/new_qubit_modalities/doc_99fa1dbf/manifest.json +145 -0
  530. package/research/patents/new_qubit_modalities/doc_9abf5f6a/main.md +64 -0
  531. package/research/patents/new_qubit_modalities/doc_9abf5f6a/main.tex +68 -0
  532. package/research/patents/new_qubit_modalities/doc_9abf5f6a/manifest.json +145 -0
  533. package/research/patents/new_qubit_modalities/doc_9cff9f3f/main.md +64 -0
  534. package/research/patents/new_qubit_modalities/doc_9cff9f3f/main.tex +68 -0
  535. package/research/patents/new_qubit_modalities/doc_9cff9f3f/manifest.json +145 -0
  536. package/research/patents/new_qubit_modalities/doc_9fed647b/main.md +64 -0
  537. package/research/patents/new_qubit_modalities/doc_9fed647b/main.tex +68 -0
  538. package/research/patents/new_qubit_modalities/doc_9fed647b/manifest.json +144 -0
  539. package/research/patents/new_qubit_modalities/doc_a3f62d60/main.md +64 -0
  540. package/research/patents/new_qubit_modalities/doc_a3f62d60/main.tex +68 -0
  541. package/research/patents/new_qubit_modalities/doc_a3f62d60/manifest.json +145 -0
  542. package/research/patents/new_qubit_modalities/doc_a788a20b/main.md +64 -0
  543. package/research/patents/new_qubit_modalities/doc_a788a20b/main.tex +68 -0
  544. package/research/patents/new_qubit_modalities/doc_a788a20b/manifest.json +145 -0
  545. package/research/patents/new_qubit_modalities/doc_a9b5116c/main.md +64 -0
  546. package/research/patents/new_qubit_modalities/doc_a9b5116c/main.tex +68 -0
  547. package/research/patents/new_qubit_modalities/doc_a9b5116c/manifest.json +145 -0
  548. package/research/patents/new_qubit_modalities/doc_aaa731aa/main.md +64 -0
  549. package/research/patents/new_qubit_modalities/doc_aaa731aa/main.tex +68 -0
  550. package/research/patents/new_qubit_modalities/doc_aaa731aa/manifest.json +145 -0
  551. package/research/patents/new_qubit_modalities/doc_afa469c3/main.md +64 -0
  552. package/research/patents/new_qubit_modalities/doc_afa469c3/main.tex +68 -0
  553. package/research/patents/new_qubit_modalities/doc_afa469c3/manifest.json +145 -0
  554. package/research/patents/new_qubit_modalities/doc_b19b53e2/main.md +64 -0
  555. package/research/patents/new_qubit_modalities/doc_b19b53e2/main.tex +68 -0
  556. package/research/patents/new_qubit_modalities/doc_b19b53e2/manifest.json +145 -0
  557. package/research/patents/new_qubit_modalities/doc_b64d1987/main.md +64 -0
  558. package/research/patents/new_qubit_modalities/doc_b64d1987/main.tex +68 -0
  559. package/research/patents/new_qubit_modalities/doc_b64d1987/manifest.json +145 -0
  560. package/research/patents/new_qubit_modalities/doc_b68e9075/main.md +64 -0
  561. package/research/patents/new_qubit_modalities/doc_b68e9075/main.tex +68 -0
  562. package/research/patents/new_qubit_modalities/doc_b68e9075/manifest.json +146 -0
  563. package/research/patents/new_qubit_modalities/doc_b6b86c9e/main.md +64 -0
  564. package/research/patents/new_qubit_modalities/doc_b6b86c9e/main.tex +68 -0
  565. package/research/patents/new_qubit_modalities/doc_b6b86c9e/manifest.json +146 -0
  566. package/research/patents/new_qubit_modalities/doc_b7240f70/main.md +64 -0
  567. package/research/patents/new_qubit_modalities/doc_b7240f70/main.tex +68 -0
  568. package/research/patents/new_qubit_modalities/doc_b7240f70/manifest.json +145 -0
  569. package/research/patents/new_qubit_modalities/doc_b7b42d51/main.md +64 -0
  570. package/research/patents/new_qubit_modalities/doc_b7b42d51/main.tex +68 -0
  571. package/research/patents/new_qubit_modalities/doc_b7b42d51/manifest.json +145 -0
  572. package/research/patents/new_qubit_modalities/doc_b83f6b8a/main.md +64 -0
  573. package/research/patents/new_qubit_modalities/doc_b83f6b8a/main.tex +68 -0
  574. package/research/patents/new_qubit_modalities/doc_b83f6b8a/manifest.json +145 -0
  575. package/research/patents/new_qubit_modalities/doc_b8f7e1bb/main.md +64 -0
  576. package/research/patents/new_qubit_modalities/doc_b8f7e1bb/main.tex +68 -0
  577. package/research/patents/new_qubit_modalities/doc_b8f7e1bb/manifest.json +144 -0
  578. package/research/patents/new_qubit_modalities/doc_bc5321b9/main.md +64 -0
  579. package/research/patents/new_qubit_modalities/doc_bc5321b9/main.tex +68 -0
  580. package/research/patents/new_qubit_modalities/doc_bc5321b9/manifest.json +144 -0
  581. package/research/patents/new_qubit_modalities/doc_c361e73b/main.md +64 -0
  582. package/research/patents/new_qubit_modalities/doc_c361e73b/main.tex +68 -0
  583. package/research/patents/new_qubit_modalities/doc_c361e73b/manifest.json +135 -0
  584. package/research/patents/new_qubit_modalities/doc_cb9b6a6e/main.md +64 -0
  585. package/research/patents/new_qubit_modalities/doc_cb9b6a6e/main.tex +68 -0
  586. package/research/patents/new_qubit_modalities/doc_cb9b6a6e/manifest.json +144 -0
  587. package/research/patents/new_qubit_modalities/doc_cf3eeb26/main.md +64 -0
  588. package/research/patents/new_qubit_modalities/doc_cf3eeb26/main.tex +68 -0
  589. package/research/patents/new_qubit_modalities/doc_cf3eeb26/manifest.json +144 -0
  590. package/research/patents/new_qubit_modalities/doc_cfbeb808/main.md +64 -0
  591. package/research/patents/new_qubit_modalities/doc_cfbeb808/main.tex +68 -0
  592. package/research/patents/new_qubit_modalities/doc_cfbeb808/manifest.json +144 -0
  593. package/research/patents/new_qubit_modalities/doc_cffd04a6/main.md +64 -0
  594. package/research/patents/new_qubit_modalities/doc_cffd04a6/main.tex +68 -0
  595. package/research/patents/new_qubit_modalities/doc_cffd04a6/manifest.json +144 -0
  596. package/research/patents/new_qubit_modalities/doc_d416b00f/main.md +64 -0
  597. package/research/patents/new_qubit_modalities/doc_d416b00f/main.tex +68 -0
  598. package/research/patents/new_qubit_modalities/doc_d416b00f/manifest.json +145 -0
  599. package/research/patents/new_qubit_modalities/doc_d557dc44/main.md +64 -0
  600. package/research/patents/new_qubit_modalities/doc_d557dc44/main.tex +68 -0
  601. package/research/patents/new_qubit_modalities/doc_d557dc44/manifest.json +145 -0
  602. package/research/patents/new_qubit_modalities/doc_d80f7790/main.md +64 -0
  603. package/research/patents/new_qubit_modalities/doc_d80f7790/main.tex +68 -0
  604. package/research/patents/new_qubit_modalities/doc_d80f7790/manifest.json +145 -0
  605. package/research/patents/new_qubit_modalities/doc_d8aadbce/main.md +64 -0
  606. package/research/patents/new_qubit_modalities/doc_d8aadbce/main.tex +68 -0
  607. package/research/patents/new_qubit_modalities/doc_d8aadbce/manifest.json +144 -0
  608. package/research/patents/new_qubit_modalities/doc_da88d4e8/main.md +64 -0
  609. package/research/patents/new_qubit_modalities/doc_da88d4e8/main.tex +68 -0
  610. package/research/patents/new_qubit_modalities/doc_da88d4e8/manifest.json +144 -0
  611. package/research/patents/new_qubit_modalities/doc_de3d7026/main.md +64 -0
  612. package/research/patents/new_qubit_modalities/doc_de3d7026/main.tex +68 -0
  613. package/research/patents/new_qubit_modalities/doc_de3d7026/manifest.json +144 -0
  614. package/research/patents/new_qubit_modalities/doc_e14c8177/main.md +64 -0
  615. package/research/patents/new_qubit_modalities/doc_e14c8177/main.tex +68 -0
  616. package/research/patents/new_qubit_modalities/doc_e14c8177/manifest.json +145 -0
  617. package/research/patents/new_qubit_modalities/doc_e1d1a39d/main.md +64 -0
  618. package/research/patents/new_qubit_modalities/doc_e1d1a39d/main.tex +68 -0
  619. package/research/patents/new_qubit_modalities/doc_e1d1a39d/manifest.json +146 -0
  620. package/research/patents/new_qubit_modalities/doc_e4e26a47/main.md +64 -0
  621. package/research/patents/new_qubit_modalities/doc_e4e26a47/main.tex +68 -0
  622. package/research/patents/new_qubit_modalities/doc_e4e26a47/manifest.json +145 -0
  623. package/research/patents/new_qubit_modalities/doc_e6cb751e/main.md +64 -0
  624. package/research/patents/new_qubit_modalities/doc_e6cb751e/main.tex +68 -0
  625. package/research/patents/new_qubit_modalities/doc_e6cb751e/manifest.json +144 -0
  626. package/research/patents/new_qubit_modalities/doc_e77f22ca/main.md +64 -0
  627. package/research/patents/new_qubit_modalities/doc_e77f22ca/main.tex +68 -0
  628. package/research/patents/new_qubit_modalities/doc_e77f22ca/manifest.json +145 -0
  629. package/research/patents/new_qubit_modalities/doc_e907e2a8/main.md +64 -0
  630. package/research/patents/new_qubit_modalities/doc_e907e2a8/main.tex +68 -0
  631. package/research/patents/new_qubit_modalities/doc_e907e2a8/manifest.json +144 -0
  632. package/research/patents/new_qubit_modalities/doc_f5f85ca6/main.md +64 -0
  633. package/research/patents/new_qubit_modalities/doc_f5f85ca6/main.tex +68 -0
  634. package/research/patents/new_qubit_modalities/doc_f5f85ca6/manifest.json +125 -0
  635. package/research/patents/new_qubit_modalities/doc_f6a9e5b3/main.md +64 -0
  636. package/research/patents/new_qubit_modalities/doc_f6a9e5b3/main.tex +68 -0
  637. package/research/patents/new_qubit_modalities/doc_f6a9e5b3/manifest.json +144 -0
  638. package/research/patents/new_qubit_modalities/doc_f83f92f0/main.md +64 -0
  639. package/research/patents/new_qubit_modalities/doc_f83f92f0/main.tex +68 -0
  640. package/research/patents/new_qubit_modalities/doc_f83f92f0/manifest.json +145 -0
  641. package/research/patents/new_qubit_modalities/doc_f99fe94b/main.md +64 -0
  642. package/research/patents/new_qubit_modalities/doc_f99fe94b/main.tex +68 -0
  643. package/research/patents/new_qubit_modalities/doc_f99fe94b/manifest.json +145 -0
  644. package/research/patents/new_qubit_modalities/doc_f9d8235b/main.md +64 -0
  645. package/research/patents/new_qubit_modalities/doc_f9d8235b/main.tex +68 -0
  646. package/research/patents/new_qubit_modalities/doc_f9d8235b/manifest.json +144 -0
  647. package/research/patents/new_qubit_modalities/doc_fe0561b4/main.md +64 -0
  648. package/research/patents/new_qubit_modalities/doc_fe0561b4/main.tex +68 -0
  649. package/research/patents/new_qubit_modalities/doc_fe0561b4/manifest.json +145 -0
  650. package/research/patents/new_qubit_modalities/doc_ff47a428/main.md +64 -0
  651. package/research/patents/new_qubit_modalities/doc_ff47a428/main.tex +68 -0
  652. package/research/patents/new_qubit_modalities/doc_ff47a428/manifest.json +145 -0
  653. package/research/patents/quantum_algorithms/doc_af0d56c9/main.md +64 -0
  654. package/research/patents/quantum_algorithms/doc_af0d56c9/main.tex +68 -0
  655. package/research/patents/quantum_algorithms/doc_af0d56c9/manifest.json +146 -0
  656. package/research/patents/quantum_error_correction/doc_0a24b8af/main.md +64 -0
  657. package/research/patents/quantum_error_correction/doc_0a24b8af/main.tex +68 -0
  658. package/research/patents/quantum_error_correction/doc_0a24b8af/manifest.json +141 -0
  659. package/research/patents/quantum_error_correction/doc_0a6aee57/main.md +64 -0
  660. package/research/patents/quantum_error_correction/doc_0a6aee57/main.tex +68 -0
  661. package/research/patents/quantum_error_correction/doc_0a6aee57/manifest.json +146 -0
  662. package/research/patents/quantum_error_correction/doc_20a67ec2/main.md +64 -0
  663. package/research/patents/quantum_error_correction/doc_20a67ec2/main.tex +68 -0
  664. package/research/patents/quantum_error_correction/doc_20a67ec2/manifest.json +146 -0
  665. package/research/patents/quantum_error_correction/doc_458e5def/main.md +64 -0
  666. package/research/patents/quantum_error_correction/doc_458e5def/main.tex +68 -0
  667. package/research/patents/quantum_error_correction/doc_458e5def/manifest.json +146 -0
  668. package/research/patents/quantum_error_correction/doc_475ce69d/main.md +64 -0
  669. package/research/patents/quantum_error_correction/doc_475ce69d/main.tex +68 -0
  670. package/research/patents/quantum_error_correction/doc_475ce69d/manifest.json +135 -0
  671. package/research/patents/quantum_error_correction/doc_6c43b9d3/main.md +64 -0
  672. package/research/patents/quantum_error_correction/doc_6c43b9d3/main.tex +68 -0
  673. package/research/patents/quantum_error_correction/doc_6c43b9d3/manifest.json +145 -0
  674. package/research/patents/quantum_error_correction/doc_837d0cbb/main.md +64 -0
  675. package/research/patents/quantum_error_correction/doc_837d0cbb/main.tex +68 -0
  676. package/research/patents/quantum_error_correction/doc_837d0cbb/manifest.json +146 -0
  677. package/research/patents/quantum_error_correction/doc_89199c22/main.md +64 -0
  678. package/research/patents/quantum_error_correction/doc_89199c22/main.tex +68 -0
  679. package/research/patents/quantum_error_correction/doc_89199c22/manifest.json +145 -0
  680. package/research/patents/quantum_error_correction/doc_aaee59e8/main.md +64 -0
  681. package/research/patents/quantum_error_correction/doc_aaee59e8/main.tex +68 -0
  682. package/research/patents/quantum_error_correction/doc_aaee59e8/manifest.json +146 -0
  683. package/research/patents/quantum_error_correction/doc_cf5f172b/main.md +64 -0
  684. package/research/patents/quantum_error_correction/doc_cf5f172b/main.tex +68 -0
  685. package/research/patents/quantum_error_correction/doc_cf5f172b/manifest.json +146 -0
  686. package/research/patents/quantum_error_correction/doc_d5f8a4ee/main.md +64 -0
  687. package/research/patents/quantum_error_correction/doc_d5f8a4ee/main.tex +68 -0
  688. package/research/patents/quantum_error_correction/doc_d5f8a4ee/manifest.json +146 -0
  689. package/research/patents/quantum_error_correction/doc_df16f521/main.md +64 -0
  690. package/research/patents/quantum_error_correction/doc_df16f521/main.tex +68 -0
  691. package/research/patents/quantum_error_correction/doc_df16f521/manifest.json +145 -0
  692. package/research/simulations/.gitkeep +0 -0
  693. package/research/topics/algorithms/seed_qsvt_2026/main.tex +93 -0
  694. package/research/topics/algorithms/seed_qsvt_2026/manifest.json +19 -0
  695. package/research/topics/molecular_simulation/seed_femoco_2026/main.tex +119 -0
  696. package/research/topics/molecular_simulation/seed_femoco_2026/manifest.json +20 -0
  697. package/research/topics/qec/seed_surface_code_2026/main.tex +89 -0
  698. package/research/topics/qec/seed_surface_code_2026/manifest.json +20 -0
  699. package/research/topics/qubits/seed_neutral_atom_2026/main.tex +98 -0
  700. package/research/topics/qubits/seed_neutral_atom_2026/manifest.json +19 -0
  701. package/scripts/benchmark.js +56 -0
  702. package/scripts/cli.js +237 -0
  703. package/src/core/ANNPsi.js +266 -0
  704. package/src/core/ArtificialJunkyNeuron.js +439 -0
  705. package/src/core/QSpherifierAgent.js +620 -0
  706. package/src/core/StateSerializer.js +74 -0
  707. package/src/index.js +178 -0
  708. package/src/layers/AJNLayer.js +248 -0
  709. package/src/layers/TransformerBlock.js +201 -0
  710. package/src/llm/AnthropicAdapter.js +76 -0
  711. package/src/llm/DeepSeekAdapter.js +78 -0
  712. package/src/llm/GoogleAdapter.js +78 -0
  713. package/src/llm/LLMAdapter.js +64 -0
  714. package/src/llm/LLMRouter.js +107 -0
  715. package/src/llm/LocalLLMAdapter.js +72 -0
  716. package/src/llm/OpenAIAdapter.js +78 -0
  717. package/src/llm/ZAIAdapter.js +99 -0
  718. package/src/modules/CascadeMonitor.js +84 -0
  719. package/src/modules/CitationGraph.js +119 -0
  720. package/src/modules/DocumentArchivist.js +326 -0
  721. package/src/modules/HierarchicalCommandInterpreter.js +220 -0
  722. package/src/modules/HypothesisGenerator.js +421 -0
  723. package/src/modules/MemorySystem.js +210 -0
  724. package/src/modules/MetricsCollector.js +139 -0
  725. package/src/modules/PatentClusterManager.js +199 -0
  726. package/src/modules/PatentDraftAssistant.js +221 -0
  727. package/src/modules/PluginManager.js +92 -0
  728. package/src/modules/QuantumKnowledgeGraph.js +888 -0
  729. package/src/modules/ResearchLineRouter.js +187 -0
  730. package/src/modules/ResourceFeasibilityChecker.js +494 -0
  731. package/src/modules/SafetyGuardrails.js +139 -0
  732. package/src/modules/TokenEnergyArbitrator.js +129 -0
  733. package/src/tools/BibliographyTool.js +74 -0
  734. package/src/tools/FileSystemTool.js +91 -0
  735. package/src/tools/LaTeXDocumentTool.js +94 -0
  736. package/src/tools/QuantumPhysicsTool.js +219 -0
  737. package/src/tools/Tool.js +30 -0
  738. package/src/tools/ToolRegistry.js +40 -0
  739. package/src/tools/WebSearchTool.js +50 -0
  740. package/src/training/TrainingPipeline.js +52 -0
  741. package/tests/run.js +200 -0
  742. package/web/public/css/dashboard.css +431 -0
  743. package/web/public/favicon.png +0 -0
  744. package/web/public/index.html +170 -0
  745. package/web/public/js/dashboard.js +431 -0
  746. package/web/public/qspherifier.png +0 -0
  747. package/web/server.js +306 -0
@@ -0,0 +1,187 @@
1
+ /**
2
+ * ResearchLineRouter.js — quantum-spherifier (v1.0)
3
+ * ─────────────────────────────────────────────────────────────────────────────
4
+ * Routes each research cycle to one of the four primary research lines:
5
+ *
6
+ * 1. quantum_error_correction — QEC codes, thresholds, magic states
7
+ * 2. new_qubit_modalities — transmon, ion, neutral atom, photonic, ...
8
+ * 3. quantum_algorithms — Shor, Grover, VQE, QAOA, QSVT, ...
9
+ * 4. molecular_simulation — chemistry, materials, drug discovery
10
+ *
11
+ * Routing policy:
12
+ * - If the owner directive names a specific line, route there.
13
+ * - Otherwise, balance across lines using a round-robin + under-explored
14
+ * boost: the line with the fewest recent cycles and the most
15
+ * under-explored KG nodes gets priority.
16
+ * - Every 5th cycle is a "cross-link" cycle that deliberately bridges
17
+ * two lines (e.g. "qLDPC on neutral atoms" bridges QEC + qubits).
18
+ *
19
+ * This ensures robust, cross-linked progress: nothing stays isolated.
20
+ * ─────────────────────────────────────────────────────────────────────────────
21
+ */
22
+
23
+ import { EventEmitter } from 'eventemitter3';
24
+ import { RESEARCH_LINES } from './QuantumKnowledgeGraph.js';
25
+
26
+ const LINE_DESCRIPTIONS = {
27
+ quantum_error_correction: {
28
+ label: 'Quantum Error Correction',
29
+ shortLabel: 'QEC',
30
+ goal: 'Build fault-tolerant logical qubits by suppressing physical errors below threshold and reducing overhead.',
31
+ keyMetrics: ['logical_error_rate', 'code_distance', 'physical_to_logical_overhead', 'threshold'],
32
+ seedTopics: ['qec_surface_code', 'qec_qldpc', 'qec_color_code', 'qec_magic_state_distillation'],
33
+ },
34
+ new_qubit_modalities: {
35
+ label: 'New Qubit Modalities',
36
+ shortLabel: 'Qubits',
37
+ goal: 'Develop qubit platforms with longer coherence, higher gate fidelity, lower cost, and better scalability.',
38
+ keyMetrics: ['T1', 'T2', 'gate2qFidelity', 'qubitCount', 'costPerQubit'],
39
+ seedTopics: ['qubit_fluxonium', 'qubit_cat', 'qubit_neutral_atom', 'qubit_silicon_spin', 'qubit_topological'],
40
+ },
41
+ quantum_algorithms: {
42
+ label: 'Quantum Algorithms',
43
+ shortLabel: 'Algorithms',
44
+ goal: 'Discover and optimize algorithms with provable or practical quantum advantage on near-term and fault-tolerant hardware.',
45
+ keyMetrics: ['circuit_depth', 'tgate_count', 'speedup', 'qubit_requirement'],
46
+ seedTopics: ['algo_qsvt', 'algo_qpe', 'algo_vqe', 'algo_qml', 'algo_hhl'],
47
+ },
48
+ molecular_simulation: {
49
+ label: 'Molecular Simulation',
50
+ shortLabel: 'Simulation',
51
+ goal: 'Simulate fermionic systems (catalysts, drugs, materials) beyond classical capability.',
52
+ keyMetrics: ['logical_qubits', 'tgate_count', 'chemical_accuracy', 'molecule_size'],
53
+ seedTopics: ['sim_femoco', 'sim_transition_metal', 'sim_drug_discovery', 'sim_materials', 'sim_qubitization'],
54
+ },
55
+ };
56
+
57
+ export class ResearchLineRouter extends EventEmitter {
58
+ constructor(opts = {}) {
59
+ super();
60
+ this.kg = opts.kg ?? null;
61
+ this.cycleCounts = Object.fromEntries(RESEARCH_LINES.map(l => [l, 0]));
62
+ this.crossLinkCycleEvery = opts.crossLinkCycleEvery ?? 5;
63
+ this.totalCycles = 0;
64
+ this.lastLine = null;
65
+ }
66
+
67
+ /**
68
+ * Decide which research line to execute next.
69
+ * @param {string|null} ownerDirective
70
+ * @returns {{ line: string, crossLink: boolean, pairedLine?: string, seedTopic: string|null }}
71
+ */
72
+ route(ownerDirective = null) {
73
+ this.totalCycles++;
74
+
75
+ // Cross-link cycle every Nth cycle
76
+ const isCrossLinkCycle = this.totalCycles % this.crossLinkCycleEvery === 0;
77
+
78
+ // Try to detect line from directive
79
+ let line = this._detectLineFromDirective(ownerDirective);
80
+
81
+ if (!line) {
82
+ if (isCrossLinkCycle) {
83
+ // Pick two under-explored lines to bridge
84
+ const pair = this._pickCrossLinkPair();
85
+ line = pair[0];
86
+ const result = {
87
+ line,
88
+ crossLink: true,
89
+ pairedLine: pair[1],
90
+ seedTopic: this._pickSeedTopic(line),
91
+ };
92
+ this.cycleCounts[line]++;
93
+ this.lastLine = line;
94
+ this.emit('routed', result);
95
+ return result;
96
+ }
97
+ // Autonomous: pick the least-cycled line with most under-explored nodes
98
+ line = this._pickBalancedLine();
99
+ }
100
+
101
+ const result = {
102
+ line,
103
+ crossLink: false,
104
+ seedTopic: this._pickSeedTopic(line),
105
+ };
106
+ this.cycleCounts[line]++;
107
+ this.lastLine = line;
108
+ this.emit('routed', result);
109
+ return result;
110
+ }
111
+
112
+ _detectLineFromDirective(directive) {
113
+ if (!directive || typeof directive !== 'string') return null;
114
+ const lower = directive.toLowerCase();
115
+ const keywords = {
116
+ quantum_error_correction: ['error correction', 'qec', 'surface code', 'qldpc', 'color code', 'magic state', 'fault tolerant', 'threshold', 'logical qubit', 'code distance'],
117
+ new_qubit_modalities: ['qubit', 'transmon', 'fluxonium', 'cat qubit', 'trapped ion', 'neutral atom', 'rydberg', 'photonic', 'topological', 'majorana', 'spin qubit', 'silicon spin', 'nv center', 'coherence', 'gate fidelity'],
118
+ quantum_algorithms: ['algorithm', 'shor', 'grover', 'vqe', 'qaoa', 'qft', 'hhl', 'phase estimation', 'qsvt', 'quantum machine learning', 'qml', 'optimization'],
119
+ molecular_simulation: ['molecular', 'simulation', 'chemistry', 'femoco', 'catalyst', 'drug', 'fermionic', 'hamiltonian', 'trotter', 'qubitization', 'jordan-wigner', 'materials', 'battery', 'protein'],
120
+ };
121
+ for (const [line, kws] of Object.entries(keywords)) {
122
+ if (kws.some(k => lower.includes(k))) return line;
123
+ }
124
+ return null;
125
+ }
126
+
127
+ _pickBalancedLine() {
128
+ // Score each line: lower cycle count + more under-explored nodes = higher priority
129
+ const scores = [];
130
+ for (const line of RESEARCH_LINES) {
131
+ const cycleCount = this.cycleCounts[line];
132
+ const underExplored = this.kg ? this.kg.findUnderExplored(50, line).length : 10;
133
+ const lastCyclePenalty = this.lastLine === line ? 2 : 0;
134
+ const score = underExplored - cycleCount * 0.5 - lastCyclePenalty;
135
+ scores.push({ line, score });
136
+ }
137
+ scores.sort((a, b) => b.score - a.score);
138
+ return scores[0].line;
139
+ }
140
+
141
+ _pickCrossLinkPair() {
142
+ // Pick two lines that have the fewest cross-links between them in the KG
143
+ const pairs = [
144
+ ['quantum_error_correction', 'new_qubit_modalities'],
145
+ ['quantum_error_correction', 'quantum_algorithms'],
146
+ ['quantum_error_correction', 'molecular_simulation'],
147
+ ['new_qubit_modalities', 'quantum_algorithms'],
148
+ ['new_qubit_modalities', 'molecular_simulation'],
149
+ ['quantum_algorithms', 'molecular_simulation'],
150
+ ];
151
+ // Simple rotation for determinism
152
+ const idx = Math.floor(this.totalCycles / this.crossLinkCycleEvery) % pairs.length;
153
+ return pairs[idx];
154
+ }
155
+
156
+ _pickSeedTopic(line) {
157
+ const desc = LINE_DESCRIPTIONS[line];
158
+ if (!desc) return null;
159
+ // Prefer under-explored seed topics
160
+ if (this.kg) {
161
+ for (const topic of desc.seedTopics) {
162
+ const underExplored = this.kg.findUnderExplored(20, line);
163
+ const found = underExplored.find(u => u.node?.id === topic);
164
+ if (found) return topic;
165
+ }
166
+ }
167
+ return desc.seedTopics[Math.floor(Math.random() * desc.seedTopics.length)];
168
+ }
169
+
170
+ describe(line) {
171
+ return LINE_DESCRIPTIONS[line] ?? null;
172
+ }
173
+
174
+ allLines() {
175
+ return RESEARCH_LINES.map(l => ({ id: l, ...LINE_DESCRIPTIONS[l], cycles: this.cycleCounts[l] }));
176
+ }
177
+
178
+ stats() {
179
+ return {
180
+ totalCycles: this.totalCycles,
181
+ byLine: { ...this.cycleCounts },
182
+ lastLine: this.lastLine,
183
+ };
184
+ }
185
+ }
186
+
187
+ export { LINE_DESCRIPTIONS, RESEARCH_LINES };
@@ -0,0 +1,494 @@
1
+ /**
2
+ * ResourceFeasibilityChecker.js — quantum-spherifier (v1.0)
3
+ * ─────────────────────────────────────────────────────────────────────────────
4
+ * Anchors every proposed solution to the ACTUAL resources of human
5
+ * civilisation (quantum hardware, cryogenics, fab capacity, supply chains)
6
+ * as of 2026. Produces a structured feasibility verdict:
7
+ *
8
+ * tier: current | near_term | mid_term | long_term | speculative
9
+ * anchors: list of existing facilities / technologies that support the claim
10
+ * gaps: list of missing capabilities that must be developed
11
+ * cost: rough order-of-magnitude estimate (USD)
12
+ * timeline: years-to-useful-quantum-advantage estimate
13
+ * resource: { physicalQubits, logicalQubits, codeDistance, TgateCount, cryo }
14
+ *
15
+ * KEY PRINCIPLE: Every proposed solution must be enlaced with the actual
16
+ * level of resources that civilisation possesses, or will possess if the
17
+ * apparatuses/infrastructures proposed in the solution are built. Nothing
18
+ * stays isolated from reality.
19
+ *
20
+ * Used as a HARD GATE before any document is marked patent-eligible.
21
+ * ─────────────────────────────────────────────────────────────────────────────
22
+ */
23
+
24
+ import { EventEmitter } from 'eventemitter3';
25
+
26
+ // Resource anchors: the ACTUAL quantum-computing capacity of human
27
+ // civilisation as of 2026. Every claim must trace back to at least one
28
+ // anchor or be flagged as speculative.
29
+ export const RESOURCE_ANCHORS = Object.freeze({
30
+ // ── Superconducting platforms ─────────────────────────────────────────────
31
+ IBM_Condor: {
32
+ label: 'IBM Condor — 1,121 superconducting qubits (Yorktown, USA)',
33
+ status: 'operating',
34
+ qubitCount: 1121,
35
+ modality: 'superconducting_transmon',
36
+ year: 2023,
37
+ note: 'Kilo-qubit cryogenic control demonstrated; no quantum advantage',
38
+ },
39
+ IBM_Heron: {
40
+ label: 'IBM Heron R2 — 156 qubits, tunable couplers (IBM Quantum System Two)',
41
+ status: 'operating',
42
+ qubitCount: 156,
43
+ modality: 'superconducting_transmon',
44
+ gate2qFidelity: 0.997,
45
+ year: 2024,
46
+ },
47
+ Google_Willow: {
48
+ label: 'Google Willow — 105 qubits, below-threshold QEC (Santa Barbara, USA)',
49
+ status: 'operating',
50
+ qubitCount: 105,
51
+ modality: 'superconducting_transmon',
52
+ gate2qFidelity: 0.998,
53
+ achievement: 'exponential_error_suppression_distance_7',
54
+ year: 2024,
55
+ },
56
+ Rigetti_Ankaa3: {
57
+ label: 'Rigetti Ankaa-3 — 84 superconducting qubits',
58
+ status: 'operating',
59
+ qubitCount: 84,
60
+ modality: 'superconducting_transmon',
61
+ gate2qFidelity: 0.995,
62
+ year: 2024,
63
+ },
64
+
65
+ // ── Trapped-ion platforms ─────────────────────────────────────────────────
66
+ IonQ_Forte: {
67
+ label: 'IonQ Forte Enterprise — 36 algorithmic qubits (Bothell, USA)',
68
+ status: 'operating',
69
+ algorithmicQubits: 36,
70
+ modality: 'trapped_ion_ytterbium',
71
+ gate2qFidelity: 0.996,
72
+ connectivity: 'all_to_all',
73
+ year: 2024,
74
+ },
75
+ Quantinuum_H2: {
76
+ label: 'Quantinuum H2 — 56 trapped-ion qubits, 99.87% 2Q fidelity',
77
+ status: 'operating',
78
+ qubitCount: 56,
79
+ modality: 'trapped_ion_barium',
80
+ gate2qFidelity: 0.9987,
81
+ connectivity: 'all_to_all',
82
+ achievement: 'non_Abelian_topological_states_2024',
83
+ year: 2024,
84
+ },
85
+
86
+ // ── Neutral-atom platforms ────────────────────────────────────────────────
87
+ QuEra_Aquila: {
88
+ label: 'QuEra Aquila — 256 neutral-atom qubits (Boston, USA, AWS Braket)',
89
+ status: 'operating',
90
+ qubitCount: 256,
91
+ modality: 'neutral_atom_rubidium',
92
+ gate2qFidelity: 0.98,
93
+ year: 2023,
94
+ },
95
+ Atom_Computing_1180: {
96
+ label: 'Atom Computing — 1,180 neutral-atom qubits, strontium (Boulder, USA)',
97
+ status: 'operating',
98
+ qubitCount: 1180,
99
+ modality: 'neutral_atom_strontium',
100
+ gate2qFidelity: 0.995,
101
+ T1_s: 40,
102
+ achievement: 'first_1000_plus_qubit_neutral_atom',
103
+ year: 2024,
104
+ },
105
+
106
+ // ── Photonic platforms ────────────────────────────────────────────────────
107
+ Xanadu_Borealis: {
108
+ label: 'Xanadu Borealis — 216 photonic squeezed modes (Toronto, CA)',
109
+ status: 'operating',
110
+ modes: 216,
111
+ modality: 'photonic_continuous_variable',
112
+ achievement: 'GBS_quantum_advantage_2022',
113
+ year: 2022,
114
+ },
115
+ PsiQuantum_Omega: {
116
+ label: 'PsiQuantum Omega — photonic FTQC chip in development (Palo Alto, USA + Brisbane, AU)',
117
+ status: 'under_construction',
118
+ targetQubitCount: 1000000,
119
+ modality: 'photonic_fusion_based',
120
+ fabPartner: 'GlobalFoundries',
121
+ year: '2027_target',
122
+ },
123
+
124
+ // ── Topological ───────────────────────────────────────────────────────────
125
+ Microsoft_Majorana1: {
126
+ label: 'Microsoft Majorana 1 — topological qubit prototype',
127
+ status: 'prototype',
128
+ qubitCount: 1,
129
+ modality: 'topological_majorana',
130
+ materials: 'InAs/Al nanowire',
131
+ year: 2024,
132
+ note: 'First topological qubit; not yet scalable',
133
+ },
134
+
135
+ // ── Silicon spin ──────────────────────────────────────────────────────────
136
+ Intel_Spin_TunnelFalls: {
137
+ label: 'Intel Tunnel Falls — 12-qubit silicon spin chip',
138
+ status: 'operating',
139
+ qubitCount: 12,
140
+ modality: 'silicon_spin_qubit',
141
+ fabNode: 'Intel 3 (CMOS compatible)',
142
+ year: 2023,
143
+ },
144
+
145
+ // ── Cryogenics & infrastructure ───────────────────────────────────────────
146
+ Dilution_Refrigerators: {
147
+ label: 'Bluefors / Oxford Instruments dilution refrigerators (10-20 mK)',
148
+ status: 'available',
149
+ baseTemp_mK: 10,
150
+ coolingPower_uW_at_20mK: 30,
151
+ annualUnits: 500,
152
+ costUSD: 500000,
153
+ },
154
+ Cryogenic_CMOS_Control: {
155
+ label: 'Cryo-CMOS control chips (Intel, Google, SeeQC)',
156
+ status: 'emerging',
157
+ note: '4K-stage CMOS for scalable control; reduces wiring burden',
158
+ year: 2024,
159
+ },
160
+
161
+ // ── Classical HPC for simulation ──────────────────────────────────────────
162
+ GPU_Clusters: {
163
+ label: 'NVIDIA H100 / H200 GPU clusters for tensor-network simulation',
164
+ status: 'available',
165
+ note: 'cuQuantum library; simulates up to ~40 qubits state-vector, 100+ with tensor networks',
166
+ year: 2024,
167
+ },
168
+ Supercomputers: {
169
+ label: 'Frontier / Aurora / Fugaku supercomputers (exascale)',
170
+ status: 'available',
171
+ performance: '1-2 exaflops',
172
+ note: 'Used for classical simulation of quantum circuits and benchmarking',
173
+ },
174
+
175
+ // ── Materials & supply chain ──────────────────────────────────────────────
176
+ Helium3_supply: {
177
+ label: 'Helium-3 supply (dilution refrigerators)',
178
+ status: 'constrained',
179
+ annualLiters: 10000,
180
+ note: 'Critical for sub-100mK; limited global supply',
181
+ },
182
+ REBCO_tape: {
183
+ label: 'REBCO HTS tape (for high-field magnets in ion traps)',
184
+ status: 'available',
185
+ annualKm: 1000,
186
+ },
187
+ Ultra_pure_Si28: {
188
+ label: 'Isotopically purified 28-Silicon (for spin qubits)',
189
+ status: 'available',
190
+ enrichmentLevel: 0.9999,
191
+ costPerGramUSD: 50000,
192
+ },
193
+ Fiber_optics: {
194
+ label: 'Low-loss optical fiber (<0.2 dB/km) for photonic QC',
195
+ status: 'available',
196
+ loss_dB_per_km: 0.17,
197
+ },
198
+ });
199
+
200
+ // Feasibility rules — each tests a specific quantum parameter and returns
201
+ // a tier verdict. The most pessimistic tier wins.
202
+ const FEASIBILITY_RULES = [
203
+ // ── Physical qubit count ──────────────────────────────────────────────────
204
+ {
205
+ id: 'rule_physical_qubits',
206
+ test: (claim) => {
207
+ const n = claim.parameters?.physicalQubits;
208
+ if (typeof n !== 'number') return null;
209
+ if (n > 1_000_000) return { tier: 'speculative', reason: `${n} physical qubits exceeds any announced roadmap (PsiQuantum targets 1M by ~2028)` };
210
+ if (n > 100_000) return { tier: 'long_term', reason: `${n} physical qubits requires 2030+ fab scale-up` };
211
+ if (n > 10_000) return { tier: 'mid_term', reason: `${n} physical qubits is 5-8 years from current 1K-scale` };
212
+ if (n > 1_000) return { tier: 'near_term', reason: `${n} physical qubits within IBM/Atom Computing 2025-2027 roadmap` };
213
+ if (n > 100) return { tier: 'current', reason: `${n} physical qubits demonstrated (IBM Condor 1121, Atom 1180)` };
214
+ return { tier: 'current', reason: `${n} physical qubits well within current capability` };
215
+ },
216
+ },
217
+ // ── Logical qubit count ───────────────────────────────────────────────────
218
+ {
219
+ id: 'rule_logical_qubits',
220
+ test: (claim) => {
221
+ const n = claim.parameters?.logicalQubits;
222
+ if (typeof n !== 'number') return null;
223
+ if (n > 10_000) return { tier: 'speculative', reason: `${n} logical qubits far beyond any roadmap (RSA-2048 needs ~4K)` };
224
+ if (n > 1_000) return { tier: 'long_term', reason: `${n} logical qubits requires 2035+ fault-tolerant scale` };
225
+ if (n > 100) return { tier: 'mid_term', reason: `${n} logical qubits in 2029-2033 FTQC roadmap window` };
226
+ if (n > 10) return { tier: 'near_term', reason: `${n} logical qubits targeted by 2026-2028 (Google, Quantinuum)` };
227
+ if (n >= 1) return { tier: 'current', reason: `${n} logical qubit(s) demonstrated (Google Willow distance-7, 2024)` };
228
+ return null;
229
+ },
230
+ },
231
+ // ── 2-qubit gate fidelity ─────────────────────────────────────────────────
232
+ {
233
+ id: 'rule_gate_fidelity',
234
+ test: (claim) => {
235
+ const f = claim.parameters?.gate2qFidelity;
236
+ if (typeof f !== 'number') return null;
237
+ if (f < 0.90) return { tier: 'speculative', reason: `2Q fidelity ${(f*100).toFixed(2)}% far below surface-code threshold (99%)` };
238
+ if (f < 0.99) return { tier: 'long_term', reason: `2Q fidelity ${(f*100).toFixed(2)}% below surface-code threshold; QEC infeasible` };
239
+ if (f < 0.995) return { tier: 'mid_term', reason: `2Q fidelity ${(f*100).toFixed(2)}% marginal for surface code; high overhead` };
240
+ if (f < 0.999) return { tier: 'near_term', reason: `2Q fidelity ${(f*100).toFixed(2)}% above threshold; practical QEC (IBM Heron, IonQ)` };
241
+ return { tier: 'current', reason: `2Q fidelity ${(f*100).toFixed(2)}% excellent (Quantinuum H2: 99.87%)` };
242
+ },
243
+ },
244
+ // ── Surface code distance ─────────────────────────────────────────────────
245
+ {
246
+ id: 'rule_code_distance',
247
+ test: (claim) => {
248
+ const d = claim.parameters?.codeDistance;
249
+ if (typeof d !== 'number') return null;
250
+ if (d > 30) return { tier: 'long_term', reason: `Code distance ${d} requires ~${d*d*2} physical qubits per logical (2030+)` };
251
+ if (d > 15) return { tier: 'mid_term', reason: `Code distance ${d} requires ~${d*d*2} physical qubits per logical (2027-2029)` };
252
+ if (d > 7) return { tier: 'near_term', reason: `Code distance ${d} within reach of current 100+ qubit processors` };
253
+ if (d >= 3) return { tier: 'current', reason: `Code distance ${d} demonstrated (Google Willow d=7, 2024)` };
254
+ return null;
255
+ },
256
+ },
257
+ // ── T-gate count (circuit depth proxy) ────────────────────────────────────
258
+ {
259
+ id: 'rule_tgate_count',
260
+ test: (claim) => {
261
+ const t = claim.parameters?.tgateCount;
262
+ if (typeof t !== 'number') return null;
263
+ if (t > 1e12) return { tier: 'speculative', reason: `${t.toExponential()} T-gates exceeds feasible runtime even at FTQC` };
264
+ if (t > 1e9) return { tier: 'long_term', reason: `${t.toExponential()} T-gates requires large-scale FTQC (Shor RSA-2048 scale)` };
265
+ if (t > 1e6) return { tier: 'mid_term', reason: `${t.toExponential()} T-gates requires early FTQC (FeMoco-scale)` };
266
+ if (t > 1e4) return { tier: 'near_term', reason: `${t.toExponential()} T-gates requires small FTQC` };
267
+ return { tier: 'current', reason: `${t} T-gates within NISQ+ range` };
268
+ },
269
+ },
270
+ // ── Coherence time ────────────────────────────────────────────────────────
271
+ {
272
+ id: 'rule_coherence',
273
+ test: (claim) => {
274
+ const T1 = claim.parameters?.T1_s;
275
+ if (typeof T1 !== 'number') return null;
276
+ if (T1 > 1000) return { tier: 'speculative', reason: `T1=${T1}s exceeds any demonstrated qubit` };
277
+ if (T1 > 100) return { tier: 'long_term', reason: `T1=${T1}s exceeds current best trapped ions (~100s)` };
278
+ if (T1 > 1) return { tier: 'near_term', reason: `T1=${T1}s achievable with trapped ions / nuclear-spin neutral atoms` };
279
+ if (T1 > 0.001) return { tier: 'current', reason: `T1=${(T1*1000).toFixed(1)}ms within superconducting / neutral atom range` };
280
+ return { tier: 'current', reason: `T1=${(T1*1e6).toFixed(0)}µs typical transmon` };
281
+ },
282
+ },
283
+ // ── Error rate (physical) ─────────────────────────────────────────────────
284
+ {
285
+ id: 'rule_error_rate',
286
+ test: (claim) => {
287
+ const e = claim.parameters?.physicalErrorRate;
288
+ if (typeof e !== 'number') return null;
289
+ if (e < 1e-6) return { tier: 'speculative', reason: `Physical error ${e.toExponential()} below any demonstrated qubit` };
290
+ if (e < 1e-4) return { tier: 'long_term', reason: `Physical error ${e.toExponential()} requires topological or major advances` };
291
+ if (e < 1e-3) return { tier: 'near_term', reason: `Physical error ${e.toExponential()} within reach of improved transmons/ions` };
292
+ if (e < 1e-2) return { tier: 'current', reason: `Physical error ${e.toExponential()} typical of current superconducting qubits` };
293
+ return { tier: 'speculative', reason: `Physical error ${e.toExponential()} above QEC threshold (1%)` };
294
+ },
295
+ },
296
+ // ── Qubit modality maturity ───────────────────────────────────────────────
297
+ {
298
+ id: 'rule_modality',
299
+ test: (claim) => {
300
+ const m = claim.parameters?.modality;
301
+ if (!m) return null;
302
+ const maturity = {
303
+ 'superconducting_transmon': 'current',
304
+ 'trapped_ion': 'current',
305
+ 'neutral_atom': 'current',
306
+ 'photonic': 'mid_term',
307
+ 'silicon_spin': 'near_term',
308
+ 'topological': 'long_term',
309
+ 'NV_center': 'mid_term',
310
+ };
311
+ const tier = maturity[m];
312
+ if (!tier) return null;
313
+ const reasons = {
314
+ current: `${m}: demonstrated at scale (IBM, Google, IonQ, Atom)`,
315
+ near_term: `${m}: promising; requires 1-3 years maturation (silicon spin)`,
316
+ mid_term: `${m}: 3-8 years from scalable computation (photonic, NV)`,
317
+ long_term: `${m}: 8-20 years; fundamental R&D ongoing (topological)`,
318
+ };
319
+ return { tier, reason: reasons[tier] };
320
+ },
321
+ },
322
+ // ── Quantum advantage claim ───────────────────────────────────────────────
323
+ {
324
+ id: 'rule_advantage_claim',
325
+ test: (claim) => {
326
+ if (!claim.parameters?.claimsAdvantage) return null;
327
+ const problem = claim.parameters?.advantageProblem ?? 'unknown';
328
+ const demonstrated = ['RCS', 'GBS', 'random_circuit_sampling'];
329
+ if (demonstrated.includes(problem)) {
330
+ return { tier: 'current', reason: `Quantum advantage for ${problem} already demonstrated (Google 2019, USTC 2020, Xanadu 2022)` };
331
+ }
332
+ const practical = ['chemistry', 'optimization', 'ML', 'factoring'];
333
+ if (practical.includes(problem)) {
334
+ return { tier: 'long_term', reason: `Practical quantum advantage for ${problem} requires 4K+ logical qubits (2035+)` };
335
+ }
336
+ return { tier: 'mid_term', reason: `Quantum advantage for ${problem}: unproven; requires further research` };
337
+ },
338
+ },
339
+ ];
340
+
341
+ export class ResourceFeasibilityChecker extends EventEmitter {
342
+ constructor(opts = {}) {
343
+ super();
344
+ this.kg = opts.kg ?? null;
345
+ }
346
+
347
+ /**
348
+ * Assess a hypothesis or design proposal.
349
+ * @param {object} claim – { statement, parameters, supportingConcepts, ... }
350
+ * @returns {object} verdict
351
+ */
352
+ async assess(claim) {
353
+ const anchors = this._findAnchors(claim);
354
+ const ruleResults = FEASIBILITY_RULES
355
+ .map(rule => rule.test(claim))
356
+ .filter(r => r !== null);
357
+
358
+ // Pick the most pessimistic tier
359
+ const tierOrder = ['current', 'near_term', 'mid_term', 'long_term', 'speculative'];
360
+ let worstTier = 'current';
361
+ for (const r of ruleResults) {
362
+ if (tierOrder.indexOf(r.tier) > tierOrder.indexOf(worstTier)) worstTier = r.tier;
363
+ }
364
+ // If no anchors found and no rules fired, default to speculative
365
+ if (anchors.length === 0 && ruleResults.length === 0) worstTier = 'speculative';
366
+ else if (anchors.length === 0) worstTier = tierOrder[Math.max(tierOrder.indexOf(worstTier), 2)];
367
+
368
+ const costEstimate = this._estimateCost(claim, worstTier);
369
+ const timelineEstimate = this._estimateTimeline(worstTier);
370
+ const resourceProfile = this._resourceProfile(claim, worstTier);
371
+ const crossLinks = this._verifyCrossLinks(claim);
372
+
373
+ const verdict = {
374
+ tier: worstTier,
375
+ confidence: this._confidence(anchors.length, ruleResults.length, crossLinks),
376
+ anchors,
377
+ ruleResults,
378
+ gaps: this._findGaps(claim, anchors),
379
+ costEstimate,
380
+ timelineEstimate,
381
+ resourceProfile,
382
+ crossLinks,
383
+ patentEligible: worstTier !== 'speculative'
384
+ && anchors.length >= 1
385
+ && crossLinks.linkedConcepts >= 1,
386
+ };
387
+
388
+ this.emit('assessed', { claim, verdict });
389
+ return verdict;
390
+ }
391
+
392
+ _findAnchors(claim) {
393
+ const found = [];
394
+ const text = `${claim.statement ?? ''} ${JSON.stringify(claim.parameters ?? {})} ${(claim.supportingConcepts ?? []).join(' ')}`.toLowerCase();
395
+ for (const [id, anchor] of Object.entries(RESOURCE_ANCHORS)) {
396
+ const label = (anchor.label ?? id).toLowerCase();
397
+ const keywords = [id.toLowerCase().replace(/_/g, ' '), label.split('(')[0].trim()];
398
+ // Also match on modality
399
+ if (anchor.modality) keywords.push(anchor.modality.toLowerCase().replace(/_/g, ' '));
400
+ if (keywords.some(k => text.includes(k))) found.push({ id, ...anchor });
401
+ }
402
+ return found;
403
+ }
404
+
405
+ _findGaps(claim, anchors) {
406
+ const gaps = [];
407
+ const p = claim.parameters ?? {};
408
+ if (p.physicalQubits > 10000 && !anchors.find(a => a.id === 'IBM_Condor' || a.id === 'Atom_Computing_1180' || a.id === 'PsiQuantum_Omega')) {
409
+ gaps.push('Kilo-to-mega-qubit scale-up: requires new cryogenic wiring (cryo-CMOS) and calibration automation');
410
+ }
411
+ if (p.modality === 'superconducting_transmon' && p.physicalQubits > 1000 && !anchors.find(a => a.id === 'Dilution_Refrigerators')) {
412
+ gaps.push('Dilution refrigerator capacity: current systems cool ~1000 qubits; >10K needs modular cryogenics');
413
+ }
414
+ if (p.modality === 'topological' && !anchors.find(a => a.id === 'Microsoft_Majorana1')) {
415
+ gaps.push('Topological qubit validation: Majorana zero modes need unambiguous braiding demonstration');
416
+ }
417
+ if (p.logicalQubits > 10 && (p.codeDistance ?? 0) < 5) {
418
+ gaps.push('Code distance must increase to ≥5 for multiple logical qubits with useful error rates');
419
+ }
420
+ if (p.tgateCount > 1e6 && !anchors.find(a => a.id === 'Google_Willow' || a.id === 'Quantinuum_H2')) {
421
+ gaps.push('Fault-tolerant gate infrastructure: T-gate factories (magic state distillation) at scale');
422
+ }
423
+ if (p.modality === 'silicon_spin' && !anchors.find(a => a.id === 'Intel_Spin_TunnelFalls')) {
424
+ gaps.push('Silicon spin qubit 2-qubit gate fidelity improvement (currently ~99%, need 99.9%+)');
425
+ }
426
+ return gaps;
427
+ }
428
+
429
+ _estimateCost(claim, tier) {
430
+ const base = {
431
+ current: 5e6, // $5M (single chip experiment)
432
+ near_term: 5e7, // $50M (small processor + team)
433
+ mid_term: 5e8, // $500M (100-qubit FTQC prototype)
434
+ long_term: 5e9, // $5B (1K logical qubits)
435
+ speculative: 5e10, // $50B+ (RSA-scale)
436
+ };
437
+ return {
438
+ low: base[tier] ?? 1e7,
439
+ high: (base[tier] ?? 1e7) * 10,
440
+ currency: 'USD',
441
+ note: 'Order-of-magnitude estimate; refine with bottom-up EPC + cryogenics + control electronics analysis.',
442
+ };
443
+ }
444
+
445
+ _estimateTimeline(tier) {
446
+ return {
447
+ current: '0-2 years',
448
+ near_term: '2-5 years',
449
+ mid_term: '5-10 years',
450
+ long_term: '10-20 years',
451
+ speculative: '>20 years or unknown',
452
+ }[tier] ?? 'unknown';
453
+ }
454
+
455
+ _resourceProfile(claim) {
456
+ const p = claim.parameters ?? {};
457
+ return {
458
+ physicalQubits: p.physicalQubits ?? null,
459
+ logicalQubits: p.logicalQubits ?? null,
460
+ codeDistance: p.codeDistance ?? null,
461
+ tgateCount: p.tgateCount ?? null,
462
+ modality: p.modality ?? 'unknown',
463
+ cryoRequired: ['superconducting_transmon', 'topological', 'silicon_spin'].includes(p.modality),
464
+ operatingTemp: p.modality === 'photonic' ? '300K'
465
+ : p.modality === 'trapped_ion' ? '4K (vacuum)'
466
+ : p.modality === 'neutral_atom' ? 'µK (magneto-optical trap)'
467
+ : '10-20mK (dilution refrigerator)',
468
+ };
469
+ }
470
+
471
+ _verifyCrossLinks(claim) {
472
+ // quantum-spherifier principle: nothing stays isolated
473
+ const concepts = claim.supportingConcepts ?? [];
474
+ const kgHits = this.kg
475
+ ? concepts.filter(c => this.kg.nodes.has(c)).length
476
+ : 0;
477
+ return {
478
+ linkedConcepts: kgHits,
479
+ totalConcepts: concepts.length,
480
+ sufficient: kgHits >= 1,
481
+ note: kgHits >= 1
482
+ ? 'Solution is cross-linked to the quantum knowledge graph.'
483
+ : 'WARNING: solution is isolated — no KG concepts referenced. Enforce cross-linking.',
484
+ };
485
+ }
486
+
487
+ _confidence(anchorCount, ruleCount, crossLinks) {
488
+ const base = Math.min(1.0, 0.25 + 0.12 * anchorCount + 0.08 * ruleCount);
489
+ const linkBonus = crossLinks.linkedConcepts >= 1 ? 0.10 : -0.15;
490
+ return Math.round(Math.max(0, Math.min(1, base + linkBonus)) * 100) / 100;
491
+ }
492
+ }
493
+
494
+ export { FEASIBILITY_RULES };