Development¶
Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
unreleased¶
Added¶
Bound computation functionalities
Extra optimization functionalities
Extra sampling functionalities
Redundant inequalities removal in Polytope
Equalities support
Fixed¶
…
Changed¶
…
Removed¶
…
0.2.1 - 2026-02-03¶
Added¶
optimizationsubmodule for convex optimization viaCvxpyOptimizerPolytope.inner_boxcomputation
Changed¶
Polynomial.inner_boxis now a property (rather than a method)
Fixed¶
Major bug in rejection sampling
0.2.0 - 2025-12-02¶
Added¶
samplingsubmodule for convex sampling viaRejectionSampleroptimizationsubmodule for convex optimization viaScipyOptimizerPolytope.compute_outer_box()functionalitynonconvex
solvers.WMSamplingsampler
Changed¶
RejectionIntegratoris now based on the newsampling.RejectionSampler, extra optional integration parameter.PolynomialandPolytopenow store thepysmtenvironment rather than theFormulaManagerPolytopestores the list of pysmt variables rather than its length
0.1.1 - 2025-10-30¶
Added¶
Inequality.to_numpy()
Fixed¶
Multiple bug fixes related to integration polynomial manipulations
Multiple fixes in the unit tests
Changed¶
Polytope.to_numpy()now returns an additional numpy array with strictness informationAxisAlignedWrappernow works with arbitrary polynomial integrands
0.1.0 - 2025-09-25¶
Added¶
First pre-release version.
Contributing¶
Feedback, pull requests, active development.. any form of contribution is much welcome!
If you want to get in touch, contact Paolo Morettin (paolo.morettin@unitn.it).
Setup¶
We use uv for the development of this library.
To set up the environment:
uv sync
uv run wmpy-install --all -y
To build the documentation:
cd docs
uv run make html
Before pushing to remote¶
Run the type checker:
uv run mypyRun the tests:
uv run pytestFix any resulting error
Make sure to reformat the source code:
uv run black .
Conventions¶
We adopt the following conventions
Python code format: PEP8
Version numbers: semantic versioning
Changelog formatting: keepachangelog
Acknowledgements¶
Views and opinions expressed are however those of the author(s) only and do not necessarily reflect those of the European Union or The European Research Executive Agency. Neither the European Union nor the granting authority can be held responsible for them. GA n°101110960 “Probabilistic Formal Verification for Provably Trustworthy AI - PFV-4-PTAI”