pyvitri 0.3.0__tar.gz

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 (1063) hide show
  1. pyvitri-0.3.0/CHANGELOG.md +94 -0
  2. pyvitri-0.3.0/Cargo.lock +265 -0
  3. pyvitri-0.3.0/Cargo.toml +124 -0
  4. pyvitri-0.3.0/LICENSE +201 -0
  5. pyvitri-0.3.0/PKG-INFO +71 -0
  6. pyvitri-0.3.0/README.md +124 -0
  7. pyvitri-0.3.0/bindings/python/Cargo.lock +365 -0
  8. pyvitri-0.3.0/bindings/python/Cargo.toml +31 -0
  9. pyvitri-0.3.0/bindings/python/README.md +53 -0
  10. pyvitri-0.3.0/bindings/python/examples/hard_timeout.py +78 -0
  11. pyvitri-0.3.0/bindings/python/examples/pysdd_count.py +52 -0
  12. pyvitri-0.3.0/bindings/python/src/lib.rs +335 -0
  13. pyvitri-0.3.0/bindings/python/tests/cnfs.py +56 -0
  14. pyvitri-0.3.0/bindings/python/tests/conftest.py +19 -0
  15. pyvitri-0.3.0/bindings/python/tests/test_cli_parity.py +82 -0
  16. pyvitri-0.3.0/bindings/python/tests/test_prepare.py +254 -0
  17. pyvitri-0.3.0/bindings/python/tests/test_pysdd.py +63 -0
  18. pyvitri-0.3.0/bindings/python/tests/test_threads_and_processes.py +164 -0
  19. pyvitri-0.3.0/bindings/python/vitri.pyi +41 -0
  20. pyvitri-0.3.0/build/cmake.rs +162 -0
  21. pyvitri-0.3.0/build/link.rs +159 -0
  22. pyvitri-0.3.0/build/prereqs.rs +243 -0
  23. pyvitri-0.3.0/build/run.rs +55 -0
  24. pyvitri-0.3.0/build/toolchain.rs +189 -0
  25. pyvitri-0.3.0/build.rs +79 -0
  26. pyvitri-0.3.0/docs/ACKNOWLEDGEMENTS.md +77 -0
  27. pyvitri-0.3.0/docs/THIRD-PARTY.md +227 -0
  28. pyvitri-0.3.0/docs/building.md +105 -0
  29. pyvitri-0.3.0/docs/bundle.md +50 -0
  30. pyvitri-0.3.0/docs/env.md +116 -0
  31. pyvitri-0.3.0/docs/example.cnf +32 -0
  32. pyvitri-0.3.0/docs/getting-started.md +139 -0
  33. pyvitri-0.3.0/docs/images/vtree-example.png +0 -0
  34. pyvitri-0.3.0/docs/preprocessing.md +213 -0
  35. pyvitri-0.3.0/docs/sat.md +29 -0
  36. pyvitri-0.3.0/docs/showcase/mc2023_track1_008.reduced.cnf +147 -0
  37. pyvitri-0.3.0/docs/showcase.md +422 -0
  38. pyvitri-0.3.0/docs/vtrees.md +271 -0
  39. pyvitri-0.3.0/examples/score_vtree.rs +181 -0
  40. pyvitri-0.3.0/notices/LICENSE +201 -0
  41. pyvitri-0.3.0/notices/THIRD-PARTY.md +227 -0
  42. pyvitri-0.3.0/notices/goatd-THIRD-PARTY.md +137 -0
  43. pyvitri-0.3.0/pyproject.toml +37 -0
  44. pyvitri-0.3.0/src/budget.rs +242 -0
  45. pyvitri-0.3.0/src/bundle/compile_chain.rs +178 -0
  46. pyvitri-0.3.0/src/bundle/components/mod.rs +370 -0
  47. pyvitri-0.3.0/src/bundle/components/tests/manifest.rs +37 -0
  48. pyvitri-0.3.0/src/bundle/components/tests/mod.rs +5 -0
  49. pyvitri-0.3.0/src/bundle/components/write.rs +286 -0
  50. pyvitri-0.3.0/src/bundle/count_chain/tests.rs +120 -0
  51. pyvitri-0.3.0/src/bundle/count_chain.rs +459 -0
  52. pyvitri-0.3.0/src/bundle/export.rs +520 -0
  53. pyvitri-0.3.0/src/bundle/format_tag.rs +34 -0
  54. pyvitri-0.3.0/src/bundle/mod.rs +387 -0
  55. pyvitri-0.3.0/src/bundle/plumbing.rs +198 -0
  56. pyvitri-0.3.0/src/bundle/projection_chain.rs +303 -0
  57. pyvitri-0.3.0/src/bundle/record.rs +315 -0
  58. pyvitri-0.3.0/src/bundle/report.rs +271 -0
  59. pyvitri-0.3.0/src/bundle/session.rs +348 -0
  60. pyvitri-0.3.0/src/bundle/stage.rs +254 -0
  61. pyvitri-0.3.0/src/bundle/tests/chains.rs +316 -0
  62. pyvitri-0.3.0/src/bundle/tests/mod.rs +250 -0
  63. pyvitri-0.3.0/src/bundle/tests/simplify_policy.rs +101 -0
  64. pyvitri-0.3.0/src/bundle/tests/stage_budget.rs +65 -0
  65. pyvitri-0.3.0/src/candidates.rs +317 -0
  66. pyvitri-0.3.0/src/cli_main/help.rs +272 -0
  67. pyvitri-0.3.0/src/cli_main.rs +506 -0
  68. pyvitri-0.3.0/src/cnf/components.rs +131 -0
  69. pyvitri-0.3.0/src/cnf/dimacs.rs +605 -0
  70. pyvitri-0.3.0/src/cnf/literal.rs +256 -0
  71. pyvitri-0.3.0/src/cnf/mod.rs +556 -0
  72. pyvitri-0.3.0/src/cnf/occ.rs +143 -0
  73. pyvitri-0.3.0/src/cnf/show_set.rs +271 -0
  74. pyvitri-0.3.0/src/cnf/space.rs +41 -0
  75. pyvitri-0.3.0/src/cnf/stats.rs +117 -0
  76. pyvitri-0.3.0/src/cnf/union_find.rs +47 -0
  77. pyvitri-0.3.0/src/cnf/weights.rs +523 -0
  78. pyvitri-0.3.0/src/component/canonical.rs +272 -0
  79. pyvitri-0.3.0/src/component/mod.rs +730 -0
  80. pyvitri-0.3.0/src/component/tests/canonical.rs +185 -0
  81. pyvitri-0.3.0/src/component/tests/mod.rs +6 -0
  82. pyvitri-0.3.0/src/component/tests/spec_policy.rs +69 -0
  83. pyvitri-0.3.0/src/config/budget.rs +175 -0
  84. pyvitri-0.3.0/src/config/mod.rs +778 -0
  85. pyvitri-0.3.0/src/config/policies.rs +357 -0
  86. pyvitri-0.3.0/src/config/tests/env_defaults.rs +45 -0
  87. pyvitri-0.3.0/src/config/tests/mod.rs +5 -0
  88. pyvitri-0.3.0/src/decompose/best.rs +57 -0
  89. pyvitri-0.3.0/src/decompose/bisect.rs +274 -0
  90. pyvitri-0.3.0/src/decompose/flowcutter/mod.rs +141 -0
  91. pyvitri-0.3.0/src/decompose/force/geometry.rs +328 -0
  92. pyvitri-0.3.0/src/decompose/force/layout.rs +225 -0
  93. pyvitri-0.3.0/src/decompose/force/mod.rs +425 -0
  94. pyvitri-0.3.0/src/decompose/force/tests/axes.rs +255 -0
  95. pyvitri-0.3.0/src/decompose/force/tests/build.rs +144 -0
  96. pyvitri-0.3.0/src/decompose/force/tests/mod.rs +51 -0
  97. pyvitri-0.3.0/src/decompose/force/tree.rs +586 -0
  98. pyvitri-0.3.0/src/decompose/goatd/elimination/tests.rs +23 -0
  99. pyvitri-0.3.0/src/decompose/goatd/elimination.rs +155 -0
  100. pyvitri-0.3.0/src/decompose/goatd/mod.rs +17 -0
  101. pyvitri-0.3.0/src/decompose/goatd/polishing.rs +345 -0
  102. pyvitri-0.3.0/src/decompose/goatd/sat_score.rs +76 -0
  103. pyvitri-0.3.0/src/decompose/goatd/schedule/tests.rs +117 -0
  104. pyvitri-0.3.0/src/decompose/goatd/schedule.rs +418 -0
  105. pyvitri-0.3.0/src/decompose/hybrid/mod.rs +262 -0
  106. pyvitri-0.3.0/src/decompose/hybrid/tests/mod.rs +4 -0
  107. pyvitri-0.3.0/src/decompose/hybrid/tests/precomputed_td.rs +83 -0
  108. pyvitri-0.3.0/src/decompose/mod.rs +511 -0
  109. pyvitri-0.3.0/src/decompose/multilevel_bisect/mod.rs +90 -0
  110. pyvitri-0.3.0/src/decompose/multilevel_bisect/tests/mod.rs +9 -0
  111. pyvitri-0.3.0/src/decompose/multilevel_hg_bisect/mod.rs +196 -0
  112. pyvitri-0.3.0/src/decompose/multilevel_hg_bisect/tests/mod.rs +66 -0
  113. pyvitri-0.3.0/src/decompose/portfolio/catalog/entry.rs +313 -0
  114. pyvitri-0.3.0/src/decompose/portfolio/catalog/inputs.rs +218 -0
  115. pyvitri-0.3.0/src/decompose/portfolio/catalog/mod.rs +25 -0
  116. pyvitri-0.3.0/src/decompose/portfolio/catalog/run.rs +421 -0
  117. pyvitri-0.3.0/src/decompose/portfolio/driver.rs +890 -0
  118. pyvitri-0.3.0/src/decompose/portfolio/mod.rs +368 -0
  119. pyvitri-0.3.0/src/decompose/portfolio/tests/driver.rs +849 -0
  120. pyvitri-0.3.0/src/decompose/portfolio/tests/fold.rs +296 -0
  121. pyvitri-0.3.0/src/decompose/portfolio/tests/mod.rs +47 -0
  122. pyvitri-0.3.0/src/decompose/portfolio/tests/ranker.rs +61 -0
  123. pyvitri-0.3.0/src/decompose/portfolio/tests/skip.rs +60 -0
  124. pyvitri-0.3.0/src/decompose/td_parse.rs +318 -0
  125. pyvitri-0.3.0/src/decompose/td_to_vtree/algo.rs +513 -0
  126. pyvitri-0.3.0/src/decompose/td_to_vtree/combiners.rs +453 -0
  127. pyvitri-0.3.0/src/decompose/td_to_vtree/meta.rs +142 -0
  128. pyvitri-0.3.0/src/decompose/td_to_vtree/mod.rs +121 -0
  129. pyvitri-0.3.0/src/decompose/td_to_vtree/reading.rs +193 -0
  130. pyvitri-0.3.0/src/decompose/td_to_vtree/search.rs +483 -0
  131. pyvitri-0.3.0/src/decompose/td_to_vtree/tests/convert.rs +187 -0
  132. pyvitri-0.3.0/src/decompose/td_to_vtree/tests/meta.rs +41 -0
  133. pyvitri-0.3.0/src/decompose/td_to_vtree/tests/mod.rs +8 -0
  134. pyvitri-0.3.0/src/decompose/td_to_vtree/tests/search.rs +65 -0
  135. pyvitri-0.3.0/src/diagnostics.rs +53 -0
  136. pyvitri-0.3.0/src/dot/mod.rs +263 -0
  137. pyvitri-0.3.0/src/dot/tests/heat.rs +31 -0
  138. pyvitri-0.3.0/src/dot/tests/mod.rs +4 -0
  139. pyvitri-0.3.0/src/env.rs +181 -0
  140. pyvitri-0.3.0/src/error.rs +292 -0
  141. pyvitri-0.3.0/src/lib.rs +206 -0
  142. pyvitri-0.3.0/src/preprocess/arjun.rs +464 -0
  143. pyvitri-0.3.0/src/preprocess/arjun_lib/budget_class.rs +124 -0
  144. pyvitri-0.3.0/src/preprocess/arjun_lib/knobs.rs +126 -0
  145. pyvitri-0.3.0/src/preprocess/arjun_lib/mod.rs +731 -0
  146. pyvitri-0.3.0/src/preprocess/arjun_lib/shim.rs +586 -0
  147. pyvitri-0.3.0/src/preprocess/arjun_lib/stages.rs +403 -0
  148. pyvitri-0.3.0/src/preprocess/arjun_lib/tests/anytime.rs +374 -0
  149. pyvitri-0.3.0/src/preprocess/arjun_lib/tests/count_preserve.rs +281 -0
  150. pyvitri-0.3.0/src/preprocess/arjun_lib/tests/knobs.rs +329 -0
  151. pyvitri-0.3.0/src/preprocess/arjun_lib/tests/learnt_clauses.rs +173 -0
  152. pyvitri-0.3.0/src/preprocess/arjun_lib/tests/mod.rs +22 -0
  153. pyvitri-0.3.0/src/preprocess/arjun_lib/tests/stage1_checkpoint.rs +76 -0
  154. pyvitri-0.3.0/src/preprocess/backbone.rs +84 -0
  155. pyvitri-0.3.0/src/preprocess/backbone_pipeline.rs +281 -0
  156. pyvitri-0.3.0/src/preprocess/bve_project.rs +326 -0
  157. pyvitri-0.3.0/src/preprocess/cadical.rs +265 -0
  158. pyvitri-0.3.0/src/preprocess/cadical_ffi.rs +528 -0
  159. pyvitri-0.3.0/src/preprocess/count_preserve.rs +58 -0
  160. pyvitri-0.3.0/src/preprocess/dve/definability.rs +299 -0
  161. pyvitri-0.3.0/src/preprocess/dve/elim.rs +497 -0
  162. pyvitri-0.3.0/src/preprocess/dve/mod.rs +24 -0
  163. pyvitri-0.3.0/src/preprocess/dve/pipeline.rs +443 -0
  164. pyvitri-0.3.0/src/preprocess/dve/strengthen.rs +311 -0
  165. pyvitri-0.3.0/src/preprocess/dve/tests/count_preserve.rs +329 -0
  166. pyvitri-0.3.0/src/preprocess/dve/tests/elimination.rs +224 -0
  167. pyvitri-0.3.0/src/preprocess/dve/tests/mod.rs +20 -0
  168. pyvitri-0.3.0/src/preprocess/dve/tests/primal_graph.rs +21 -0
  169. pyvitri-0.3.0/src/preprocess/dve/tests/renumber.rs +36 -0
  170. pyvitri-0.3.0/src/preprocess/dve/tests/strengthen.rs +211 -0
  171. pyvitri-0.3.0/src/preprocess/dve/types.rs +145 -0
  172. pyvitri-0.3.0/src/preprocess/equivalence.rs +473 -0
  173. pyvitri-0.3.0/src/preprocess/fork_budget.rs +557 -0
  174. pyvitri-0.3.0/src/preprocess/fork_payload.rs +107 -0
  175. pyvitri-0.3.0/src/preprocess/fork_result.rs +155 -0
  176. pyvitri-0.3.0/src/preprocess/gates.rs +461 -0
  177. pyvitri-0.3.0/src/preprocess/meter.rs +222 -0
  178. pyvitri-0.3.0/src/preprocess/mod.rs +103 -0
  179. pyvitri-0.3.0/src/preprocess/pipelines.rs +423 -0
  180. pyvitri-0.3.0/src/preprocess/probe_engine.rs +935 -0
  181. pyvitri-0.3.0/src/preprocess/projected.rs +243 -0
  182. pyvitri-0.3.0/src/preprocess/renumber.rs +181 -0
  183. pyvitri-0.3.0/src/preprocess/simplify/config.rs +157 -0
  184. pyvitri-0.3.0/src/preprocess/simplify/mod.rs +283 -0
  185. pyvitri-0.3.0/src/preprocess/simplify/record.rs +404 -0
  186. pyvitri-0.3.0/src/preprocess/simplify/strip.rs +220 -0
  187. pyvitri-0.3.0/src/preprocess/simplify/tests/mod.rs +4 -0
  188. pyvitri-0.3.0/src/preprocess/simplify/tests/strip.rs +194 -0
  189. pyvitri-0.3.0/src/preprocess/tarjan.rs +96 -0
  190. pyvitri-0.3.0/src/preprocess/tests/backbone_pipeline.rs +66 -0
  191. pyvitri-0.3.0/src/preprocess/tests/bve_project.rs +288 -0
  192. pyvitri-0.3.0/src/preprocess/tests/cadical.rs +16 -0
  193. pyvitri-0.3.0/src/preprocess/tests/cadical_ffi.rs +105 -0
  194. pyvitri-0.3.0/src/preprocess/tests/count_preserve.rs +94 -0
  195. pyvitri-0.3.0/src/preprocess/tests/equivalence.rs +378 -0
  196. pyvitri-0.3.0/src/preprocess/tests/fork_budget.rs +179 -0
  197. pyvitri-0.3.0/src/preprocess/tests/gates.rs +114 -0
  198. pyvitri-0.3.0/src/preprocess/tests/meter.rs +34 -0
  199. pyvitri-0.3.0/src/preprocess/tests/mod.rs +111 -0
  200. pyvitri-0.3.0/src/preprocess/tests/pipelines.rs +179 -0
  201. pyvitri-0.3.0/src/preprocess/tests/probe_engine.rs +261 -0
  202. pyvitri-0.3.0/src/preprocess/tests/projected.rs +375 -0
  203. pyvitri-0.3.0/src/preprocess/tests/renumber.rs +119 -0
  204. pyvitri-0.3.0/src/preprocess/tests/simplify.rs +159 -0
  205. pyvitri-0.3.0/src/preprocess/tests/tarjan.rs +79 -0
  206. pyvitri-0.3.0/src/preprocess/tests/unit_propagation.rs +102 -0
  207. pyvitri-0.3.0/src/preprocess/tests/weighted_lift.rs +436 -0
  208. pyvitri-0.3.0/src/preprocess/unit_propagation.rs +118 -0
  209. pyvitri-0.3.0/src/preprocess/var_map.rs +411 -0
  210. pyvitri-0.3.0/src/preprocess/weighted_lift.rs +370 -0
  211. pyvitri-0.3.0/src/projection.rs +328 -0
  212. pyvitri-0.3.0/src/request.rs +785 -0
  213. pyvitri-0.3.0/src/sat.rs +34 -0
  214. pyvitri-0.3.0/src/score/agg/load.rs +447 -0
  215. pyvitri-0.3.0/src/score/agg/pair_boost.json +1 -0
  216. pyvitri-0.3.0/src/score/agg/tests/mod.rs +542 -0
  217. pyvitri-0.3.0/src/score/agg.rs +543 -0
  218. pyvitri-0.3.0/src/score/memo.rs +80 -0
  219. pyvitri-0.3.0/src/score/mod.rs +745 -0
  220. pyvitri-0.3.0/src/score/per_node.rs +487 -0
  221. pyvitri-0.3.0/src/score/tables/tests.rs +290 -0
  222. pyvitri-0.3.0/src/score/tables.rs +713 -0
  223. pyvitri-0.3.0/src/score/tests/fused.rs +98 -0
  224. pyvitri-0.3.0/src/score/tests/mod.rs +372 -0
  225. pyvitri-0.3.0/src/spec/builders.rs +181 -0
  226. pyvitri-0.3.0/src/spec/mod.rs +313 -0
  227. pyvitri-0.3.0/src/spec/parse/params.rs +164 -0
  228. pyvitri-0.3.0/src/spec/parse/vocabulary.rs +584 -0
  229. pyvitri-0.3.0/src/spec/parse.rs +692 -0
  230. pyvitri-0.3.0/src/tests/budget/deadline.rs +106 -0
  231. pyvitri-0.3.0/src/tests/budget/deterministic.rs +59 -0
  232. pyvitri-0.3.0/src/tests/budget/mod.rs +6 -0
  233. pyvitri-0.3.0/src/tests/budget/scaled.rs +100 -0
  234. pyvitri-0.3.0/src/tests/budget/vtree_budget.rs +86 -0
  235. pyvitri-0.3.0/src/tests/bundle/arjun.rs +414 -0
  236. pyvitri-0.3.0/src/tests/bundle/compile.rs +572 -0
  237. pyvitri-0.3.0/src/tests/bundle/components/candidates.rs +194 -0
  238. pyvitri-0.3.0/src/tests/bundle/components/manifest.rs +239 -0
  239. pyvitri-0.3.0/src/tests/bundle/components/mod.rs +19 -0
  240. pyvitri-0.3.0/src/tests/bundle/harness.rs +709 -0
  241. pyvitri-0.3.0/src/tests/bundle/mc.rs +161 -0
  242. pyvitri-0.3.0/src/tests/bundle/mod.rs +44 -0
  243. pyvitri-0.3.0/src/tests/bundle/mode_selection.rs +236 -0
  244. pyvitri-0.3.0/src/tests/bundle/projected.rs +195 -0
  245. pyvitri-0.3.0/src/tests/bundle/property.rs +295 -0
  246. pyvitri-0.3.0/src/tests/bundle/report.rs +647 -0
  247. pyvitri-0.3.0/src/tests/bundle/run.rs +594 -0
  248. pyvitri-0.3.0/src/tests/bundle/stages.rs +70 -0
  249. pyvitri-0.3.0/src/tests/bundle/weighted.rs +274 -0
  250. pyvitri-0.3.0/src/tests/bundle/writer.rs +103 -0
  251. pyvitri-0.3.0/src/tests/candidates.rs +263 -0
  252. pyvitri-0.3.0/src/tests/circuit_fixture/mod.rs +160 -0
  253. pyvitri-0.3.0/src/tests/circuit_fixture/soundness.rs +108 -0
  254. pyvitri-0.3.0/src/tests/cnf/components.rs +128 -0
  255. pyvitri-0.3.0/src/tests/cnf/meta_lines.rs +371 -0
  256. pyvitri-0.3.0/src/tests/cnf/mod.rs +21 -0
  257. pyvitri-0.3.0/src/tests/cnf/occ.rs +165 -0
  258. pyvitri-0.3.0/src/tests/cnf/parse.rs +212 -0
  259. pyvitri-0.3.0/src/tests/cnf/propagation.rs +36 -0
  260. pyvitri-0.3.0/src/tests/cnf/round_trip.rs +289 -0
  261. pyvitri-0.3.0/src/tests/cnf/show_set.rs +143 -0
  262. pyvitri-0.3.0/src/tests/cnf/stats.rs +82 -0
  263. pyvitri-0.3.0/src/tests/cnf/types.rs +402 -0
  264. pyvitri-0.3.0/src/tests/cnf/var_range.rs +99 -0
  265. pyvitri-0.3.0/src/tests/component.rs +894 -0
  266. pyvitri-0.3.0/src/tests/config.rs +1077 -0
  267. pyvitri-0.3.0/src/tests/decompose/bisect.rs +42 -0
  268. pyvitri-0.3.0/src/tests/decompose/deadline.rs +109 -0
  269. pyvitri-0.3.0/src/tests/decompose/embedding.rs +116 -0
  270. pyvitri-0.3.0/src/tests/decompose/mod.rs +10 -0
  271. pyvitri-0.3.0/src/tests/decompose/preference.rs +144 -0
  272. pyvitri-0.3.0/src/tests/decompose/primal_width.rs +67 -0
  273. pyvitri-0.3.0/src/tests/decompose/selection_ctx.rs +154 -0
  274. pyvitri-0.3.0/src/tests/decompose/td_to_vtree/coverage.rs +154 -0
  275. pyvitri-0.3.0/src/tests/decompose/td_to_vtree/mod.rs +74 -0
  276. pyvitri-0.3.0/src/tests/decompose/td_to_vtree/search.rs +212 -0
  277. pyvitri-0.3.0/src/tests/diagnostics.rs +26 -0
  278. pyvitri-0.3.0/src/tests/dot.rs +255 -0
  279. pyvitri-0.3.0/src/tests/dot_fixture.rs +33 -0
  280. pyvitri-0.3.0/src/tests/env.rs +119 -0
  281. pyvitri-0.3.0/src/tests/error.rs +125 -0
  282. pyvitri-0.3.0/src/tests/learnt_clauses.rs +30 -0
  283. pyvitri-0.3.0/src/tests/mod.rs +40 -0
  284. pyvitri-0.3.0/src/tests/pmc_oracle/mod.rs +177 -0
  285. pyvitri-0.3.0/src/tests/pmc_oracle/soundness.rs +175 -0
  286. pyvitri-0.3.0/src/tests/preprocess/arjun.rs +428 -0
  287. pyvitri-0.3.0/src/tests/preprocess/mod.rs +6 -0
  288. pyvitri-0.3.0/src/tests/preprocess/simplify_contract.rs +290 -0
  289. pyvitri-0.3.0/src/tests/preprocess/var_map.rs +191 -0
  290. pyvitri-0.3.0/src/tests/projection.rs +230 -0
  291. pyvitri-0.3.0/src/tests/request.rs +379 -0
  292. pyvitri-0.3.0/src/tests/sat.rs +263 -0
  293. pyvitri-0.3.0/src/tests/score.rs +352 -0
  294. pyvitri-0.3.0/src/tests/score_fixture.rs +72 -0
  295. pyvitri-0.3.0/src/tests/spec/build.rs +375 -0
  296. pyvitri-0.3.0/src/tests/spec/conversion.rs +219 -0
  297. pyvitri-0.3.0/src/tests/spec/mod.rs +25 -0
  298. pyvitri-0.3.0/src/tests/spec/params.rs +240 -0
  299. pyvitri-0.3.0/src/tests/spec/vocabulary.rs +445 -0
  300. pyvitri-0.3.0/src/tests/td_fixture.rs +14 -0
  301. pyvitri-0.3.0/src/tests/vtree/equality.rs +118 -0
  302. pyvitri-0.3.0/src/tests/vtree/file_format.rs +335 -0
  303. pyvitri-0.3.0/src/tests/vtree/lca.rs +87 -0
  304. pyvitri-0.3.0/src/tests/vtree/mod.rs +29 -0
  305. pyvitri-0.3.0/src/tests/vtree/reverse_rightmost_path.rs +257 -0
  306. pyvitri-0.3.0/src/tests/vtree/rotation_shape.rs +86 -0
  307. pyvitri-0.3.0/src/tests/vtree/structure.rs +283 -0
  308. pyvitri-0.3.0/src/vtree/arena.rs +135 -0
  309. pyvitri-0.3.0/src/vtree/mod.rs +725 -0
  310. pyvitri-0.3.0/src/vtree/rotate.rs +189 -0
  311. pyvitri-0.3.0/src/vtree/tests/inverse.rs +57 -0
  312. pyvitri-0.3.0/src/vtree/tests/mod.rs +221 -0
  313. pyvitri-0.3.0/src/vtree/tests/topo_fixup.rs +142 -0
  314. pyvitri-0.3.0/src/vtree/text.rs +198 -0
  315. pyvitri-0.3.0/tests/bundle_round_trip/main.rs +211 -0
  316. pyvitri-0.3.0/tests/cli/edge_shapes.rs +114 -0
  317. pyvitri-0.3.0/tests/cli/env.rs +399 -0
  318. pyvitri-0.3.0/tests/cli/failed_runs.rs +119 -0
  319. pyvitri-0.3.0/tests/cli/grammar.rs +604 -0
  320. pyvitri-0.3.0/tests/cli/main.rs +212 -0
  321. pyvitri-0.3.0/tests/cli/modes.rs +179 -0
  322. pyvitri-0.3.0/tests/cli/output_bytes.rs +351 -0
  323. pyvitri-0.3.0/tests/cli/success_path.rs +397 -0
  324. pyvitri-0.3.0/tests/common/mod.rs +422 -0
  325. pyvitri-0.3.0/tests/data/agg/boost_fixture.json +1240 -0
  326. pyvitri-0.3.0/tests/data/agg/boost_model.json +1 -0
  327. pyvitri-0.3.0/tests/data/agg/d1_mc2025_track1_145_comp010.cnf +70 -0
  328. pyvitri-0.3.0/tests/data/agg/d1_mc2025_track1_145_comp010_rank00.vtree +110 -0
  329. pyvitri-0.3.0/tests/data/agg/d1_mc2025_track1_145_comp010_rank01.vtree +110 -0
  330. pyvitri-0.3.0/tests/data/agg/expected_aggregates.tsv +761 -0
  331. pyvitri-0.3.0/tests/data/agg/k1_mc2023_track1_064_comp004.cnf +81 -0
  332. pyvitri-0.3.0/tests/data/agg/k1_mc2023_track1_064_comp004_rank00.vtree +124 -0
  333. pyvitri-0.3.0/tests/data/agg/v1_mc2026_track1_109_comp074.cnf +136 -0
  334. pyvitri-0.3.0/tests/data/agg/v1_mc2026_track1_109_comp074_rank00.vtree +286 -0
  335. pyvitri-0.3.0/tests/decompose/graph_building.rs +46 -0
  336. pyvitri-0.3.0/tests/decompose/incidence_graph.rs +37 -0
  337. pyvitri-0.3.0/tests/decompose/main.rs +18 -0
  338. pyvitri-0.3.0/tests/decompose/td_parsing.rs +31 -0
  339. pyvitri-0.3.0/tests/fork_budget/cases.rs +137 -0
  340. pyvitri-0.3.0/tests/fork_budget/main.rs +62 -0
  341. pyvitri-0.3.0/tests/record_json_shape/main.rs +119 -0
  342. pyvitri-0.3.0/vendor/arjun/arjun_shim.cpp +422 -0
  343. pyvitri-0.3.0/vendor/arjun/arjun_shim.h +232 -0
  344. pyvitri-0.3.0/vendor/arjun/cadical_internal_stats.cpp +52 -0
  345. pyvitri-0.3.0/vendor/arjun/cadical_shim.cpp +142 -0
  346. pyvitri-0.3.0/vendor/arjun/cadical_shim.h +92 -0
  347. pyvitri-0.3.0/vendor/arjun/emscripten_getrusage.cpp +21 -0
  348. pyvitri-0.3.0/vendor/arjun/upstream/ARJUN_PIN_SHA1 +1 -0
  349. pyvitri-0.3.0/vendor/arjun/upstream/PROVENANCE.md +158 -0
  350. pyvitri-0.3.0/vendor/arjun/upstream/arjun/.clang-tidy +92 -0
  351. pyvitri-0.3.0/vendor/arjun/upstream/arjun/.gitignore +20 -0
  352. pyvitri-0.3.0/vendor/arjun/upstream/arjun/CMakeLists.txt +614 -0
  353. pyvitri-0.3.0/vendor/arjun/upstream/arjun/LICENSE +22 -0
  354. pyvitri-0.3.0/vendor/arjun/upstream/arjun/README.md +124 -0
  355. pyvitri-0.3.0/vendor/arjun/upstream/arjun/arjunConfig.cmake.in +17 -0
  356. pyvitri-0.3.0/vendor/arjun/upstream/arjun/cmake/FindMLPACK.cmake +21 -0
  357. pyvitri-0.3.0/vendor/arjun/upstream/arjun/cmake/GetGitRevisionDescription.cmake +116 -0
  358. pyvitri-0.3.0/vendor/arjun/upstream/arjun/cmake/GetGitRevisionDescription.cmake.in +38 -0
  359. pyvitri-0.3.0/vendor/arjun/upstream/arjun/cmake/arjunConfig-buildtree.cmake.in +16 -0
  360. pyvitri-0.3.0/vendor/arjun/upstream/arjun/cmake/cmake_uninstall.cmake.in +24 -0
  361. pyvitri-0.3.0/vendor/arjun/upstream/arjun/flake.lock +172 -0
  362. pyvitri-0.3.0/vendor/arjun/upstream/arjun/flake.nix +176 -0
  363. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/CMakeLists.txt +295 -0
  364. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/GitSHA1.cpp.in +52 -0
  365. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/GitSHA1.h +34 -0
  366. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/aig_fuzz_gen.h +481 -0
  367. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/aig_fuzzer.cpp +622 -0
  368. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/aig_rewrite.cpp +1502 -0
  369. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/aig_rewrite.h +174 -0
  370. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/aig_rewrite_fuzzer.cpp +553 -0
  371. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/aig_to_cnf.cpp +39 -0
  372. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/aig_to_cnf.h +1339 -0
  373. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/aig_to_cnf_fuzzer.cpp +696 -0
  374. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/argparse.hpp +2183 -0
  375. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/arjun.cpp +3048 -0
  376. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/arjun.h +1940 -0
  377. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/arjun_c.cpp +368 -0
  378. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/arjun_c.h +169 -0
  379. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/arjun_c_priv.hpp +56 -0
  380. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/autarky.cpp +198 -0
  381. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/autarky.h +55 -0
  382. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/backward.cpp +565 -0
  383. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/cachedsolver.h +155 -0
  384. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/ccnr/ccnr.cpp +532 -0
  385. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/ccnr/ccnr.h +177 -0
  386. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/ccnr/ccnr_mersenne.h +187 -0
  387. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/config.h +157 -0
  388. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/constants.h +260 -0
  389. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/cut_cnf.h +293 -0
  390. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/example.cpp +106 -0
  391. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/extend.cpp +572 -0
  392. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/extend.h +63 -0
  393. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/file_read_helper.h +80 -0
  394. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/formula.h +297 -0
  395. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/interp_repair.cpp +1085 -0
  396. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/interp_repair.h +374 -0
  397. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/interpolant.cpp +164 -0
  398. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/interpolant.h +134 -0
  399. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/main.cpp +664 -0
  400. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/manthan.cpp +3167 -0
  401. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/manthan.h +322 -0
  402. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/manthan_learn.cpp +234 -0
  403. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/manthan_learn.h +57 -0
  404. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/metasolver.h +182 -0
  405. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/metasolver2.h +114 -0
  406. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/minimize.cpp +330 -0
  407. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/minimize.h +122 -0
  408. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/puura.cpp +358 -0
  409. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/puura.h +73 -0
  410. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/simplify.cpp +453 -0
  411. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/synth.cpp +300 -0
  412. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/synth.h +69 -0
  413. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/test-synth.cpp +610 -0
  414. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/test_aig_rewrite.cpp +785 -0
  415. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/test_aig_to_cnf.cpp +204 -0
  416. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/test_cut_cnf.cpp +109 -0
  417. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/test_interp_repair.cpp +231 -0
  418. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/time_mem.h +144 -0
  419. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/unate_def.cpp +637 -0
  420. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/unate_def.h +156 -0
  421. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/unate_def_common.cpp +87 -0
  422. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/unate_def_common.h +46 -0
  423. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/unate_def_rep.cpp +1460 -0
  424. pyvitri-0.3.0/vendor/arjun/upstream/arjun/src/unate_def_rep.h +249 -0
  425. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/.clang-format +4 -0
  426. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/.clang-tidy +88 -0
  427. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/.gitignore +14 -0
  428. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/CMakeLists.txt +128 -0
  429. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/LICENSE +21 -0
  430. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/NEWS.md +11 -0
  431. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/README.md +46 -0
  432. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/VERSION +1 -0
  433. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/build_emscripten.sh +26 -0
  434. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/build_norm.sh +20 -0
  435. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/build_notest.sh +20 -0
  436. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/build_release.sh +8 -0
  437. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/build_static_release.sh +20 -0
  438. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/cadiback.cpp +1719 -0
  439. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/config.hpp.in +3 -0
  440. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/flake.lock +49 -0
  441. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/flake.nix +68 -0
  442. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/include/cadiback.h +23 -0
  443. pyvitri-0.3.0/vendor/arjun/upstream/cadiback/main.cpp +94 -0
  444. pyvitri-0.3.0/vendor/arjun/upstream/cadical/.clang-format +4 -0
  445. pyvitri-0.3.0/vendor/arjun/upstream/cadical/.dockerignore +1 -0
  446. pyvitri-0.3.0/vendor/arjun/upstream/cadical/.gitignore +7 -0
  447. pyvitri-0.3.0/vendor/arjun/upstream/cadical/BUILD.md +115 -0
  448. pyvitri-0.3.0/vendor/arjun/upstream/cadical/CMakeLists.txt +102 -0
  449. pyvitri-0.3.0/vendor/arjun/upstream/cadical/CONTRIBUTING.md +48 -0
  450. pyvitri-0.3.0/vendor/arjun/upstream/cadical/Dockerfile +34 -0
  451. pyvitri-0.3.0/vendor/arjun/upstream/cadical/LICENSE +28 -0
  452. pyvitri-0.3.0/vendor/arjun/upstream/cadical/NEWS.md +313 -0
  453. pyvitri-0.3.0/vendor/arjun/upstream/cadical/README.md +65 -0
  454. pyvitri-0.3.0/vendor/arjun/upstream/cadical/VERSION +1 -0
  455. pyvitri-0.3.0/vendor/arjun/upstream/cadical/build_emscripten.sh +25 -0
  456. pyvitri-0.3.0/vendor/arjun/upstream/cadical/build_norm.sh +17 -0
  457. pyvitri-0.3.0/vendor/arjun/upstream/cadical/build_notest.sh +17 -0
  458. pyvitri-0.3.0/vendor/arjun/upstream/cadical/build_release.sh +5 -0
  459. pyvitri-0.3.0/vendor/arjun/upstream/cadical/build_static_release.sh +17 -0
  460. pyvitri-0.3.0/vendor/arjun/upstream/cadical/contrib/craigtracer.LICENSE.APACHE +15 -0
  461. pyvitri-0.3.0/vendor/arjun/upstream/cadical/contrib/craigtracer.LICENSE.MIT +9 -0
  462. pyvitri-0.3.0/vendor/arjun/upstream/cadical/contrib/craigtracer.cpp +998 -0
  463. pyvitri-0.3.0/vendor/arjun/upstream/cadical/contrib/craigtracer.hpp +199 -0
  464. pyvitri-0.3.0/vendor/arjun/upstream/cadical/contrib/craigtracer.md +213 -0
  465. pyvitri-0.3.0/vendor/arjun/upstream/cadical/flake.lock +27 -0
  466. pyvitri-0.3.0/vendor/arjun/upstream/cadical/flake.nix +61 -0
  467. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/README.md +12 -0
  468. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/analyze.cpp +1228 -0
  469. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/arena.cpp +30 -0
  470. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/arena.hpp +105 -0
  471. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/assume.cpp +614 -0
  472. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/averages.cpp +32 -0
  473. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/averages.hpp +35 -0
  474. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/backtrack.cpp +165 -0
  475. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/backward.cpp +230 -0
  476. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/bins.cpp +22 -0
  477. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/bins.hpp +22 -0
  478. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/block.cpp +824 -0
  479. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/block.hpp +37 -0
  480. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/cadical.cpp +1010 -0
  481. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/cadical.hpp +1341 -0
  482. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/ccadical.cpp +188 -0
  483. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/ccadical.h +69 -0
  484. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/checker.cpp +609 -0
  485. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/checker.hpp +171 -0
  486. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/clause.cpp +594 -0
  487. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/clause.hpp +181 -0
  488. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/collect.cpp +540 -0
  489. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/compact.cpp +546 -0
  490. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/condition.cpp +940 -0
  491. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/config.cpp +101 -0
  492. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/config.hpp +20 -0
  493. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/constrain.cpp +64 -0
  494. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/contract.cpp +27 -0
  495. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/contract.hpp +134 -0
  496. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/cover.cpp +704 -0
  497. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/cover.hpp +34 -0
  498. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/decide.cpp +253 -0
  499. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/decompose.cpp +743 -0
  500. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/decompose.hpp +23 -0
  501. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/deduplicate.cpp +170 -0
  502. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/drattracer.cpp +153 -0
  503. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/drattracer.hpp +53 -0
  504. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/elim.cpp +1139 -0
  505. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/elim.hpp +37 -0
  506. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/ema.cpp +95 -0
  507. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/ema.hpp +68 -0
  508. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/extend.cpp +280 -0
  509. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/external.cpp +1002 -0
  510. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/external.hpp +441 -0
  511. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/external_propagate.cpp +1223 -0
  512. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/file.cpp +506 -0
  513. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/file.hpp +210 -0
  514. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/flags.cpp +132 -0
  515. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/flags.hpp +83 -0
  516. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/flip.cpp +253 -0
  517. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/format.cpp +89 -0
  518. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/format.hpp +36 -0
  519. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/frattracer.cpp +274 -0
  520. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/frattracer.hpp +62 -0
  521. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/gates.cpp +760 -0
  522. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/heap.hpp +212 -0
  523. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/idruptracer.cpp +563 -0
  524. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/idruptracer.hpp +110 -0
  525. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/instantiate.cpp +367 -0
  526. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/instantiate.hpp +45 -0
  527. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/internal.cpp +1157 -0
  528. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/internal.hpp +1608 -0
  529. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/inttypes.hpp +28 -0
  530. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/ipasir.cpp +43 -0
  531. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/ipasir.h +37 -0
  532. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/level.hpp +33 -0
  533. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lidruptracer.cpp +656 -0
  534. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lidruptracer.hpp +117 -0
  535. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/limit.cpp +129 -0
  536. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/limit.hpp +80 -0
  537. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/logging.cpp +155 -0
  538. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/logging.hpp +84 -0
  539. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lookahead.cpp +520 -0
  540. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lratbuilder.cpp +941 -0
  541. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lratbuilder.hpp +195 -0
  542. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lratchecker.cpp +742 -0
  543. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lratchecker.hpp +166 -0
  544. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lrattracer.cpp +206 -0
  545. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lrattracer.hpp +57 -0
  546. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/lucky.cpp +384 -0
  547. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/message.cpp +212 -0
  548. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/message.hpp +65 -0
  549. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/minimize.cpp +224 -0
  550. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/mobical.cpp +5200 -0
  551. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/occs.cpp +38 -0
  552. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/occs.hpp +36 -0
  553. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/options.cpp +346 -0
  554. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/options.hpp +370 -0
  555. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/parse.cpp +435 -0
  556. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/parse.hpp +72 -0
  557. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/phases.cpp +44 -0
  558. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/phases.hpp +18 -0
  559. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/probe.cpp +933 -0
  560. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/profile.cpp +107 -0
  561. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/profile.hpp +248 -0
  562. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/proof.cpp +673 -0
  563. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/proof.hpp +118 -0
  564. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/propagate.cpp +569 -0
  565. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/queue.cpp +90 -0
  566. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/queue.hpp +64 -0
  567. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/radix.hpp +179 -0
  568. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/random.cpp +207 -0
  569. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/random.hpp +98 -0
  570. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/range.hpp +99 -0
  571. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/reap.cpp +127 -0
  572. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/reap.hpp +28 -0
  573. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/reduce.cpp +243 -0
  574. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/reluctant.hpp +82 -0
  575. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/rephase.cpp +336 -0
  576. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/report.cpp +285 -0
  577. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/resources.cpp +160 -0
  578. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/resources.hpp +16 -0
  579. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/restart.cpp +137 -0
  580. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/restore.cpp +267 -0
  581. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/score.cpp +51 -0
  582. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/score.hpp +16 -0
  583. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/shrink.cpp +504 -0
  584. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/signal.cpp +136 -0
  585. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/signal.hpp +33 -0
  586. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/solution.cpp +50 -0
  587. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/solver.cpp +1763 -0
  588. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/stats.cpp +619 -0
  589. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/stats.hpp +271 -0
  590. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/subsume.cpp +709 -0
  591. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/terminal.cpp +38 -0
  592. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/terminal.hpp +98 -0
  593. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/ternary.cpp +445 -0
  594. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/testing.hpp +24 -0
  595. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/tracer.hpp +172 -0
  596. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/transred.cpp +252 -0
  597. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/util.cpp +129 -0
  598. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/util.hpp +152 -0
  599. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/var.cpp +39 -0
  600. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/var.hpp +22 -0
  601. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/veripbtracer.cpp +391 -0
  602. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/veripbtracer.hpp +102 -0
  603. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/version.cpp +107 -0
  604. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/version.hpp +13 -0
  605. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/vivify.cpp +1366 -0
  606. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/vivify.hpp +24 -0
  607. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/walk.cpp +695 -0
  608. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/watch.cpp +106 -0
  609. pyvitri-0.3.0/vendor/arjun/upstream/cadical/src/watch.hpp +72 -0
  610. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/.clang-tidy +88 -0
  611. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/.gitignore +52 -0
  612. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/.gitmodules +35 -0
  613. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/AUTHORS +49 -0
  614. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/CMakeLists.txt +728 -0
  615. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/LICENSE.txt +57 -0
  616. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/MANIFEST.in +7 -0
  617. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/README.md +379 -0
  618. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/README_VERIFIER.md +170 -0
  619. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/AddGTestSuite.cmake +26 -0
  620. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/AddSTPGTest.cmake +33 -0
  621. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/CheckFloatPrecision.cmake +51 -0
  622. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/FindPerftools.cmake +139 -0
  623. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/FindPkgMacros.cmake +163 -0
  624. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/FindSQLITE3.cmake +31 -0
  625. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/FindTBB.cmake +111 -0
  626. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/FindValgrind.cmake +22 -0
  627. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/Findcargo.cmake +25 -0
  628. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/Findrustc.cmake +33 -0
  629. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/Findrustdoc.cmake +25 -0
  630. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/GetGitRevisionDescription.cmake +116 -0
  631. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/GetGitRevisionDescription.cmake.in +38 -0
  632. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/Rust.cmake +354 -0
  633. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/cmake_uninstall.cmake.in +24 -0
  634. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmake/cryptominisat5Config-buildtree.cmake.in +14 -0
  635. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cmsat_tablestructure.sql +486 -0
  636. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/cryptominisat5Config.cmake.in +18 -0
  637. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/flake.lock +94 -0
  638. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/flake.nix +85 -0
  639. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/manpage-extras +17 -0
  640. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/pyproject.toml +66 -0
  641. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/setup.cfg +1 -0
  642. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/setup.py +7 -0
  643. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/.color_coded +1 -0
  644. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/.kdev_include_paths +1 -0
  645. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/CMakeLists.txt +523 -0
  646. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/GitSHA1.cpp.in +62 -0
  647. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/GitSHA1.h +29 -0
  648. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/Vec.h +321 -0
  649. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/alg.h +43 -0
  650. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/argparse.hpp +2183 -0
  651. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/avgcalc.h +200 -0
  652. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/backbone.cpp +229 -0
  653. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/bitarray.h +141 -0
  654. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/boundedqueue.h +196 -0
  655. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cardfinder.cpp +416 -0
  656. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cardfinder.h +80 -0
  657. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr.cpp +533 -0
  658. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr.h +179 -0
  659. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr_cms.cpp +374 -0
  660. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr_cms.h +78 -0
  661. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr_mersenne.h +187 -0
  662. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr_oracle.cpp +526 -0
  663. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr_oracle.h +158 -0
  664. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr_oracle_pre.cpp +92 -0
  665. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ccnr_oracle_pre.h +60 -0
  666. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cl_predictors_abs.cpp +209 -0
  667. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cl_predictors_abs.h +111 -0
  668. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cl_predictors_lgbm.cpp +156 -0
  669. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cl_predictors_lgbm.h +79 -0
  670. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cl_predictors_py.cpp +289 -0
  671. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cl_predictors_py.h +103 -0
  672. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cl_predictors_xgb.cpp +166 -0
  673. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cl_predictors_xgb.h +82 -0
  674. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/clabstraction.h +51 -0
  675. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/clause.h +625 -0
  676. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/clauseallocator.cpp +364 -0
  677. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/clauseallocator.h +129 -0
  678. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/clausecleaner.cpp +580 -0
  679. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/clausecleaner.h +94 -0
  680. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cloffset.h +41 -0
  681. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cms_breakid.cpp +482 -0
  682. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cms_breakid.h +92 -0
  683. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cms_windows_includes.h +65 -0
  684. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cnf.cpp +872 -0
  685. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cnf.h +713 -0
  686. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/community_finder.cpp +150 -0
  687. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/community_finder.h +46 -0
  688. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/completedetachreattacher.cpp +202 -0
  689. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/completedetachreattacher.h +85 -0
  690. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/constants.h +259 -0
  691. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cryptominisat.cpp +1945 -0
  692. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cryptominisat.h +365 -0
  693. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cryptominisat_c.cpp +187 -0
  694. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cryptominisat_c.h +98 -0
  695. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/cset.h +194 -0
  696. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/datasync.cpp +684 -0
  697. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/datasync.h +128 -0
  698. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/datasyncserver.cpp +464 -0
  699. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/datasyncserver.h +82 -0
  700. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/dimacsparser.h +719 -0
  701. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/distillerbin.cpp +312 -0
  702. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/distillerbin.h +104 -0
  703. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/distillerlitrem.cpp +381 -0
  704. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/distillerlitrem.h +101 -0
  705. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/distillerlong.cpp +656 -0
  706. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/distillerlong.h +106 -0
  707. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/distillerlongwithimpl.cpp +487 -0
  708. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/distillerlongwithimpl.h +181 -0
  709. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/frat.h +433 -0
  710. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/fuzz.cpp +71 -0
  711. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/gatefinder.cpp +374 -0
  712. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/gatefinder.h +163 -0
  713. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/gaussian.cpp +1509 -0
  714. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/gaussian.h +232 -0
  715. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/gausswatched.h +69 -0
  716. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/get_clause_query.cpp +267 -0
  717. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/get_clause_query.h +70 -0
  718. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/gqueuedata.h +56 -0
  719. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/hasher.h +61 -0
  720. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/heap.h +229 -0
  721. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/hyperengine.cpp +675 -0
  722. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/hyperengine.h +97 -0
  723. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/intree.cpp +410 -0
  724. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/intree.h +123 -0
  725. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ipasir.cpp +299 -0
  726. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/ipasir.h +169 -0
  727. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/lucky.cpp +328 -0
  728. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/lucky.h +51 -0
  729. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/main.cpp +1385 -0
  730. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/main.h +115 -0
  731. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/main_common.cpp +77 -0
  732. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/main_common.h +47 -0
  733. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/main_emscripten.cpp +139 -0
  734. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/main_exe.cpp +56 -0
  735. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/main_mpi.cpp +266 -0
  736. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/matrixfinder.cpp +355 -0
  737. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/matrixfinder.h +91 -0
  738. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/mpicosat/LICENSE +20 -0
  739. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/mpicosat/NEWS +162 -0
  740. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/mpicosat/README +5 -0
  741. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/mpicosat/mpico_config.h +3 -0
  742. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/mpicosat/mpicosat.c +8650 -0
  743. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/mpicosat/mpicosat.h +673 -0
  744. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/mpicosat/version.c +14 -0
  745. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/mystack.h +77 -0
  746. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/nomutex.h +60 -0
  747. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/occsimplifier.cpp +5280 -0
  748. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/occsimplifier.h +569 -0
  749. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/oracle/argparse.hpp +2183 -0
  750. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/oracle/assump_fuzz_oracle.cpp +782 -0
  751. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/oracle/oracle.cpp +1525 -0
  752. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/oracle/oracle.h +379 -0
  753. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/oracle/oracle_main.cpp +257 -0
  754. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/oracle_use.cpp +675 -0
  755. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/packedmatrix.h +201 -0
  756. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/packedrow.cpp +244 -0
  757. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/packedrow.h +328 -0
  758. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/pre.js +17 -0
  759. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/predict_func_type.h +39 -0
  760. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/probe.cpp +240 -0
  761. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/propby.h +346 -0
  762. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/propby_backup.h +232 -0
  763. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/propbyforgraph.h +151 -0
  764. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/propengine.cpp +1160 -0
  765. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/propengine.h +742 -0
  766. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/reducedb.cpp +1313 -0
  767. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/reducedb.h +145 -0
  768. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/satzilla_features.cpp +117 -0
  769. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/satzilla_features.h +127 -0
  770. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/satzilla_features_calc.cpp +407 -0
  771. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/satzilla_features_calc.h +82 -0
  772. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sccfinder.cpp +202 -0
  773. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sccfinder.h +164 -0
  774. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/searcher.cpp +3729 -0
  775. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/searcher.h +636 -0
  776. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/searchhist.h +160 -0
  777. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/searchstats.cpp +316 -0
  778. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/searchstats.h +108 -0
  779. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/shareddata.h +87 -0
  780. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/signalcode.cpp +69 -0
  781. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/signalcode.h +38 -0
  782. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sls.cpp +108 -0
  783. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sls.h +48 -0
  784. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/solutionextender.cpp +197 -0
  785. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/solutionextender.h +71 -0
  786. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/solver.cpp +3767 -0
  787. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/solver.h +618 -0
  788. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/solverconf.cpp +428 -0
  789. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/solverconf.h +521 -0
  790. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/solvertypes.h +483 -0
  791. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/solvertypesmini.h +609 -0
  792. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sql_tablestructure.h +27 -0
  793. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sqlitestats.cpp +1093 -0
  794. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sqlitestats.h +224 -0
  795. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sqlstats.cpp +28 -0
  796. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/sqlstats.h +174 -0
  797. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/str_impl_w_impl.cpp +209 -0
  798. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/str_impl_w_impl.h +91 -0
  799. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/streambuffer.h +218 -0
  800. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/subsumeimplicit.cpp +224 -0
  801. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/subsumeimplicit.h +98 -0
  802. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/subsumestrengthen.cpp +901 -0
  803. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/subsumestrengthen.h +156 -0
  804. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/time_mem.h +223 -0
  805. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/touchlist.h +183 -0
  806. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/trim.h +44 -0
  807. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/vardata.h +123 -0
  808. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/vardistgen.cpp +137 -0
  809. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/vardistgen.h +70 -0
  810. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/varreplacer.cpp +1269 -0
  811. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/varreplacer.h +342 -0
  812. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/varupdatehelper.h +144 -0
  813. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/vmtf.h +96 -0
  814. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/watchalgos.h +215 -0
  815. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/watcharray.h +196 -0
  816. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/watched.h +357 -0
  817. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/xor.h +108 -0
  818. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/xorfinder.cpp +446 -0
  819. pyvitri-0.3.0/vendor/arjun/upstream/cryptominisat/src/xorfinder.h +356 -0
  820. pyvitri-0.3.0/vendor/arjun/upstream/sbva/.clang-tidy +88 -0
  821. pyvitri-0.3.0/vendor/arjun/upstream/sbva/.gitignore +4 -0
  822. pyvitri-0.3.0/vendor/arjun/upstream/sbva/CMakeLists.txt +411 -0
  823. pyvitri-0.3.0/vendor/arjun/upstream/sbva/LICENSE +21 -0
  824. pyvitri-0.3.0/vendor/arjun/upstream/sbva/README.md +70 -0
  825. pyvitri-0.3.0/vendor/arjun/upstream/sbva/cmake/GetGitRevisionDescription.cmake +116 -0
  826. pyvitri-0.3.0/vendor/arjun/upstream/sbva/cmake/GetGitRevisionDescription.cmake.in +38 -0
  827. pyvitri-0.3.0/vendor/arjun/upstream/sbva/cmake/cmake_uninstall.cmake.in +24 -0
  828. pyvitri-0.3.0/vendor/arjun/upstream/sbva/cmake/sbvaConfig-buildtree.cmake.in +8 -0
  829. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/COPYING.APACHE +203 -0
  830. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/COPYING.BSD +26 -0
  831. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/COPYING.GPL +674 -0
  832. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/COPYING.LGPL +502 -0
  833. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/COPYING.MINPACK +51 -0
  834. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/COPYING.MPL2 +373 -0
  835. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/COPYING.README +18 -0
  836. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/Core +384 -0
  837. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/SparseCore +69 -0
  838. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/ArithmeticSequence.h +413 -0
  839. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Array.h +417 -0
  840. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/ArrayBase.h +226 -0
  841. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/ArrayWrapper.h +209 -0
  842. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Assign.h +90 -0
  843. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/AssignEvaluator.h +1010 -0
  844. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Assign_MKL.h +178 -0
  845. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/BandMatrix.h +353 -0
  846. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Block.h +448 -0
  847. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/BooleanRedux.h +162 -0
  848. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/CommaInitializer.h +164 -0
  849. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/ConditionEstimator.h +175 -0
  850. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/CoreEvaluators.h +1741 -0
  851. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/CoreIterators.h +132 -0
  852. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/CwiseBinaryOp.h +183 -0
  853. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
  854. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/CwiseTernaryOp.h +197 -0
  855. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/CwiseUnaryOp.h +103 -0
  856. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/CwiseUnaryView.h +132 -0
  857. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/DenseBase.h +701 -0
  858. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/DenseCoeffsBase.h +685 -0
  859. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/DenseStorage.h +652 -0
  860. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Diagonal.h +258 -0
  861. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/DiagonalMatrix.h +391 -0
  862. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/DiagonalProduct.h +28 -0
  863. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Dot.h +318 -0
  864. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/EigenBase.h +160 -0
  865. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/ForceAlignedAccess.h +150 -0
  866. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Fuzzy.h +155 -0
  867. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/GeneralProduct.h +465 -0
  868. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/GenericPacketMath.h +1040 -0
  869. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/GlobalFunctions.h +194 -0
  870. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/IO.h +258 -0
  871. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/IndexedView.h +237 -0
  872. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Inverse.h +117 -0
  873. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Map.h +171 -0
  874. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/MapBase.h +310 -0
  875. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/MathFunctions.h +2057 -0
  876. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/MathFunctionsImpl.h +200 -0
  877. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Matrix.h +565 -0
  878. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/MatrixBase.h +547 -0
  879. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/NestByValue.h +85 -0
  880. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/NoAlias.h +109 -0
  881. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/NumTraits.h +335 -0
  882. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
  883. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/PermutationMatrix.h +605 -0
  884. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/PlainObjectBase.h +1128 -0
  885. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Product.h +191 -0
  886. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/ProductEvaluators.h +1179 -0
  887. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Random.h +218 -0
  888. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Redux.h +515 -0
  889. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Ref.h +381 -0
  890. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Replicate.h +142 -0
  891. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Reshaped.h +454 -0
  892. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/ReturnByValue.h +119 -0
  893. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Reverse.h +217 -0
  894. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Select.h +164 -0
  895. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/SelfAdjointView.h +365 -0
  896. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
  897. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Solve.h +188 -0
  898. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/SolveTriangular.h +235 -0
  899. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/SolverBase.h +168 -0
  900. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/StableNorm.h +251 -0
  901. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/StlIterators.h +463 -0
  902. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Stride.h +116 -0
  903. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Swap.h +68 -0
  904. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Transpose.h +464 -0
  905. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Transpositions.h +386 -0
  906. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/TriangularMatrix.h +1001 -0
  907. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/VectorBlock.h +96 -0
  908. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/VectorwiseOp.h +784 -0
  909. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/Visitor.h +381 -0
  910. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AVX/Complex.h +372 -0
  911. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
  912. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
  913. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
  914. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
  915. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
  916. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
  917. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
  918. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
  919. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
  920. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
  921. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
  922. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
  923. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
  924. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
  925. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
  926. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
  927. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
  928. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
  929. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/Default/Half.h +942 -0
  930. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/Default/Settings.h +49 -0
  931. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
  932. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
  933. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
  934. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
  935. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
  936. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/MSA/Complex.h +648 -0
  937. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
  938. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
  939. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/NEON/Complex.h +584 -0
  940. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
  941. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
  942. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
  943. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
  944. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SSE/Complex.h +351 -0
  945. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
  946. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
  947. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
  948. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
  949. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
  950. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
  951. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
  952. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
  953. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
  954. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
  955. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
  956. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
  957. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
  958. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
  959. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
  960. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
  961. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
  962. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/functors/StlFunctors.h +166 -0
  963. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
  964. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
  965. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
  966. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
  967. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
  968. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
  969. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
  970. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
  971. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
  972. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/Parallelizer.h +180 -0
  973. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
  974. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
  975. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
  976. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
  977. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
  978. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
  979. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
  980. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
  981. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
  982. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
  983. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
  984. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
  985. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
  986. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/BlasUtil.h +583 -0
  987. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
  988. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/Constants.h +563 -0
  989. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
  990. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
  991. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
  992. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/IntegralConstant.h +272 -0
  993. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/MKL_support.h +137 -0
  994. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/Macros.h +1464 -0
  995. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/Memory.h +1163 -0
  996. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/Meta.h +812 -0
  997. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/NonMPL2.h +3 -0
  998. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
  999. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/ReshapedHelper.h +51 -0
  1000. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/StaticAssert.h +221 -0
  1001. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/SymbolicIndex.h +293 -0
  1002. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/Core/util/XprHelper.h +856 -0
  1003. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/AmbiVector.h +378 -0
  1004. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/CompressedStorage.h +274 -0
  1005. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
  1006. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
  1007. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseAssign.h +270 -0
  1008. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseBlock.h +571 -0
  1009. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseColEtree.h +206 -0
  1010. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
  1011. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
  1012. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
  1013. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
  1014. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
  1015. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseDot.h +98 -0
  1016. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
  1017. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseMap.h +305 -0
  1018. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
  1019. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
  1020. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparsePermutation.h +178 -0
  1021. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseProduct.h +181 -0
  1022. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseRedux.h +49 -0
  1023. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseRef.h +397 -0
  1024. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
  1025. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
  1026. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
  1027. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseTranspose.h +92 -0
  1028. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
  1029. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseUtil.h +186 -0
  1030. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseVector.h +478 -0
  1031. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/SparseView.h +254 -0
  1032. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/SparseCore/TriangularSolver.h +315 -0
  1033. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/misc/Image.h +82 -0
  1034. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/misc/Kernel.h +79 -0
  1035. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/misc/RealSvd2x2.h +55 -0
  1036. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/misc/blas.h +440 -0
  1037. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/misc/lapack.h +152 -0
  1038. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/misc/lapacke_mangling.h +17 -0
  1039. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
  1040. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
  1041. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/BlockMethods.h +1442 -0
  1042. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
  1043. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
  1044. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/IndexedViewMethods.h +262 -0
  1045. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
  1046. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
  1047. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/Eigen/src/plugins/ReshapedMethods.h +149 -0
  1048. pyvitri-0.3.0/vendor/arjun/upstream/sbva/eigen-3.4.0/signature_of_eigen3_matrix_library +1 -0
  1049. pyvitri-0.3.0/vendor/arjun/upstream/sbva/flake.lock +27 -0
  1050. pyvitri-0.3.0/vendor/arjun/upstream/sbva/flake.nix +54 -0
  1051. pyvitri-0.3.0/vendor/arjun/upstream/sbva/sbvaConfig.cmake.in +19 -0
  1052. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/CMakeLists.txt +121 -0
  1053. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/GitSHA1.cpp.in +46 -0
  1054. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/GitSHA1.hpp +30 -0
  1055. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/argparse.hpp +2183 -0
  1056. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/getdelim.h +85 -0
  1057. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/getline.h +48 -0
  1058. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/main.cpp +172 -0
  1059. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/murmur.h +25 -0
  1060. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/sbva.cpp +1027 -0
  1061. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/sbva.h +81 -0
  1062. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/test.cpp +70 -0
  1063. pyvitri-0.3.0/vendor/arjun/upstream/sbva/src/time_mem.h +139 -0
