pycodemath 0.4.0__tar.gz → 0.5.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 (144) hide show
  1. pycodemath-0.5.0/MANIFEST.in +5 -0
  2. pycodemath-0.5.0/PKG-INFO +1297 -0
  3. pycodemath-0.5.0/README.md +1258 -0
  4. pycodemath-0.5.0/README.pl.md +1282 -0
  5. pycodemath-0.5.0/pycodemath/__init__.py +333 -0
  6. pycodemath-0.5.0/pycodemath/bench/data/PROCESSBENCH_LICENSE +208 -0
  7. pycodemath-0.5.0/pycodemath/bench/data/processbench_sample.jsonl +100 -0
  8. pycodemath-0.5.0/pycodemath/bench/processbench.py +235 -0
  9. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/bench/real_bench.py +193 -46
  10. pycodemath-0.5.0/pycodemath/cli/full.py +1641 -0
  11. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/cli/mcp_server.py +351 -6
  12. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/cli/repl.py +502 -60
  13. pycodemath-0.5.0/pycodemath/code/__init__.py +358 -0
  14. pycodemath-0.5.0/pycodemath/code/_ast_rules.py +162 -0
  15. pycodemath-0.5.0/pycodemath/code/_glsl.py +342 -0
  16. pycodemath-0.5.0/pycodemath/code/_rewrites.py +721 -0
  17. pycodemath-0.5.0/pycodemath/code/data/C1_adversarial.json +472 -0
  18. pycodemath-0.5.0/pycodemath/code/data/C1_pairs.jsonl +64 -0
  19. pycodemath-0.5.0/pycodemath/code/data/C2_cases.json +1002 -0
  20. pycodemath-0.5.0/pycodemath/code/data/C3_cases.json +1345 -0
  21. pycodemath-0.5.0/pycodemath/code/data/C4_cases.json +104 -0
  22. pycodemath-0.5.0/pycodemath/code/data/C5_cases.jsonl +73 -0
  23. pycodemath-0.5.0/pycodemath/code/data/G1_cases.json +4781 -0
  24. pycodemath-0.5.0/pycodemath/code/data/J1_units_eval.jsonl +130 -0
  25. pycodemath-0.5.0/pycodemath/code/data/K2_constants.json +956 -0
  26. pycodemath-0.5.0/pycodemath/code/data/K3_cases.jsonl +167 -0
  27. pycodemath-0.5.0/pycodemath/code/data/K5_cases.jsonl +96 -0
  28. pycodemath-0.5.0/pycodemath/code/frontend.py +2483 -0
  29. pycodemath-0.5.0/pycodemath/code/geometry.py +3229 -0
  30. pycodemath-0.5.0/pycodemath/code/loops.py +2292 -0
  31. pycodemath-0.5.0/pycodemath/code/money.py +1677 -0
  32. pycodemath-0.5.0/pycodemath/code/ranges.py +2975 -0
  33. pycodemath-0.5.0/pycodemath/code/recurrence.py +1178 -0
  34. pycodemath-0.5.0/pycodemath/code/stability.py +2783 -0
  35. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/core/ir.py +17 -7
  36. pycodemath-0.5.0/pycodemath/engine/_units_table.py +330 -0
  37. pycodemath-0.5.0/pycodemath/engine/calc.py +1934 -0
  38. pycodemath-0.5.0/pycodemath/engine/definite.py +810 -0
  39. pycodemath-0.5.0/pycodemath/engine/identify.py +711 -0
  40. pycodemath-0.5.0/pycodemath/engine/precision.py +1571 -0
  41. pycodemath-0.5.0/pycodemath/engine/solvesets.py +2008 -0
  42. pycodemath-0.5.0/pycodemath/engine/stats.py +1535 -0
  43. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/engine/symbolic.py +8 -0
  44. pycodemath-0.5.0/pycodemath/engine/units.py +2025 -0
  45. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/frontend/parser.py +180 -18
  46. pycodemath-0.5.0/pycodemath/lint/RULES.md +433 -0
  47. pycodemath-0.5.0/pycodemath/lint/__init__.py +94 -0
  48. pycodemath-0.5.0/pycodemath/lint/__main__.py +151 -0
  49. pycodemath-0.5.0/pycodemath/lint/config.py +267 -0
  50. pycodemath-0.5.0/pycodemath/lint/engine.py +1859 -0
  51. pycodemath-0.5.0/pycodemath/lint/pytest_plugin.py +102 -0
  52. pycodemath-0.5.0/pycodemath/lint/report.py +93 -0
  53. pycodemath-0.5.0/pycodemath/lint/rules.py +321 -0
  54. pycodemath-0.5.0/pycodemath/lint/sarif.py +125 -0
  55. pycodemath-0.5.0/pycodemath/lint/witness.py +691 -0
  56. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/verify/__init__.py +22 -0
  57. pycodemath-0.5.0/pycodemath/verify/certificate.py +1764 -0
  58. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/verify/equal.py +12 -3
  59. pycodemath-0.5.0/pycodemath.egg-info/PKG-INFO +1297 -0
  60. pycodemath-0.5.0/pycodemath.egg-info/SOURCES.txt +135 -0
  61. pycodemath-0.5.0/pycodemath.egg-info/entry_points.txt +7 -0
  62. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath.egg-info/requires.txt +7 -1
  63. pycodemath-0.5.0/pyproject.toml +95 -0
  64. pycodemath-0.5.0/tests/test_calc.py +277 -0
  65. pycodemath-0.5.0/tests/test_code_frontend.py +373 -0
  66. pycodemath-0.5.0/tests/test_code_geometry.py +604 -0
  67. pycodemath-0.5.0/tests/test_code_loops.py +265 -0
  68. pycodemath-0.5.0/tests/test_code_money.py +301 -0
  69. pycodemath-0.5.0/tests/test_code_ranges.py +623 -0
  70. pycodemath-0.5.0/tests/test_code_stability.py +417 -0
  71. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_core.py +26 -6
  72. pycodemath-0.5.0/tests/test_definite.py +148 -0
  73. pycodemath-0.5.0/tests/test_docs.py +277 -0
  74. pycodemath-0.5.0/tests/test_identify.py +225 -0
  75. pycodemath-0.5.0/tests/test_integration_full.py +464 -0
  76. pycodemath-0.5.0/tests/test_integration_wave2.py +369 -0
  77. pycodemath-0.5.0/tests/test_lint.py +407 -0
  78. pycodemath-0.5.0/tests/test_lint_guards.py +119 -0
  79. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_mcp.py +8 -3
  80. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_ode.py +858 -858
  81. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_parser.py +20 -7
  82. pycodemath-0.5.0/tests/test_precision.py +338 -0
  83. pycodemath-0.5.0/tests/test_processbench.py +81 -0
  84. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_real_bench.py +95 -0
  85. pycodemath-0.5.0/tests/test_solvesets.py +400 -0
  86. pycodemath-0.5.0/tests/test_stats.py +193 -0
  87. pycodemath-0.5.0/tests/test_strict_parser.py +198 -0
  88. pycodemath-0.5.0/tests/test_units.py +541 -0
  89. pycodemath-0.5.0/tests/test_verify_certificate.py +251 -0
  90. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_verify_surface.py +4 -2
  91. pycodemath-0.4.0/PKG-INFO +0 -618
  92. pycodemath-0.4.0/README.md +0 -590
  93. pycodemath-0.4.0/pycodemath/__init__.py +0 -180
  94. pycodemath-0.4.0/pycodemath.egg-info/PKG-INFO +0 -618
  95. pycodemath-0.4.0/pycodemath.egg-info/SOURCES.txt +0 -67
  96. pycodemath-0.4.0/pycodemath.egg-info/entry_points.txt +0 -3
  97. pycodemath-0.4.0/pyproject.toml +0 -61
  98. {pycodemath-0.4.0 → pycodemath-0.5.0}/LICENSE +0 -0
  99. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/__main__.py +0 -0
  100. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/bench/__init__.py +0 -0
  101. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/bench/benchmark.py +0 -0
  102. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/bench/data/PRM800K_LICENSE +0 -0
  103. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/bench/data/derivations.jsonl +0 -0
  104. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/bench/data/prm800k_sample.jsonl +0 -0
  105. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/bench/verify_bench.py +0 -0
  106. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/cli/__init__.py +0 -0
  107. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/codegen/__init__.py +0 -0
  108. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/codegen/emit.py +0 -0
  109. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/codegen/pipeline.py +0 -0
  110. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/core/__init__.py +0 -0
  111. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/core/backstop.py +0 -0
  112. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/core/budget.py +0 -0
  113. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/core/errors.py +0 -0
  114. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/core/result.py +0 -0
  115. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/engine/__init__.py +0 -0
  116. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/engine/linalg.py +0 -0
  117. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/engine/numerics.py +0 -0
  118. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/engine/ode.py +0 -0
  119. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/frontend/__init__.py +0 -0
  120. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/py.typed +0 -0
  121. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/verify/certify.py +0 -0
  122. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/verify/steps.py +0 -0
  123. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath/verify/verdict.py +0 -0
  124. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath.egg-info/dependency_links.txt +0 -0
  125. {pycodemath-0.4.0 → pycodemath-0.5.0}/pycodemath.egg-info/top_level.txt +0 -0
  126. {pycodemath-0.4.0 → pycodemath-0.5.0}/setup.cfg +0 -0
  127. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_backstop.py +0 -0
  128. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_budget.py +0 -0
  129. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_cli.py +0 -0
  130. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_codegen.py +0 -0
  131. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_coverage_r2.py +0 -0
  132. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_errors.py +0 -0
  133. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_evalf_contract.py +0 -0
  134. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_linalg.py +0 -0
  135. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_numerics.py +0 -0
  136. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_quadrature.py +0 -0
  137. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_result.py +0 -0
  138. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_symbolic.py +0 -0
  139. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_trailing_options.py +0 -0
  140. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_verify_bench.py +0 -0
  141. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_verify_certify.py +0 -0
  142. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_verify_equal.py +0 -0
  143. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_verify_fuzz.py +0 -0
  144. {pycodemath-0.4.0 → pycodemath-0.5.0}/tests/test_verify_steps.py +0 -0
@@ -0,0 +1,5 @@
1
+ # The Polish README is a first-class document (README.md links to it), but only
2
+ # the ``readme`` named in pyproject reaches the sdist by default — measured before
3
+ # module 7: the 0.3.0 sdist carried README.md and not README.pl.md, so the source
4
+ # archive could not rebuild the docs it advertises.
5
+ include README.pl.md