@@ -0,0 +1,94 @@
1
+ # Changelog
2
+
3
+ ## 0.3.0
4
+
5
+ ### Migrating from 0.2
6
+
7
+ - Variables are one-based DIMACS IDs in `1..=i32::MAX`. Replace tuple
8
+ construction with `VarId::new`, use `get` for the ID and `idx` for an array
9
+ index. `VarId::from_idx` converts an array index back to an ID.
10
+ - Build formulas with `CnfFormula::new`; use `num_vars()`, `clauses()` and
11
+ `into_clauses()` in place of direct field access.
12
+ - Replace `ShowSet::from_zero_based` with `from_vars` after converting IDs,
13
+ and `as_zero_based` / `to_dimacs` with `as_dimacs`. `from_vars` and `insert`
14
+ no longer return `Result`.
15
+ - Replace `GoatdPolishing::with_wall_limit` with `with_work_limit`; the limit
16
+ measures construction work rather than elapsed wall time.
17
+ - Use `Vtree::try_linear_from_order` for caller-supplied orders. The existing
18
+ `linear_from_order` requires a nonempty order without repeated variables.
19
+ - `GoatdPolishing::with_separator`, `GoatdSeparatorConfig` and
20
+ `score::check_score_env` were removed. Read environment defaults through
21
+ `PortfolioKnobs::with_env_defaults`.
22
+ - `FrontendRetryConfig` has a new field, `arjun_skip_monotone`. End a
23
+ struct literal with `..FrontendRetryConfig::default()`.
24
+
25
+ ### Changes
26
+
27
+ - Package the score-vtree example and update the locked random-number
28
+ dependency to include its SSE2 compatibility fix.
29
+
30
+ - Bound component-cache colour refinement by deterministic work, so sparse
31
+ components spend less time finding cache keys.
32
+
33
+ - Reject variable counts outside the signed DIMACS domain, invalid peak
34
+ tolerances, mismatched preprocessing metadata and incorrect export leaves.
35
+
36
+ - Stop Arjun's independent-support minimization once it has used three quarters of the Arjun budget left when it starts, keeping the last quarter for the stage after it, which eliminates the variables minimization has shown determined. A minimization that met the deadline used to leave that stage no time, and the run returned its input unchanged after spending its whole budget. On a family of track-1 formulas of the Model Counting Competitions with about 3300 variables, minimization had by then shown about four fifths of them determined; with the reserve, the run removes them in under a second. A minimization that finishes earlier is unaffected. Counted by a bottom-up TDD compiler at a 120 s limit, paired on one machine: over 780 track-1 formulas, 608 solved against 607 (two gained, one lost) in 1.3% less time on the formulas solved either way; over the 257 of them on which Arjun takes at least 2 s, 176 against 175 in 5.8% less time. At a one-hour limit, on 30 formulas solved only with more time, the same 23 are solved in 1.7% less time. No count differs.
37
+ - Keep asking about a backbone candidate whose single probe stops at its conflict limit, instead of setting it aside. The next probe asks about that literal and the seven candidates after it in one solve that runs to an answer, so the clauses the solver learnt in the capped attempt go on to settle it. Set aside, every hard candidate after it also spent a full capped probe before any of them was proved, though once one is proved propagation usually fixes the rest for free. Counted at two minutes over the 780 solvable track-1 instances of the Model Counting Competitions, paired on one machine, the backbone phase takes 6% less time on the 602 instances both versions solve and finds the same backbone on every one; one instance whose backbone used to run past the limit is solved; no count differs. A probe that still runs out at the run-to-answer bound is set aside for the recovery pass as before. A literal is asked about this way once: when the probe's counter-model refutes one of the other seven and leaves the literal a candidate, its next probe is capped again, and if that one stops undecided too the literal is set aside, since a run-to-answer probe on it alone can take the whole budget. Paired over the same 780 at two minutes against a version that let that next probe run to an answer, counting solves 610 against 607 (four gained, among them two whose backbone phase used to run into the limit on such a probe, one lost) in 1.0% less time on the 606 both solve, and compiling 531 against 531 (two gained, two lost, all within ten seconds of the limit in one of the runs or known to vary between runs) in 1.3% less time, with 7% less backbone time, on the 529 both compile; the backbone is the same on every instance both solve, and no count differs.
38
+ - Build a component's vtree once for all its renamed copies. The cache a build keeps over its components was keyed on the component's clauses in its local numbering, which follows the order of the formula's variables, so copies of one gadget placed differently in the formula missed each other and each got its own portfolio. The key is now the clauses and show set relabelled into a canonical numbering, from colour refinement on the signed variable-clause incidence graph with the remaining ties broken in turn; equal keys hold the same relabelled clauses, so a hit is always an exact isomorphism, and a tie between variables that are not interchangeable can only cost a hit. Cached vtrees, the retained candidate vtrees and their bag metadata are stored in the canonical numbering and renamed into each copy's numbering on use. On mc2023_track1_124 of the 2023 Model Counting Competition, whose 696 components include 91 renamed copies of one 67-variable component, counting with a bottom-up TDD compiler at a 120 s limit takes 75 s instead of 117 s over three runs each. Over 780 track-1 formulas at 120 s, paired on one machine, counting solves 606 against 603 and none is lost; compiling solves 526 against 527, and the three formulas that moved, re-run three times each, compile the same with and without the change or, for one, in two of three runs only with it. No count differs.
39
+ - End the Arjun run with no reduction when its independent-support minimization has made no progress by a checkpoint partway through it. The checkpoint falls at 30% of the Arjun budget remaining when minimization starts; if the support has then shrunk by less than 5% of its starting size (counting the variables not yet tested as still in it), minimization stops and the budget it would have used stays with the rest of the run. The check sits in minimization's own loop, where its deadline check sits, so a minimization that is making progress is untouched; stopping it and restarting from the partial support instead repeats its setup and lost formulas. In paired runs at a 120 s limit over 257 formulas on which Arjun takes at least 2 s, two more formulas were solved and none lost, and the formulas solved either way that the stop hit took 335 s in total instead of 419 s. It applies under `mc`, `wmc`, `pmc` and `pwmc`. The vendored Arjun gains `Arjun::set_progress_checkpoint` and `Arjun::stopped_no_progress`, recorded in `vendor/arjun/upstream/PROVENANCE.md`; unset, it is bit-identical.
40
+ - Let a caller skip the Arjun stage under `mc` when the formula it would be handed is monotone up to renaming: every variable occurs, always in the same polarity, and every clause names two variables or more. `ArjunOptions::skip_monotone` (`VITRI_ARJUN_SKIP_MONOTONE`) asks for the skip; it is off by default and refused outside `mc` and with the stage off. No variable of such a formula is a backbone or defined by the others, so Arjun has none to eliminate; the skip forgoes only its work on clauses, subsumed-clause removal and bounded variable addition. On the 18 track-1 instances of the Model Counting Competitions whose simplified formula is of this kind, Arjun gave up at its budget on six and returned as many variables or more on the other twelve; counted at two minutes with the skip, paired on one machine, three more of the 18 are solved, none is lost and no count differs. `PreprocessBundle::stages` reports the skip as `SkipReason::Monotone`; `docs/preprocessing.md` gives the argument and what the skip forgoes. A frontend session keeps its simplify checkpoint when the stage was skipped this way, and `FrontendRetryConfig::arjun_skip_monotone` lets a retry run it, so a caller whose compile of the unreduced formula failed can try the reduction without simplifying again. At a one-hour limit, a compiler that does so counts two instances it did not count with the skip alone, of the four such track-1 instances of the 2025 and 2026 competitions whose unreduced compile gives up.
41
+ - Add `ArjunBudget::derived_duration`, the budget `ArjunBudget::Derived` gives a run with a given wall-clock hint before the deadline clamps it, so a caller that sizes an exact or retry budget from the same policy need not restate it.
42
+ - Run the second round of CaDiCaL clause simplification only when the Tarjan stage, re-run over the first round's result, finds an equivalence class the first round had not. The stage binds each literal it merges to its representative with two binary clauses, so the re-run always found the first round's classes again and the second round ran on every formula that had any.
43
+ - Build the implication graph Tarjan's search for equivalent literals runs on over the variables the binary clauses mention, stored flat, and allocate no group for a literal equivalent to no other; unit propagation and backbone stripping index the clauses in flat arrays instead of a list or a hash set per literal. The cost of each now follows the clauses rather than the declared variable count. The classes, their representatives and the reduced formula are unchanged.
44
+ - Stop each SAT equivalence probe at 16,000 conflicts under the wall clock as well as the deterministic one, and end the probing at the second probe that stops undecided. Under the wall clock a probe had no conflict limit, so one pair that no short refutation settles could spend the whole probing budget, and the deterministic clock let each such probe run to 64,000 conflicts. An undecided pair is skipped, never assumed equivalent, and the equivalences proved before the probing ends are kept, so counts are unchanged; where the probing now ends early, fewer equivalences may be merged.
45
+ - Give goatd, in a portfolio build under a deadline, the lesser of its fair share and the time the FlowCutter entries took, but at least twelve seconds when its share allows. On a formula FlowCutter decomposed quickly, most of goatd's search ran past the last tree it kept; with the bound it returns the same trees sooner on most such formulas.
46
+ - Walk `flowcutter-primal` ahead of `flowcutter-incidence` on a formula with at least 20 clauses per variable. The incidence graph has a vertex per clause, so on such a formula its decomposition costs many times the primal one, and walked second it is the view the bound on the second FlowCutter build stops. The walk order also breaks ties, so there a tie between the two views goes to the primal one.
47
+ - Bound the second FlowCutter view of a portfolio build under a deadline by the time the first one took to find its decomposition, or one second when that is more. The bound stops the search without changing how it searches. On the compile-mode portfolio builds of the 780 solvable track-1 instances that took ten seconds or more, the second view ran longer than the first on 13 of 36 and won none of those; with the bound construction is shorter and every instance compiles as before. Without a deadline the step-budgeted search is unchanged.
48
+ - Leave a function-preserving split to the portfolio when one component holds more than three quarters of the variables, even when the formula is large and clause-dense enough for `force` on every component. Of the 42 reductions of the 780 solvable track-1 instances that rule admitted, the three that compiled only under the portfolio are each one component holding 98% or more of the variables beside a few small ones, while no component of the 17 that compiled only under `force` holds more than 63%.
49
+ - Build every component with `force` when a portfolio build of a function-preserving formula (`--mode compile`) splits into components and the formula has at least 1000 variables and at least 4.5 clauses per variable. Over function-preserving reductions of the 780 solvable track-1 instances of the Model Counting Competitions, compiled into tree decision diagrams at two minutes, the 38 formulas the rule admits compiled 17 more under `force` and none fewer, in less total time on those both compiled; outside the rule the portfolio compiles far more. Counting-mode reductions are unaffected: there the same rule gained nothing. `SelectionCtx::preserves_function` carries the condition; the full pipeline sets it from the run's mode and construction-only calls default to `false`.
50
+ - Read the clock once every 1024 decisions, instead of at every decision, when Arjun's search for defined variables checks the deadline. The search makes millions of decisions, and on a machine whose clock has no fast path each read takes about a microsecond, so the check could more than double the time independent-support minimization takes, run it into its deadline and lose the rest of the reduction. Once a read finds the deadline passed, every candidate not yet tested is kept as before.
51
+ - Skip Arjun's oracle in the `pwmc` pre-pass by default: `OracleCaps::weighted_projected` and `VITRI_PWMC_ARJUN_ORACLE_MAX_VARS` default to 0. On weighted projected instances the oracle was the largest part of the pre-pass; skipping it left every count unchanged and cut total time. The `pmc` default is unchanged.
52
+ - Stop Arjun's independent-support minimization at the deadline when it falls inside the search for defined variables. That search tests every candidate inside one solve, and the deadline was checked only between solves, so a budget that ran out during it ran on until the solve had tested every candidate, or until the process holding it was killed and its reduction lost. Past the deadline each candidate not yet tested is now kept in the support, as one that runs out of conflicts already was.
53
+ - Stop projected variable elimination at the run's deadline. Under `pmc` and `pwmc`, the bounded elimination of hidden variables after show-frozen strengthening ignored the deadline, so a large projected formula could run far past the run's wall. It now stops once the deadline passes and keeps the eliminations it finished; each is exact existential quantification, so the projected count is unchanged and only fewer hidden variables are removed. Resolvents are merged from the two sorted clauses instead of sorted from their concatenation, with identical output, so a run without a deadline reduces exactly as before. `projection::eliminate_hidden` takes no deadline and still runs to its fixpoint.
54
+ - Bound the default goatd polishing stage by work instead of by a hundred milliseconds of real time, so the vtree a construction polishes to no longer depends on how fast or how loaded the machine is. The stage runs on the construction's work clock, arming it for the stage when nothing else has, reads it between the kernel's scheduling steps as well as between proposals, and stops after 110 milliseconds of it, about what the real-time bound bought on a typical instance. `GoatdPolishing::with_wall_limit` is renamed `GoatdPolishing::with_work_limit`.
55
+ - Charge a reading of a tree decomposition 400 work units for each variable, adjacency entry and literal it covers, instead of one. That is about what a reading costs against the units the decomposition kernels charge, so a `ConstructionBudget::Deterministic` budget spent on readings lasts about as long as the wall it was sized for rather than far longer, and a deterministic construction considers fewer readings for the same budget.
56
+ - Probe for backbones and literal equivalences over the variables a clause mentions only. A declared variable that no clause mentions was still loaded into the probing solver, which decided it on every probe and read it back with every model, and one numbered above every mentioned variable was probed as a backbone candidate. Such a variable is never a backbone nor equivalent to another, so it is now counted as flippable without a probe, and the reported probe count no longer includes the probes once spent on it.
57
+ - Read a missing complementary weight the way the Model Counting Competition format defines it, in every mode: when `c p weight` lines give one literal of a variable a weight `0 < w < 1` and the other none, the other weighs `1 - w`; a lone weight outside that range is refused, naming the literal; a variable with no weight line weighs 1 both ways.
58
+ - Add `spec::is_structural_spec`, which says whether a spec builds from the formula's graph, so a consumer compiling components separately makes the same call the split builder does; and make `CnfFormula::component_vars` public, the sorted variables of a clause group without the sub-formula.
59
+ - Read `root=centroid` as the centroid alone. A named root other than `leaf` also enumerated the first bag, so the conversion searched both, and one with no formula to score against rooted at the first bag.
60
+ - Read `VITRI_SCORE_AGG_MARGIN=none` whatever its case, like every other word-valued variable.
61
+ - Show the vtree drawing on the browser page. The empty-state panel has `display: flex` in the stylesheet, which beat the `hidden` attribute and left the panel over the canvas; `[hidden]` is now an author rule. A check in the module workflow reads the page against its stylesheet for that.
62
+ - Make `VarId` a type that cannot hold 0, which names no variable: the field is private over a `NonZeroU32`, `VarId::new` and `VarId::try_from_dimacs` are the checked constructors, `VarId::get` reads the number, and `VarId::all` enumerates a variable space. `ShowSet::from_dimacs_ids` still refuses a 0, since it is where file numbers become variables; `ShowSet::from_vars` and `ShowSet::insert` no longer return `Result`.
63
+ - Make `CnfFormula`'s fields private, so a formula cannot carry a clause naming a variable its
64
+ declared count does not cover. `CnfFormula::new` is the checked constructor, `num_vars()` and
65
+ `clauses()` read the parts, and `into_clauses` takes the clauses out.
66
+ - Parse a file whose header declares no variables, such as `p cnf 0 1` over the empty clause, instead of reporting its problem line as missing.
67
+ - Honour the construction deadline in bisection — the dials a bisection runs under carry the caller's deadline — and spend the smaller of the soft ceiling and the time left on a goatd elimination pass.
68
+ - Report an empty tree decomposition or a formula with no variables as `VitriError::Input` from `td_to_vtree`, where it asserted.
69
+ - Label `.dot` nodes by `topo_pos`, the numbering the `.vtree` file beside them uses.
70
+ - Refuse a `preprocess.json` or `components.json` whose `format` tag, or whose rank metric, this version does not understand.
71
+ - Check a `VtreeBuild` against its components before writing anything, so a refused build leaves no partial bundle behind.
72
+ - Number variables from 1: a `VarId` is the DIMACS variable of the same number, so `VarId::to_dimacs`, `VarId::from_dimacs` and `Literal`'s conversions carry no offset, and `VarId::idx` / `VarId::from_idx` are the array-index conversions. `ShowSet::from_zero_based`, `ShowSet::as_zero_based` and `ShowSet::to_dimacs` are replaced by `ShowSet::from_vars` and `ShowSet::as_dimacs`. File formats are unchanged.
73
+ - Add `vitri::request`: run a JSON-describable request and get the bundle files in memory with a summary.
74
+ - Run the budgeted Arjun stage inline unless the process is known to have one thread and keeps its children waitable.
75
+ - Add a C ABI in `bindings/c`: shared and static libraries over `vitri::request`, with a generated header.
76
+ - Publish a Linux x86_64 archive of the command-line tool with each release, bundling GMP built from its attached source.
77
+ - Add Python bindings in `bindings/python`: `vitri.prepare` returns the bundle and summary of `vitri::request::prepare`.
78
+ - Build for `wasm32-unknown-emscripten` with the Arjun stage, linking GMP as side modules from the prefix `VITRI_EMSCRIPTEN_PREFIX` names.
79
+ - Add `bindings/wasm`, which builds vitri as a WebAssembly module for the browser, and publish that module with GMP's side modules and source.
80
+ - Publish a page that runs vitri in the browser at the root of the GitHub Pages site, beside the rustdoc.
81
+ - Add `--version` to the command-line tool, which prints the same version string the C, Python and wasm surfaces hand out.
82
+ - Package `docs/showcase/*.cnf`, so the published crate carries the instance `docs/showcase.md` runs its commands on.
83
+ - Report the emitted vtree's scores on `request::VtreeSummary::scores`: the same five numbers selection ranked it on, so a caller reads them without rescoring the tree.
84
+ - Show those scores on the browser page, and link the page from the README.
85
+ - Remove `GoatdPolishing::with_separator`, the `GoatdSeparatorConfig` re-export it existed for, and `score::check_score_env`. Nothing called any of them; the argv-time environment read `check_score_env` was named for still happens in `PortfolioKnobs::with_env_defaults`.
86
+ - Publish GNU's detached signature for the GMP tarball beside it on a release, and record in `docs/THIRD-PARTY.md` where the sources of a binary distribution are and that the Rust standard library is linked into it.
87
+
88
+ ## 0.2.0
89
+
90
+ - Upgrade Goatd to 0.2.1.
91
+ - Configure final refinement and bipartite lifting with `GoatdPolishing` and `GoatdLift`.
92
+ - Use bounded adaptive polishing by default; explicit legacy policies remain available.
93
+ - Configure pairwise selection weights with `PortfolioKnobs::pairwise_weighting`.
94
+ - Apply cooperative wall limits when converting adaptive refinement results.
@@ -0,0 +1,265 @@
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 4
4
+
5
+ [[package]]
6
+ name = "autocfg"
7
+ version = "1.5.1"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"
10
+
11
+ [[package]]
12
+ name = "cc"
13
+ version = "1.4.0"
14
+ source = "registry+https://github.com/rust-lang/crates.io-index"
15
+ checksum = "5add81bb678e6cb321aff7fa0dc7689ad82b112dbc032cea19f91d6b8e3582b9"
16
+ dependencies = [
17
+ "find-msvc-tools",
18
+ "shlex",
19
+ ]
20
+
21
+ [[package]]
22
+ name = "cfg-if"
23
+ version = "1.0.4"
24
+ source = "registry+https://github.com/rust-lang/crates.io-index"
25
+ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
26
+
27
+ [[package]]
28
+ name = "chacha20"
29
+ version = "0.10.2"
30
+ source = "registry+https://github.com/rust-lang/crates.io-index"
31
+ checksum = "65c35e4b699c7e15ccbe7ee35c005e4fc0a278d22238a2857e6ce2dadeda1b06"
32
+ dependencies = [
33
+ "cfg-if",
34
+ "cpufeatures",
35
+ "rand_core",
36
+ ]
37
+
38
+ [[package]]
39
+ name = "cpufeatures"
40
+ version = "0.3.0"
41
+ source = "registry+https://github.com/rust-lang/crates.io-index"
42
+ checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201"
43
+ dependencies = [
44
+ "libc",
45
+ ]
46
+
47
+ [[package]]
48
+ name = "find-msvc-tools"
49
+ version = "0.1.9"
50
+ source = "registry+https://github.com/rust-lang/crates.io-index"
51
+ checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
52
+
53
+ [[package]]
54
+ name = "getrandom"
55
+ version = "0.4.3"
56
+ source = "registry+https://github.com/rust-lang/crates.io-index"
57
+ checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099"
58
+ dependencies = [
59
+ "cfg-if",
60
+ "libc",
61
+ "r-efi",
62
+ "rand_core",
63
+ ]
64
+
65
+ [[package]]
66
+ name = "goatd"
67
+ version = "0.3.0"
68
+ source = "registry+https://github.com/rust-lang/crates.io-index"
69
+ checksum = "0fd36c0dbc0e470c1f355664efd11c037bbd23906b115e2a1157b4d0f3eba18d"
70
+ dependencies = [
71
+ "cc",
72
+ "libc",
73
+ "rustc-hash",
74
+ ]
75
+
76
+ [[package]]
77
+ name = "itoa"
78
+ version = "1.0.18"
79
+ source = "registry+https://github.com/rust-lang/crates.io-index"
80
+ checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
81
+
82
+ [[package]]
83
+ name = "libc"
84
+ version = "0.2.189"
85
+ source = "registry+https://github.com/rust-lang/crates.io-index"
86
+ checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
87
+
88
+ [[package]]
89
+ name = "memchr"
90
+ version = "2.8.3"
91
+ source = "registry+https://github.com/rust-lang/crates.io-index"
92
+ checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"
93
+
94
+ [[package]]
95
+ name = "num-bigint"
96
+ version = "0.4.8"
97
+ source = "registry+https://github.com/rust-lang/crates.io-index"
98
+ checksum = "c89e69e7e0f03bea5ef08013795c25018e101932225a656383bd384495ecc367"
99
+ dependencies = [
100
+ "num-integer",
101
+ "num-traits",
102
+ ]
103
+
104
+ [[package]]
105
+ name = "num-integer"
106
+ version = "0.1.46"
107
+ source = "registry+https://github.com/rust-lang/crates.io-index"
108
+ checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
109
+ dependencies = [
110
+ "num-traits",
111
+ ]
112
+
113
+ [[package]]
114
+ name = "num-rational"
115
+ version = "0.4.2"
116
+ source = "registry+https://github.com/rust-lang/crates.io-index"
117
+ checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
118
+ dependencies = [
119
+ "num-bigint",
120
+ "num-integer",
121
+ "num-traits",
122
+ ]
123
+
124
+ [[package]]
125
+ name = "num-traits"
126
+ version = "0.2.19"
127
+ source = "registry+https://github.com/rust-lang/crates.io-index"
128
+ checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
129
+ dependencies = [
130
+ "autocfg",
131
+ ]
132
+
133
+ [[package]]
134
+ name = "proc-macro2"
135
+ version = "1.0.107"
136
+ source = "registry+https://github.com/rust-lang/crates.io-index"
137
+ checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
138
+ dependencies = [
139
+ "unicode-ident",
140
+ ]
141
+
142
+ [[package]]
143
+ name = "quote"
144
+ version = "1.0.47"
145
+ source = "registry+https://github.com/rust-lang/crates.io-index"
146
+ checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
147
+ dependencies = [
148
+ "proc-macro2",
149
+ ]
150
+
151
+ [[package]]
152
+ name = "r-efi"
153
+ version = "6.0.0"
154
+ source = "registry+https://github.com/rust-lang/crates.io-index"
155
+ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf"
156
+
157
+ [[package]]
158
+ name = "rand"
159
+ version = "0.10.2"
160
+ source = "registry+https://github.com/rust-lang/crates.io-index"
161
+ checksum = "c7f5fa3a058cd35567ef9bfa5e75732bee0f9e4c55fa90477bef2dfcdbc4be80"
162
+ dependencies = [
163
+ "chacha20",
164
+ "getrandom",
165
+ "rand_core",
166
+ ]
167
+
168
+ [[package]]
169
+ name = "rand_core"
170
+ version = "0.10.1"
171
+ source = "registry+https://github.com/rust-lang/crates.io-index"
172
+ checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69"
173
+
174
+ [[package]]
175
+ name = "rustc-hash"
176
+ version = "2.1.3"
177
+ source = "registry+https://github.com/rust-lang/crates.io-index"
178
+ checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d"
179
+
180
+ [[package]]
181
+ name = "serde"
182
+ version = "1.0.229"
183
+ source = "registry+https://github.com/rust-lang/crates.io-index"
184
+ checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba"
185
+ dependencies = [
186
+ "serde_core",
187
+ "serde_derive",
188
+ ]
189
+
190
+ [[package]]
191
+ name = "serde_core"
192
+ version = "1.0.229"
193
+ source = "registry+https://github.com/rust-lang/crates.io-index"
194
+ checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48"
195
+ dependencies = [
196
+ "serde_derive",
197
+ ]
198
+
199
+ [[package]]
200
+ name = "serde_derive"
201
+ version = "1.0.229"
202
+ source = "registry+https://github.com/rust-lang/crates.io-index"
203
+ checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
204
+ dependencies = [
205
+ "proc-macro2",
206
+ "quote",
207
+ "syn",
208
+ ]
209
+
210
+ [[package]]
211
+ name = "serde_json"
212
+ version = "1.0.151"
213
+ source = "registry+https://github.com/rust-lang/crates.io-index"
214
+ checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14"
215
+ dependencies = [
216
+ "itoa",
217
+ "memchr",
218
+ "serde",
219
+ "serde_core",
220
+ "zmij",
221
+ ]
222
+
223
+ [[package]]
224
+ name = "shlex"
225
+ version = "2.0.1"
226
+ source = "registry+https://github.com/rust-lang/crates.io-index"
227
+ checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
228
+
229
+ [[package]]
230
+ name = "syn"
231
+ version = "3.0.3"
232
+ source = "registry+https://github.com/rust-lang/crates.io-index"
233
+ checksum = "53e9bae58849f64dfa4f5d5ae372c8341f7305f82a3868709269343628b659a3"
234
+ dependencies = [
235
+ "proc-macro2",
236
+ "quote",
237
+ "unicode-ident",
238
+ ]
239
+
240
+ [[package]]
241
+ name = "unicode-ident"
242
+ version = "1.0.24"
243
+ source = "registry+https://github.com/rust-lang/crates.io-index"
244
+ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
245
+
246
+ [[package]]
247
+ name = "vitri"
248
+ version = "0.3.0"
249
+ dependencies = [
250
+ "goatd",
251
+ "libc",
252
+ "num-bigint",
253
+ "num-rational",
254
+ "num-traits",
255
+ "rand",
256
+ "rustc-hash",
257
+ "serde",
258
+ "serde_json",
259
+ ]
260
+
261
+ [[package]]
262
+ name = "zmij"
263
+ version = "1.0.23"
264
+ source = "registry+https://github.com/rust-lang/crates.io-index"
265
+ checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b"
@@ -0,0 +1,124 @@
1
+ [package]
2
+ name = "vitri"
3
+ version = "0.3.0"
4
+ edition = "2024"
5
+ # 1.88 stabilized let-chains (`if let … && let …`) for edition 2024, which this
6
+ # crate uses throughout; that is what sets the floor. Verified by a real
7
+ # `cargo +1.88.0 check`; there is no feature surface to check separately.
8
+ rust-version = "1.88"
9
+ authors = ["Guy Van den Broeck <guyvdb@cs.ucla.edu>"]
10
+ license = "Apache-2.0"
11
+ repository = "https://github.com/Tractables/vitri"
12
+ documentation = "https://docs.rs/vitri"
13
+ # `vitri` is a coined name, so it carries no meaning on its own — the
14
+ # description, keywords and categories have to do ALL of the discoverability
15
+ # work. Say what it does in the words someone would search for. (crates.io caps
16
+ # keywords at 5 entries of 20 chars, hence "knowledge-compiler" over the
17
+ # 21-char "knowledge-compilation".)
18
+ description = "CNF preprocessing and vtree construction (variable trees) for circuit compilation and model counting: preprocesses a DIMACS CNF, records the arithmetic to lift a model count back to the original, and builds a good vtree for it — for any d-DNNF/SDD/TDD compiler, or any model counter that takes a vtree."
19
+ keywords = ["vtree", "cnf", "model-counting", "knowledge-compiler", "preprocessing"]
20
+ categories = ["science", "algorithms", "mathematics", "command-line-utilities"]
21
+ readme = "README.md"
22
+ # Allowlist, not a denylist: `cargo package` ships exactly these and nothing
23
+ # else, so a new scratch directory in the repository can never leak into a
24
+ # release. `docs/` is the hand-written consumer documentation — bundle.md,
25
+ # preprocessing.md, vtrees.md, env.md, building.md.
26
+ # `vendor/` holds the Arjun C++ stack that `build.rs` compiles. It sits under
27
+ # the package root because `include` cannot reach outside it, so vendored
28
+ # sources one level up would make a published crate unable to build.
29
+ include = [
30
+ "src/**/*.rs",
31
+ "examples/**/*.rs",
32
+ # The ranker the portfolio selects on by default.
33
+ "src/score/agg/pair_boost.json",
34
+ "build.rs",
35
+ # The build script's own modules.
36
+ "build/**/*.rs",
37
+ "Cargo.toml",
38
+ "README.md",
39
+ "CHANGELOG.md",
40
+ "LICENSE",
41
+ "docs/*.md",
42
+ # Contributor instructions are for the repository, not the crate.
43
+ "!docs/CONTRIBUTING.md",
44
+ # The README's vtree picture and the hand-written CNF its command runs on.
45
+ # A crates.io README with the image left out renders a broken link, and one
46
+ # without the CNF names an input the reader cannot get.
47
+ "docs/images/*.png",
48
+ "docs/example.cnf",
49
+ # The instance `showcase.md`'s Reproduce block runs on, for the same reason.
50
+ "docs/showcase/*.cnf",
51
+ # Test fixtures are hand-written or generated in test code
52
+ # (`src/tests/circuit_fixture`), with one exception: the aggregate ranker's
53
+ # tests read recorded (CNF, vtree) pairs under `tests/data/agg`, whose CNFs
54
+ # are components of public model-counting competition instances. The
55
+ # packaged crate ships them because `src/score/agg/tests/` reads them.
56
+ "tests/**/*.rs",
57
+ "tests/data/agg/**",
58
+ # Whole trees, not an extension list: the vendored Arjun stack is five CMake
59
+ # projects (CMakeLists.txt, *.cmake, *.in, *.cpp) and Eigen's headers have no
60
+ # file extension at all, so any pattern narrower than this silently ships a
61
+ # package that cannot build its own default features.
62
+ "vendor/**",
63
+ # Minus any CNF under `vendor/`: nothing the build reads, and this package
64
+ # ships no benchmark data. A guard for re-vendoring — upstream repositories
65
+ # carry their own bug reproducers. The negation comes after the tree it
66
+ # narrows; later patterns win.
67
+ "!vendor/**/*.cnf",
68
+ ]
69
+ # `build.rs` folds the vendored C++ stack into a single static archive,
70
+ # `libvitri_arjun.a`, in this crate's OUT_DIR. Declaring `links` reserves that
71
+ # native library name so two copies of this crate can never end up linked into
72
+ # one program — Cargo rejects that at resolve time rather than letting it fail
73
+ # as duplicate symbols.
74
+ #
75
+ # The name covers the whole archive, which is CaDiCaL as well as Arjun and
76
+ # CryptoMiniSat. Two CaDiCaL builds in one process link without a warning and
77
+ # then corrupt the heap, so a crate that vendors its own declares this same key
78
+ # and the collision becomes a resolve-time error. `docs/sat.md` says why, and
79
+ # `sat` publishes this crate's solver so a consumer need not vendor one.
80
+ links = "vitri_arjun"
81
+
82
+ [lib]
83
+ name = "vitri"
84
+ # Doctests RUN, and are left on deliberately. A doc example in a published
85
+ # library is API documentation a reader will copy, so it has to be compiled
86
+ # against the crate's real public surface every build. It also compiles as its
87
+ # OWN crate, which is what makes the check meaningful: paths must be written
88
+ # `vitri::…`, exactly as a downstream user writes them.
89
+
90
+ # Standalone tool: raw CNF → reduced CNF + count-lift record + vtree bundle.
91
+ # The source lives beside the library rather than under `src/bin/`, so the path
92
+ # is stated explicitly here.
93
+ [[bin]]
94
+ name = "vitri"
95
+ path = "src/cli_main.rs"
96
+
97
+ [[test]]
98
+ name = "fork_budget"
99
+ path = "tests/fork_budget/main.rs"
100
+ harness = false
101
+
102
+ [dependencies]
103
+ num-bigint = "0.4"
104
+ num-rational = "0.4"
105
+ num-traits = "0.2"
106
+ rand = "0.10"
107
+ rustc-hash = "2"
108
+ libc = "0.2"
109
+ serde = { version = "1", features = ["derive"] }
110
+ serde_json = { version = "1", features = ["float_roundtrip"] }
111
+ goatd = "0.3.0"
112
+
113
+ # There is deliberately NO `[features]` section and no
114
+ # `[package.metadata.docs.rs]` section, and nothing to configure: the crate has
115
+ # no on/off surface, so docs.rs renders the whole API a plain `cargo add vitri`
116
+ # gets, and `--all-features` is the same build as no features at all. The
117
+ # brute-force MC/PMC oracles the test suite checks itself against are
118
+ # `cfg(test)`, not a feature, so no build a consumer can ask for compiles them.
119
+ #
120
+ # docs.rs has no network and cannot install system packages, so neither the
121
+ # CMake run nor the GMP/MPFR/zlib the vendored stack links against are available
122
+ # in its sandbox. `build.rs` handles that directly by skipping the native build
123
+ # when docs.rs sets `DOCS_RS`: rustdoc type-checks but never links, so the
124
+ # `extern "C"` declarations need nothing behind them and the full API renders.