multipers 2.7.0b4__tar.gz → 2.7.0b5__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.
- {multipers-2.7.0b4 → multipers-2.7.0b5}/PKG-INFO +9 -6
- {multipers-2.7.0b4 → multipers-2.7.0b5}/README.md +8 -5
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_hera_interface.cpp +2 -4
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_mma_nanobind.cpp +80 -38
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_signed_measure_meta.py +13 -2
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/array_api/jax.py +6 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/array_api/numpy.py +7 -1
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/array_api/torch.py +10 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/MOL2.py +64 -17
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/distances.py +454 -17
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/invariants/__init__.py +117 -4
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/invariants/birth_curves.py +52 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/invariants/projected_barcode.py +32 -5
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multiparameter_module_approximation.py +143 -36
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/plots.py +176 -2
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/point_measure.py +20 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/pyproject.toml +1 -1
- multipers-2.7.0b4/ext/AIDA/Persistence-Algebra/README.md +0 -1
- multipers-2.7.0b4/ext/Persistence-Algebra/CITATION.cff +0 -13
- multipers-2.7.0b4/ext/Persistence-Algebra/LICENSE +0 -674
- multipers-2.7.0b4/ext/hera/extern/Catch2/README.md +0 -37
- {multipers-2.7.0b4 → multipers-2.7.0b5}/CITATION.cff +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/CMakeLists.txt +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/LICENSE +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/THIRD_PARTY_NOTICES.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/cmake/ApplyExtPatchOverlay.cmake +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/cmake/MultipersBuild.cmake +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/cmake/MultipersCodegen.cmake +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/cmake/MultipersDependencies.cmake +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/cmake/MultipersInstall.cmake +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/ArrayColumn.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/ArrayColumn.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/Cone.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/Cone.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/HeapColumn.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/HeapColumn.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/bireductions.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/bireductions.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/block_column_matrix.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/block_column_matrix.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/chunk.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/chunk.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/complexes.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/complexes.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/computation.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/computation.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/factor.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/factor.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/grade.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/indirect.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/lw.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/lw.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/matrices.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/matrices.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/minimize.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/minimize.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/priority_queue.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/reductions.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/reductions.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/relative_cohomology.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/relative_cohomology.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/skip_vector.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/time_measurement.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/time_measurement.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/typedefs.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/2pac/utils.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/CITATION.cff +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/LICENSE +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/include/CLI11.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/include/aida_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/include/config.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/include/option_parser.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/include/types.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/aida_decompose.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/aida_decompose.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/aida_functions.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/aida_functions.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/aida_helpers.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/aida_helpers.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/aida_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/block.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/block.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/config.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/AIDA/src/option_parser.cpp +0 -0
- {multipers-2.7.0b4/ext/AIDA → multipers-2.7.0b5/ext}/Persistence-Algebra/CITATION.cff +0 -0
- {multipers-2.7.0b4/ext/AIDA → multipers-2.7.0b5/ext}/Persistence-Algebra/LICENSE +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/bitset_algebra.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/column_types.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/dense_matrix.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/general.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/graded_linalg.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/graded_matrix.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/grid_scheduler.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/homomorphisms.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/matrix_base.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/orders_and_graphs.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/r2graded_matrix.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/r3graded_matrix.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/sparse_matrix.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/Persistence-Algebra/include/grlina/to_quiver.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/COPYING +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/COPYING.LESSER +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/include/deg_rips/Complex.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/include/deg_rips/Edge_domination_checker.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/include/deg_rips/Grade.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/include/deg_rips/Vertex_domination_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/include/deg_rips/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/include/deg_rips/boost_timers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/deg_rips/include/deg_rips/build_complex.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/COPYING +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/Delaunay_triangulation_accessors.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/Grade_map.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/Meb_accessors.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/Miniball.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/Point_with_densities.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/boost_timers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/compute_meb_radii_of_simplex_tree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/count_size_of_delaunay_triangulation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/function_delaunay_with_meb.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/get_simplices_from_triangulation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/include/function_delaunay/mem_info.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpfree_mod/include/mpfree/Graded_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpfree_mod/include/mpfree/Grid_scheduler.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpfree_mod/include/mpfree/boost_timers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpfree_mod/include/mpfree/global.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpfree_mod/include/mpfree/mpfree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpfree_mod/include/mpfree/mpfree_subroutines.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/Coordinate_traits_with_map.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/Graded_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/Graded_matrix_handle.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/Pre_column_struct.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_pre_column_struct.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_scc2020.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_simplex_tree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/create_matrix_from_firep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/mpp_utils_mod/include/mpp_utils/sorting_utility.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/multi_chunk_mod/include/multi_chunk/Graded_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/multi_chunk_mod/include/multi_chunk/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/multi_chunk_mod/include/multi_chunk/boost_timers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/multi_chunk_mod/include/multi_chunk/multi_chunk.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/COPYING +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/COPYING.LESSER +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/algorithms/chunk_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/algorithms/row_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/algorithms/spectral_sequence_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/algorithms/standard_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/algorithms/twist_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/boundary_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/compute_persistence_pairs.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/helpers/dualize.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/helpers/misc.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/helpers/thread_local_storage.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/persistence_pairs.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/Container_traits.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/Pivot_representation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/Uniform_representation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/Unordered_map_container_traits.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/bit_tree_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/default_representations.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/full_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/heap_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/heap_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/list_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/set_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/sparse_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/phat/include/phat/representations/vector_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/scc_mod/include/scc/Column_data.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/scc_mod/include/scc/Scc.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/function_delaunay/scc_mod/include/scc/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/LICENSE +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Alpha_complex/include/gudhi/Alpha_complex/Alpha_kernel_d.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Alpha_complex/include/gudhi/Alpha_complex.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Bitmap_cubical_complex/include/gudhi/Bitmap_cubical_complex.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Bitmap_cubical_complex/include/gudhi/Bitmap_cubical_complex_base.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Bitmap_cubical_complex/include/gudhi/Bitmap_cubical_complex_periodic_boundary_conditions_base.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Collapse/include/gudhi/Flag_complex_edge_collapser.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_filtration/include/gudhi/Degree_rips_bifiltration.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_filtration/include/gudhi/Dynamic_multi_parameter_filtration.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_filtration/include/gudhi/Multi_filtration/Multi_parameter_generator.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_filtration/include/gudhi/Multi_filtration/multi_filtration_conversions.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_filtration/include/gudhi/Multi_filtration/multi_filtration_products.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_filtration/include/gudhi/Multi_filtration/multi_filtration_utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_filtration/include/gudhi/Multi_parameter_filtration.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_parameter_filtered_complex.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Box.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Line.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Module.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Multi_parameter_filtered_complex_pcoh_interface.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Persistence_interface_cohomology.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Persistence_interface_homology.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Persistence_interface_vineyard.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Point.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/Summand.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/module_helpers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Multi_persistence/summand_helpers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Projective_cover_kernel.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Slicer.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/Thread_safe_slicer.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/multi_simplex_tree_helpers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Multi_persistence/include/gudhi/slicer_helpers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Fields/Z2_field_operators.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Fields/Zp_field_operators.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/Base_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/Base_matrix_with_column_compression.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/Boundary_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/Chain_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/Id_to_index_overlay.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/Position_to_index_overlay.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/RU_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/allocators/entry_constructors.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/base_pairing.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/base_swap.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/chain_pairing.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/chain_rep_cycles.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/chain_vine_swap.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/chain_column_extra_properties.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/column_dimension_holder.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/column_utilities.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/entry_types.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/heap_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/intrusive_list_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/intrusive_set_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/list_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/naive_vector_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/row_access.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/set_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/unordered_set_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/columns/vector_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/index_mapper.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/matrix_dimension_holders.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/matrix_row_access.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/ru_pairing.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/ru_rep_cycles.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/Persistence_matrix/ru_vine_swap.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/persistence_interval.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistence_matrix/include/gudhi/persistence_matrix_options.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistent_cohomology/include/gudhi/Persistent_cohomology/Field_Zp.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistent_cohomology/include/gudhi/Persistent_cohomology/Persistent_cohomology_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/Simplex_tree_iterators.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/Simplex_tree_node_explicit_storage.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/Simplex_tree_siblings.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/Simplex_tree_star_simplex_iterators.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/filtration_value_utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/hooks_simplex_base.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/indexing_tag.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/serialization_utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree/simplex_tree_options.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Simplex_tree/include/gudhi/Simplex_tree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/Vineyard/include/gudhi/vineyard_base.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/common/include/gudhi/Debug_utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/common/include/gudhi/Off_reader.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/common/include/gudhi/Points_off_io.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/common/include/gudhi/Simple_object_pool.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/common/include/gudhi/distance_functions.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/common/include/gudhi/graph_simplicial_complex.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/common/include/gudhi/reader_utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/common/include/gudhi/simple_mdspan.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/gudhi-devel/src/python/include/python_interfaces/numpy_utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/algorithms/standard_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/algorithms/twist_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/boundary_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/compute_persistence_pairs.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/helpers/dualize.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/helpers/misc.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/helpers/thread_local_storage.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/persistence_pairs.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/representations/abstract_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/representations/bit_tree_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/extern/phat/representations/vector_vector.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/bottleneck/basic_defs_bt.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/bottleneck/bottleneck_detail.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/bottleneck/bottleneck_detail.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/bottleneck/bound_match.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/bottleneck/bound_match.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/bottleneck/def_debug_bt.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/bottleneck/neighb_oracle.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/bottleneck.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/common/diagram_point.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/common/diagram_reader.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/common/diagram_traits.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/common/hash_combine.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/common/infinity.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/common/point.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/common.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/dnn/geometry/euclidean-dynamic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/dnn/geometry/euclidean-fixed.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/dnn/local/kd-tree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/dnn/local/kd-tree.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/dnn/local/search-functors.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/dnn/parallel/tbb.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/dnn/utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/bifiltration.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/bifiltration.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/box.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/box.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/cell_with_value.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/cell_with_value.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/common_defs.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/common_util.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/common_util.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/dual_box.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/dual_box.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/dual_point.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/dual_point.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/matching_distance.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/persistence_module.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/persistence_module.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/simplex.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching/simplex.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/matching_distance.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_oracle.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_oracle_base.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_oracle_base.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_oracle_kdtree_restricted.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_oracle_kdtree_restricted.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_params.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_result.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_runner_gs.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_runner_gs.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_runner_jac.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/auction_runner_jac.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/basic_defs_ws.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/basic_defs_ws.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/def_debug_ws.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein/diagonal_heap.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/hera/include/hera/wasserstein.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/COPYING +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/COPYING.LESSER +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/include/mpfree/Graded_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/include/mpfree/Grid_scheduler.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/include/mpfree/boost_timers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/include/mpfree/global.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/include/mpfree/mpfree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/include/mpfree/mpfree_subroutines.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/Coordinate_traits_with_map.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/Graded_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/Graded_matrix_handle.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/Pre_column_struct.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_pre_column_struct.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_scc2020.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_simplex_tree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/create_matrix_from_firep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/mpp_utils_mod/include/mpp_utils/sorting_utility.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/COPYING +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/COPYING.LESSER +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/boundary_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/helpers/misc.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/helpers/thread_local_storage.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/Container_traits.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/Pivot_representation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/Uniform_representation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/Unordered_map_container_traits.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/bit_tree_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/default_representations.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/full_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/heap_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/heap_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/list_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/set_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/sparse_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/phat_mod/include/phat/representations/vector_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/scc_mod/include/scc/Column_data.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/scc_mod/include/scc/Scc.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/mpfree/scc_mod/include/scc/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/COPYING +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/COPYING.LESSER +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/include/multi_critical/Grade.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/include/multi_critical/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/include/multi_critical/boost_timers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/include/multi_critical/firep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/include/multi_critical/free_resolution.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpfree_mod/include/mpfree/Graded_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpfree_mod/include/mpfree/Grid_scheduler.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpfree_mod/include/mpfree/boost_timers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpfree_mod/include/mpfree/global.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpfree_mod/include/mpfree/mpfree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpfree_mod/include/mpfree/mpfree_subroutines.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/Coordinate_traits_with_map.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/Graded_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/Graded_matrix_handle.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/Pre_column_struct.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_pre_column_struct.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_scc2020.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/create_graded_matrices_from_simplex_tree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/create_matrix_from_firep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/mpp_utils_mod/include/mpp_utils/sorting_utility.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/multi_chunk_mod/include/multi_chunk/Graded_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/multi_chunk_mod/include/multi_chunk/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/multi_chunk_mod/include/multi_chunk/boost_timers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/multi_chunk_mod/include/multi_chunk/multi_chunk.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/COPYING +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/COPYING.LESSER +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/algorithms/chunk_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/algorithms/row_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/algorithms/spectral_sequence_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/algorithms/standard_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/algorithms/twist_reduction.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/boundary_matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/compute_persistence_pairs.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/helpers/dualize.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/helpers/misc.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/helpers/thread_local_storage.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/persistence_pairs.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/Container_traits.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/Pivot_representation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/Uniform_representation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/Unordered_map_container_traits.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/bit_tree_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/default_representations.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/full_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/heap_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/heap_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/list_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/set_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/sparse_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/phat_mod/include/phat/representations/vector_column_rep.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/scc_mod/include/scc/Column_data.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/scc_mod/include/scc/Scc.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/multi_critical/scc_mod/include/scc/basic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/LICENSE +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/IO.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/examples.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/grade.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/landscapes.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/main.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/main.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/matrix.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/signatureColumn.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/muphasa/mph/utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/patches/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/patches/deg_rips_edge_copy_reducer.patch +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/patches/function_delaunay_runtime_logs.patch +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/patches/generate_ext_patches.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/patches/mpfree_runtime_logs.patch +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/patches/multi_critical_features.patch +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/patches/multi_critical_runtime_logs.patch +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/patches/muphasa_runtime_logs.patch +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/phat/COPYING +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/phat/COPYING.LESSER +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/phat/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/phat/include/phat/representations/bit_tree_pivot_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/README.md +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/bifiltration_cell.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/cell_with_radius.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/dimensional_traits_2.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/dimensional_traits_3.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/rhomboid.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/rhomboid.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/rhomboid_tiling.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/rhomboid_tiling_impl.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/rhomboid_with_radius.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/types.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/utils.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/ext/rhomboidtiling_newer_cgal_version/src/utils.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/licenses/LGPL-3.0-or-later.txt +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_2pac_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/__init__.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_aida_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_core_delaunay_nanobind.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_deg_rips_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_function_delaunay_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_function_rips_nanobind.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_grid_helper_nanobind.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_mcbif_nanobind.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_mpfree_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_multi_critical_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_muphasa_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_rhomboid_tiling_interface.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_simplex_tree_multi_nanobind.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_simplextree_algorithms.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_slicer_algorithms.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_slicer_meta.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/_slicer_nanobind.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/array_api/__init__.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/UCR.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/__init__.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/graphs.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/immuno_regions.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/minimal_presentation_to_st_bf.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/pytorch2simplextree.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/shape3d.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/data/synthetic.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/2pac_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/aida_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/backend_log_flag.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/backend_log_policy.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/contiguous_slicer_bridge.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/deg_rips_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/function_delaunay_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/hera_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/mpfree_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/multi_critical_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/muphasa_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/nanobind_generator_basis.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/nanobind_registry_helpers.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/nanobind_registry_runtime.cpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/nanobind_registry_runtime.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/nanobind_wrapper_types.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/packed_multi_critical_bridge.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ext_interface/rhomboid_tiling_interface.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/filtrations/__init__.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/filtrations/density.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/filtrations/filtrations.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/function_rips.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/grids.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/Persistence_slices_interface.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/Simplex_tree_interface.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/Simplex_tree_multi_interface.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/gudhi/Persistence_matrix/columns/phat_bit_tree_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/gudhi/Persistence_matrix/columns/phat_column_interface.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/gudhi/Persistence_matrix/columns/phat_vector_column.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/simplextree_conversion_core.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/slicer_conversion_core.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/tmp_h0_pers/mma_interface_h0.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/gudhi/tmp_h0_pers/naive_merge_tree.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/hera_monte_carlo_core.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/invariants/_utils.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/logs.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/__init__.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/accuracies.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/filtered_complex.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/invariants_with_persistable.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/kernels.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/mma.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/one.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/point_clouds.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/signed_measures.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/sliced_wasserstein.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ml/tools.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/mma_structures.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multi_parameter_rank_invariant/diff_helpers.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multi_parameter_rank_invariant/euler_characteristic.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multi_parameter_rank_invariant/function_rips.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multi_parameter_rank_invariant/hilbert_function.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multi_parameter_rank_invariant/mobius_inversion.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multi_parameter_rank_invariant/persistence_slices.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multi_parameter_rank_invariant/rank_invariant.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multiparameter_edge_collapse.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multiparameter_module_approximation/approximation.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multiparameter_module_approximation/debug.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/multiparameter_module_approximation/utilities.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/nanobind_array_utils.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/nanobind_dense_array_utils.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/nanobind_mma_registry_helpers.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/nanobind_object_utils.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/nanobind_simplextree_utils.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/nanobind_slicer_serialization.hpp +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/ops.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/pickle.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/simplex_tree_multi.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/slicer.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/tensor/tensor.h +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/multipers/tests/__init__.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/options.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/codegen/__init__.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/codegen/_registry.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/core/backend_log_policy_core.cc +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/core/filtrations_core.cc +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/core/hera_monte_carlo_core.cc +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/core/simplextree_core.cc +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/core/slicer_core.cc +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/repair_macos_libomp_wheel.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/tempita_grid_gen.py +0 -0
- {multipers-2.7.0b4 → multipers-2.7.0b5}/tools/update_sdist_ext_whitelist.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: multipers
|
|
3
|
-
Version: 2.7.
|
|
3
|
+
Version: 2.7.0b5
|
|
4
4
|
Summary: Multiparameter Topological Persistence for Machine Learning
|
|
5
5
|
Keywords: TDA,Persistence,Multiparameter,sklearn,autodiff
|
|
6
6
|
Author-Email: David Loiseaux <david.lapous@proton.me>, Hannah Schreiber <hannah.schreiber@inria.fr>
|
|
@@ -84,22 +84,25 @@ This library features a bunch of different functions and helpers. See below for
|
|
|
84
84
|
<br>Filled box refers to implemented or interfaced code.
|
|
85
85
|
- [x] [[Multiparameter Module Approximation, JACT]](https://doi.org/10.1007/s41468-025-00222-y) provides the multiparameter simplicial structure, as well as technics for approximating modules, via interval-decomposable modules. It is also very useful for visualization.
|
|
86
86
|
- [x] [[Stable Vectorization of Multiparameter Persistent Homology using Signed Barcodes as Measures, NeurIPS2023]](https://proceedings.neurips.cc/paper_files/paper/2023/hash/d75c474bc01735929a1fab5d0de3b189-Abstract-Conference.html) provides fast representations of multiparameter persistence modules, by using their signed barcodes decompositions encoded into signed measures. Implemented decompositions : Euler surfaces, Hilbert function, rank invariant (i.e. rectangles). It also provides representation technics for Machine Learning, i.e., Sliced Wasserstein kernels, and Vectorizations.
|
|
87
|
-
- [x] [[A Framework for Fast and Stable Representations of Multiparameter Persistent Homology Decompositions, NeurIPS2023]](https://proceedings.neurips.cc/paper_files/paper/2023/hash/702b67152ec4435795f681865b67999c-Abstract-Conference.html) Provides a vectorization framework for interval decomposable modules, for Machine Learning.
|
|
87
|
+
- [x] [[A Framework for Fast and Stable Representations of Multiparameter Persistent Homology Decompositions, NeurIPS2023]](https://proceedings.neurips.cc/paper_files/paper/2023/hash/702b67152ec4435795f681865b67999c-Abstract-Conference.html) Provides a vectorization framework for interval decomposable modules, for Machine Learning. Implemented as an extension of MMA.
|
|
88
88
|
- [x] [[Differentiability and Optimization of Multiparameter Persistent Homology, ICML2024]](https://proceedings.mlr.press/v235/scoccola24a.html) An approach to compute a (clarke) gradient for any reasonable multiparameter persistent invariant. Currently, any `multipers` computation is auto-differentiable using this strategy, provided that the input are pytorch gradient capable tensor.
|
|
89
89
|
- [x] [[Multiparameter Persistence Landscapes, JMLR]](https://jmlr.org/papers/v21/19-054.html) A vectorization technic for multiparameter persistence modules.
|
|
90
90
|
- [x] [[Filtration-Domination in Bifiltered Graphs, ALENEX2023]](https://doi.org/10.1137/1.9781611977561.ch3) Allows for 2-parameter edge collapses for 1-critical clique complexes. Very useful to speed up, e.g., Rips-Codensity bifiltrations.
|
|
91
91
|
- [x] [[Fast free resolutions of bifiltered chain complexes]](https://arxiv.org/abs/2512.08652) One-critical representation of multicritical filtrations, using [multi_critical](https://bitbucket.org/mkerber/multi_critical).
|
|
92
92
|
- [x] [[Chunk Reduction for Multi-Parameter Persistent Homology, SoCG2019]](https://doi.org/10.4230/LIPIcs.SoCG.2019.37) Multi-filtration preprocessing algorithm for homology computations.
|
|
93
93
|
- [x] [[Computing Minimal Presentations and Bigraded Betti Numbers of 2-Parameter Persistent Homology, JAAG]](https://doi.org/10.1137/20M1388425) Minimal presentation of multiparameter persistence modules, using [mpfree](https://bitbucket.org/mkerber/mpfree/src/master/). Hilbert, Rank Decomposition Signed Measures, and MMA decompositions can be computed using the mpfree backend.
|
|
94
|
-
- [x] [[Hera]](https://github.com/anigmetov/hera) Matching distance between 2-parameter presentations, 1-parameter bottleneck/wasserstein distances.
|
|
94
|
+
- [x] [[Hera]](https://github.com/anigmetov/hera) Matching distance between 2-parameter presentations, 1-parameter bottleneck/wasserstein distances ([[paper]](https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SoCG.2020.53))
|
|
95
95
|
- [x] [[Decomposing Multiparameter Persistence Modules, SoCG2025]](https://doi.org/10.4230/LIPIcs.SoCG.2025.41) Using the [AIDA](https://github.com/JanJend/AIDA) and [Persistence-Algebra](https://github.com/JanJend/Persistence-Algebra/) libraries.
|
|
96
96
|
- [x] [[Delaunay Bifiltrations of Functions on Point Clouds, SODA2024]](https://epubs.siam.org/doi/10.1137/1.9781611977912.173) Provides an alternative to function rips bifiltrations, using Delaunay complexes. Very good alternative to Rips-Density like bifiltrations.
|
|
97
|
-
- [x] [[Delaunay Core Bifiltration]](https://
|
|
97
|
+
- [x] [[Delaunay Core Bifiltration, JACT]](https://doi.org/10.1007/s41468-025-00226-8) Bifiltration for point clouds, taking into account the density. Similar to Rips-Density.
|
|
98
98
|
- [x] [[Computing the Multicover Bifiltration, SOCG2021]](https://doi.org/10.4230/LIPIcs.SoCG.2021.27) Rhomboid Tiling bifiltration. Equivalent to the multicover bifiltration, using [rhomboidtiling](https://github.com/geoo89/rhomboidtiling).
|
|
99
|
-
- [x] [[Rivet]](https://github.com/rivetTDA/rivet) Interactive two parameter persistence
|
|
99
|
+
- [x] [[Rivet]](https://github.com/rivetTDA/rivet) Interactive two parameter persistence.
|
|
100
100
|
- [x] [[Kernel Operations on the GPU, with Autodiff, without Memory Overflows, JMLR]](http://jmlr.org/papers/v22/20-275.html) Although not linked, at first glance, to persistence in any way, this library allows computing blazingly fast signed measures convolutions (and more!) with custom kernels.
|
|
101
|
-
- [x] [[Projected distances for multi-parameter persistence modules]](https://
|
|
101
|
+
- [x] [[Projected distances for multi-parameter persistence modules, Institut Fourier]](https://aif.centre-mersenne.org/articles/10.5802/aif.3752/) and [[Computation of $\gamma$-linear projected barcodes, JACT]](https://doi.org/10.1007/s41468-025-00209-9) Provides a strategy to estimate the convolution distance between multiparameter persistence module using projected barcodes.
|
|
102
102
|
- [x] [[Efficient Two-Parameter Persistence Computation via Cohomology, SoCG2023]](https://doi.org/10.4230/LIPIcs.SoCG.2023.15) Minimal presentations for 2-parameter persistence algorithm.
|
|
103
|
+
- [x] [[deg_rips]](https://bitbucket.org/mkerber/deg_rips) Efficient implementation of the DegreeRips bifiltration. Alternative to the multipers-native one.
|
|
104
|
+
- [ ] [[Multiscale Clusterings BiFiltration, ICLR2026]](https://openreview.net/forum?id=E7D6uybODJ) WIP implementation.
|
|
105
|
+
|
|
103
106
|
|
|
104
107
|
If I missed something, or you want to add something, feel free to open an issue.
|
|
105
108
|
|
|
@@ -45,22 +45,25 @@ This library features a bunch of different functions and helpers. See below for
|
|
|
45
45
|
<br>Filled box refers to implemented or interfaced code.
|
|
46
46
|
- [x] [[Multiparameter Module Approximation, JACT]](https://doi.org/10.1007/s41468-025-00222-y) provides the multiparameter simplicial structure, as well as technics for approximating modules, via interval-decomposable modules. It is also very useful for visualization.
|
|
47
47
|
- [x] [[Stable Vectorization of Multiparameter Persistent Homology using Signed Barcodes as Measures, NeurIPS2023]](https://proceedings.neurips.cc/paper_files/paper/2023/hash/d75c474bc01735929a1fab5d0de3b189-Abstract-Conference.html) provides fast representations of multiparameter persistence modules, by using their signed barcodes decompositions encoded into signed measures. Implemented decompositions : Euler surfaces, Hilbert function, rank invariant (i.e. rectangles). It also provides representation technics for Machine Learning, i.e., Sliced Wasserstein kernels, and Vectorizations.
|
|
48
|
-
- [x] [[A Framework for Fast and Stable Representations of Multiparameter Persistent Homology Decompositions, NeurIPS2023]](https://proceedings.neurips.cc/paper_files/paper/2023/hash/702b67152ec4435795f681865b67999c-Abstract-Conference.html) Provides a vectorization framework for interval decomposable modules, for Machine Learning.
|
|
48
|
+
- [x] [[A Framework for Fast and Stable Representations of Multiparameter Persistent Homology Decompositions, NeurIPS2023]](https://proceedings.neurips.cc/paper_files/paper/2023/hash/702b67152ec4435795f681865b67999c-Abstract-Conference.html) Provides a vectorization framework for interval decomposable modules, for Machine Learning. Implemented as an extension of MMA.
|
|
49
49
|
- [x] [[Differentiability and Optimization of Multiparameter Persistent Homology, ICML2024]](https://proceedings.mlr.press/v235/scoccola24a.html) An approach to compute a (clarke) gradient for any reasonable multiparameter persistent invariant. Currently, any `multipers` computation is auto-differentiable using this strategy, provided that the input are pytorch gradient capable tensor.
|
|
50
50
|
- [x] [[Multiparameter Persistence Landscapes, JMLR]](https://jmlr.org/papers/v21/19-054.html) A vectorization technic for multiparameter persistence modules.
|
|
51
51
|
- [x] [[Filtration-Domination in Bifiltered Graphs, ALENEX2023]](https://doi.org/10.1137/1.9781611977561.ch3) Allows for 2-parameter edge collapses for 1-critical clique complexes. Very useful to speed up, e.g., Rips-Codensity bifiltrations.
|
|
52
52
|
- [x] [[Fast free resolutions of bifiltered chain complexes]](https://arxiv.org/abs/2512.08652) One-critical representation of multicritical filtrations, using [multi_critical](https://bitbucket.org/mkerber/multi_critical).
|
|
53
53
|
- [x] [[Chunk Reduction for Multi-Parameter Persistent Homology, SoCG2019]](https://doi.org/10.4230/LIPIcs.SoCG.2019.37) Multi-filtration preprocessing algorithm for homology computations.
|
|
54
54
|
- [x] [[Computing Minimal Presentations and Bigraded Betti Numbers of 2-Parameter Persistent Homology, JAAG]](https://doi.org/10.1137/20M1388425) Minimal presentation of multiparameter persistence modules, using [mpfree](https://bitbucket.org/mkerber/mpfree/src/master/). Hilbert, Rank Decomposition Signed Measures, and MMA decompositions can be computed using the mpfree backend.
|
|
55
|
-
- [x] [[Hera]](https://github.com/anigmetov/hera) Matching distance between 2-parameter presentations, 1-parameter bottleneck/wasserstein distances.
|
|
55
|
+
- [x] [[Hera]](https://github.com/anigmetov/hera) Matching distance between 2-parameter presentations, 1-parameter bottleneck/wasserstein distances ([[paper]](https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SoCG.2020.53))
|
|
56
56
|
- [x] [[Decomposing Multiparameter Persistence Modules, SoCG2025]](https://doi.org/10.4230/LIPIcs.SoCG.2025.41) Using the [AIDA](https://github.com/JanJend/AIDA) and [Persistence-Algebra](https://github.com/JanJend/Persistence-Algebra/) libraries.
|
|
57
57
|
- [x] [[Delaunay Bifiltrations of Functions on Point Clouds, SODA2024]](https://epubs.siam.org/doi/10.1137/1.9781611977912.173) Provides an alternative to function rips bifiltrations, using Delaunay complexes. Very good alternative to Rips-Density like bifiltrations.
|
|
58
|
-
- [x] [[Delaunay Core Bifiltration]](https://
|
|
58
|
+
- [x] [[Delaunay Core Bifiltration, JACT]](https://doi.org/10.1007/s41468-025-00226-8) Bifiltration for point clouds, taking into account the density. Similar to Rips-Density.
|
|
59
59
|
- [x] [[Computing the Multicover Bifiltration, SOCG2021]](https://doi.org/10.4230/LIPIcs.SoCG.2021.27) Rhomboid Tiling bifiltration. Equivalent to the multicover bifiltration, using [rhomboidtiling](https://github.com/geoo89/rhomboidtiling).
|
|
60
|
-
- [x] [[Rivet]](https://github.com/rivetTDA/rivet) Interactive two parameter persistence
|
|
60
|
+
- [x] [[Rivet]](https://github.com/rivetTDA/rivet) Interactive two parameter persistence.
|
|
61
61
|
- [x] [[Kernel Operations on the GPU, with Autodiff, without Memory Overflows, JMLR]](http://jmlr.org/papers/v22/20-275.html) Although not linked, at first glance, to persistence in any way, this library allows computing blazingly fast signed measures convolutions (and more!) with custom kernels.
|
|
62
|
-
- [x] [[Projected distances for multi-parameter persistence modules]](https://
|
|
62
|
+
- [x] [[Projected distances for multi-parameter persistence modules, Institut Fourier]](https://aif.centre-mersenne.org/articles/10.5802/aif.3752/) and [[Computation of $\gamma$-linear projected barcodes, JACT]](https://doi.org/10.1007/s41468-025-00209-9) Provides a strategy to estimate the convolution distance between multiparameter persistence module using projected barcodes.
|
|
63
63
|
- [x] [[Efficient Two-Parameter Persistence Computation via Cohomology, SoCG2023]](https://doi.org/10.4230/LIPIcs.SoCG.2023.15) Minimal presentations for 2-parameter persistence algorithm.
|
|
64
|
+
- [x] [[deg_rips]](https://bitbucket.org/mkerber/deg_rips) Efficient implementation of the DegreeRips bifiltration. Alternative to the multipers-native one.
|
|
65
|
+
- [ ] [[Multiscale Clusterings BiFiltration, ICLR2026]](https://openreview.net/forum?id=E7D6uybODJ) WIP implementation.
|
|
66
|
+
|
|
64
67
|
|
|
65
68
|
If I missed something, or you want to add something, feel free to open an issue.
|
|
66
69
|
|
|
@@ -95,10 +95,8 @@ diagram_t diagram_from_handle(nb::handle h, bool drop_diagonal = false) {
|
|
|
95
95
|
diagram_t out;
|
|
96
96
|
out.reserve(static_cast<std::size_t>(diagram.shape(0)));
|
|
97
97
|
|
|
98
|
-
const auto row_stride = static_cast<std::ptrdiff_t>(diagram.stride(0))
|
|
99
|
-
|
|
100
|
-
const auto col_stride = static_cast<std::ptrdiff_t>(diagram.stride(1)) /
|
|
101
|
-
static_cast<std::ptrdiff_t>(sizeof(double));
|
|
98
|
+
const auto row_stride = static_cast<std::ptrdiff_t>(diagram.stride(0));
|
|
99
|
+
const auto col_stride = static_cast<std::ptrdiff_t>(diagram.stride(1));
|
|
102
100
|
const auto* values = diagram.data();
|
|
103
101
|
for (std::ptrdiff_t i = 0; i < static_cast<std::ptrdiff_t>(diagram.shape(0)); ++i) {
|
|
104
102
|
const double birth = values[i * row_stride];
|
|
@@ -80,17 +80,55 @@ nb::tuple dump_summand(const Gudhi::multi_persistence::Summand<T>& summand) {
|
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
template <typename T>
|
|
83
|
-
nb::tuple
|
|
84
|
-
const std::vector<std::vector<typename Gudhi::multi_persistence::Module<T>::Bar>>&
|
|
85
|
-
|
|
86
|
-
|
|
83
|
+
nb::tuple batched_barcode_to_python(
|
|
84
|
+
const std::vector<std::vector<typename Gudhi::multi_persistence::Module<T>::Bar>>& barcodes,
|
|
85
|
+
size_t num_lines,
|
|
86
|
+
bool keep_inf) {
|
|
87
|
+
constexpr T inf = std::numeric_limits<T>::infinity();
|
|
88
|
+
return tuple_from_size(barcodes.size(), [&](size_t dim) -> nb::object {
|
|
89
|
+
const auto& bars = barcodes[dim];
|
|
90
|
+
if (num_lines == 0) {
|
|
91
|
+
auto split_indices = owned_array<uint64_t>(std::vector<uint64_t>{}, {size_t(0)});
|
|
92
|
+
if (keep_inf) {
|
|
93
|
+
return nb::make_tuple(owned_array<T>(std::vector<T>{}, {size_t(0), size_t(0), size_t(2)}), split_indices);
|
|
94
|
+
}
|
|
95
|
+
return nb::make_tuple(owned_array<T>(std::vector<T>{}, {size_t(0), size_t(2)}), split_indices);
|
|
96
|
+
}
|
|
97
|
+
if (bars.size() % num_lines != 0) {
|
|
98
|
+
throw std::runtime_error("Barcodes along different lines do not have a consistent shape.");
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
const size_t bars_per_line = bars.size() / num_lines;
|
|
87
102
|
std::vector<T> flat;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
103
|
+
if (keep_inf) {
|
|
104
|
+
flat.reserve(bars.size() * 2);
|
|
105
|
+
for (const auto& bar : bars) {
|
|
106
|
+
flat.push_back(bar[0]);
|
|
107
|
+
flat.push_back(bar[1]);
|
|
108
|
+
}
|
|
109
|
+
return nb::make_tuple(owned_array<T>(std::move(flat), {num_lines, bars_per_line, size_t(2)}),
|
|
110
|
+
owned_array<uint64_t>(std::vector<uint64_t>{}, {size_t(0)}));
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
std::vector<uint64_t> split_indices;
|
|
114
|
+
split_indices.reserve(num_lines > 0 ? num_lines - 1 : 0);
|
|
115
|
+
uint64_t kept_count = 0;
|
|
116
|
+
for (size_t line = 0; line < num_lines; ++line) {
|
|
117
|
+
const size_t line_offset = line * bars_per_line;
|
|
118
|
+
for (size_t j = 0; j < bars_per_line; ++j) {
|
|
119
|
+
const auto& bar = bars[line_offset + j];
|
|
120
|
+
if (bar[0] < inf) {
|
|
121
|
+
flat.push_back(bar[0]);
|
|
122
|
+
flat.push_back(bar[1]);
|
|
123
|
+
++kept_count;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
if (line + 1 < num_lines) {
|
|
127
|
+
split_indices.push_back(kept_count);
|
|
128
|
+
}
|
|
92
129
|
}
|
|
93
|
-
return nb::
|
|
130
|
+
return nb::make_tuple(owned_array<T>(std::move(flat), {static_cast<size_t>(kept_count), size_t(2)}),
|
|
131
|
+
owned_array<uint64_t>(std::move(split_indices), {num_lines - 1}));
|
|
94
132
|
});
|
|
95
133
|
}
|
|
96
134
|
|
|
@@ -142,23 +180,30 @@ Gudhi::multi_persistence::Box<T> box_from_array(nb::ndarray<nb::numpy, const T,
|
|
|
142
180
|
}
|
|
143
181
|
|
|
144
182
|
template <typename T>
|
|
145
|
-
Gudhi::multi_persistence::
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
183
|
+
nb::tuple barcodes_from_lines_impl(Gudhi::multi_persistence::Module<T>& self,
|
|
184
|
+
const std::vector<std::vector<T>>& basepoints,
|
|
185
|
+
const std::vector<std::vector<T>>& directions,
|
|
186
|
+
int degree,
|
|
187
|
+
bool keep_inf) {
|
|
188
|
+
if (basepoints.size() != directions.size()) {
|
|
189
|
+
throw std::runtime_error("Basepoints and directions must contain the same number of lines.");
|
|
190
|
+
}
|
|
149
191
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
192
|
+
std::vector<Gudhi::multi_persistence::Line<T>> lines;
|
|
193
|
+
lines.reserve(basepoints.size());
|
|
194
|
+
for (size_t i = 0; i < basepoints.size(); ++i) {
|
|
195
|
+
if (basepoints[i].size() != directions[i].size()) {
|
|
196
|
+
throw std::runtime_error("Basepoints and directions must have the same number of parameters.");
|
|
197
|
+
}
|
|
198
|
+
lines.emplace_back(basepoints[i], directions[i]);
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
decltype(self.get_barcodes_from_set_of_lines(lines, degree)) barcodes;
|
|
157
202
|
{
|
|
158
203
|
nb::gil_scoped_release release;
|
|
159
|
-
|
|
204
|
+
barcodes = self.get_barcodes_from_set_of_lines(lines, degree);
|
|
160
205
|
}
|
|
161
|
-
return
|
|
206
|
+
return batched_barcode_to_python<T>(barcodes, lines.size(), keep_inf);
|
|
162
207
|
}
|
|
163
208
|
|
|
164
209
|
template <typename T, class GridRange>
|
|
@@ -483,22 +528,19 @@ void bind_float_module_methods(Class& cls) {
|
|
|
483
528
|
using Module = Gudhi::multi_persistence::Module<T>;
|
|
484
529
|
|
|
485
530
|
cls.def(
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
"basepoint"_a,
|
|
500
|
-
"direction"_a = nb::none(),
|
|
501
|
-
"degree"_a = -1)
|
|
531
|
+
"_get_barcodes_from_lines",
|
|
532
|
+
[](Module& self,
|
|
533
|
+
nb::ndarray<nb::numpy, const T, nb::ndim<2>, nb::c_contig> basepoints,
|
|
534
|
+
nb::ndarray<nb::numpy, const T, nb::ndim<2>, nb::c_contig> directions,
|
|
535
|
+
int degree,
|
|
536
|
+
bool keep_inf) -> nb::tuple {
|
|
537
|
+
return barcodes_from_lines_impl<T>(
|
|
538
|
+
self, matrix_from_array(basepoints), matrix_from_array(directions), degree, keep_inf);
|
|
539
|
+
},
|
|
540
|
+
"basepoints"_a,
|
|
541
|
+
"directions"_a,
|
|
542
|
+
"degree"_a = -1,
|
|
543
|
+
"keep_inf"_a = true)
|
|
502
544
|
.def(
|
|
503
545
|
"evaluate_in_grid",
|
|
504
546
|
[](Module& self, nb::handle grid_handle) -> Module& {
|
|
@@ -46,8 +46,8 @@ def signed_measure(
|
|
|
46
46
|
Computes the signed measures given by the decomposition of the hilbert
|
|
47
47
|
function or the euler characteristic, or the rank invariant.
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
Parameters
|
|
50
|
+
----------
|
|
51
51
|
- filtered_complex: given by a simplextree or a slicer.
|
|
52
52
|
- degree:int|None / degrees:list[int] the degrees to compute.
|
|
53
53
|
None represents the euler characteristic.
|
|
@@ -83,6 +83,17 @@ def signed_measure(
|
|
|
83
83
|
`[signed_measure_of_degree for degree in degrees]`
|
|
84
84
|
with `signed_measure_of_degree` of the form `(dirac location, dirac weights)`.
|
|
85
85
|
|
|
86
|
+
References
|
|
87
|
+
----------
|
|
88
|
+
Loiseaux, Carrière, Botnan, Oudot, and Scoccola, "Stable Vectorization of
|
|
89
|
+
Multiparameter Persistent Homology using Signed Barcodes as Measures",
|
|
90
|
+
Advances in Neural Information Processing Systems, 2023.
|
|
91
|
+
|
|
92
|
+
Scoccola, Setlur, Loiseaux, Carrière, and Oudot, "Differentiability and
|
|
93
|
+
Optimization of Multiparameter Persistent Homology", Proceedings of the
|
|
94
|
+
41st International Conference on Machine Learning, PMLR 235:43986-44011,
|
|
95
|
+
2024.
|
|
96
|
+
|
|
86
97
|
Notes on computational backends
|
|
87
98
|
-------------------------------
|
|
88
99
|
There are several backends for each of these computations.
|
|
@@ -75,6 +75,12 @@ def logsumexp(x, axis=None, dim=None, keepdims=False, keepdim=None):
|
|
|
75
75
|
return _jsp_special.logsumexp(x, axis=axis, keepdims=keepdim)
|
|
76
76
|
|
|
77
77
|
|
|
78
|
+
def cumsum(x, axis=None, dim=None, **kwargs):
|
|
79
|
+
if axis is None:
|
|
80
|
+
axis = dim
|
|
81
|
+
return _jnp.cumsum(x, axis=axis, **kwargs)
|
|
82
|
+
|
|
83
|
+
|
|
78
84
|
def norm(x, axis=None, dim=None, **kwargs):
|
|
79
85
|
if axis is None:
|
|
80
86
|
axis = dim
|
|
@@ -142,6 +142,12 @@ def logsumexp(x, axis=None, dim=None, keepdims=False, keepdim=None):
|
|
|
142
142
|
return _sp_logsumexp(x, axis=axis, keepdims=keepdim)
|
|
143
143
|
|
|
144
144
|
|
|
145
|
+
def cumsum(x, axis=None, dim=None, **kwargs):
|
|
146
|
+
if axis is None:
|
|
147
|
+
axis = dim
|
|
148
|
+
return _np.cumsum(x, axis=axis, **kwargs)
|
|
149
|
+
|
|
150
|
+
|
|
145
151
|
def norm(x, axis=None, dim=None, **kwargs):
|
|
146
152
|
if axis is None:
|
|
147
153
|
axis = dim
|
|
@@ -233,7 +239,7 @@ def set_at(x, idx, y):
|
|
|
233
239
|
|
|
234
240
|
|
|
235
241
|
def add_at(x, idx, y):
|
|
236
|
-
x
|
|
242
|
+
_np.add.at(x, idx, y)
|
|
237
243
|
return x
|
|
238
244
|
|
|
239
245
|
|
|
@@ -96,6 +96,12 @@ def logsumexp(x, axis=None, dim=None, keepdims=False, keepdim=None):
|
|
|
96
96
|
return _torch.logsumexp(x, dim=dim, keepdim=keepdim)
|
|
97
97
|
|
|
98
98
|
|
|
99
|
+
def cumsum(x, axis=None, dim=None, **kwargs):
|
|
100
|
+
if dim is None:
|
|
101
|
+
dim = axis
|
|
102
|
+
return _torch.cumsum(x, dim=dim, **kwargs)
|
|
103
|
+
|
|
104
|
+
|
|
99
105
|
def norm(x, axis=None, dim=None, **kwargs):
|
|
100
106
|
if dim is None:
|
|
101
107
|
dim = axis
|
|
@@ -184,6 +190,10 @@ def set_at(x, idx, y):
|
|
|
184
190
|
|
|
185
191
|
|
|
186
192
|
def add_at(x, idx, y):
|
|
193
|
+
if not isinstance(idx, tuple):
|
|
194
|
+
idx = (idx,)
|
|
195
|
+
if all(isinstance(i, _torch.Tensor) for i in idx):
|
|
196
|
+
return x.index_put_(idx, y, accumulate=True)
|
|
187
197
|
x[idx] += y
|
|
188
198
|
return x
|
|
189
199
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import os
|
|
2
|
+
import warnings
|
|
2
3
|
from os import listdir
|
|
3
4
|
from os.path import expanduser
|
|
4
5
|
from typing import Iterable
|
|
@@ -8,7 +9,8 @@ import MDAnalysis as mda
|
|
|
8
9
|
import numpy as np
|
|
9
10
|
import pandas as pd
|
|
10
11
|
from joblib import Parallel, delayed
|
|
11
|
-
from MDAnalysis.
|
|
12
|
+
from MDAnalysis.exceptions import NoDataError
|
|
13
|
+
from MDAnalysis.guesser import tables as mda_tables
|
|
12
14
|
from sklearn.base import BaseEstimator, TransformerMixin
|
|
13
15
|
from sklearn.preprocessing import LabelEncoder
|
|
14
16
|
|
|
@@ -22,6 +24,60 @@ JC_path = DATASET_PATH + "Cleves-Jain/"
|
|
|
22
24
|
DUDE_path = DATASET_PATH + "DUD-E/"
|
|
23
25
|
|
|
24
26
|
|
|
27
|
+
def _load_molecule(path: str | mda.Universe):
|
|
28
|
+
if isinstance(path, mda.Universe):
|
|
29
|
+
return path
|
|
30
|
+
|
|
31
|
+
kwargs = {"to_guess": ()} if path.lower().endswith(".mol2") else {}
|
|
32
|
+
with warnings.catch_warnings():
|
|
33
|
+
warnings.filterwarnings(
|
|
34
|
+
"ignore",
|
|
35
|
+
message=r"Unknown elements found for some atoms: .*",
|
|
36
|
+
category=UserWarning,
|
|
37
|
+
module=r"MDAnalysis\.topology\.MOL2Parser",
|
|
38
|
+
)
|
|
39
|
+
return mda.Universe(path, **kwargs)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def _mass_labels(molecule: mda.Universe):
|
|
43
|
+
labels = np.asarray(molecule.atoms.types, dtype=object).copy()
|
|
44
|
+
try:
|
|
45
|
+
elements = np.asarray(molecule.atoms.elements, dtype=object)
|
|
46
|
+
except NoDataError:
|
|
47
|
+
elements = None
|
|
48
|
+
|
|
49
|
+
if elements is not None:
|
|
50
|
+
has_element = elements != ""
|
|
51
|
+
labels[has_element] = elements[has_element]
|
|
52
|
+
|
|
53
|
+
return np.asarray(
|
|
54
|
+
[label.split(".", 1)[0] if isinstance(label, str) else label for label in labels],
|
|
55
|
+
dtype=object,
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def _lookup_masses(labels):
|
|
60
|
+
masses = np.zeros(len(labels), dtype=np.float64)
|
|
61
|
+
for i, label in enumerate(labels):
|
|
62
|
+
label = str(label)
|
|
63
|
+
masses[i] = mda_tables.masses.get(
|
|
64
|
+
label, mda_tables.masses.get(label.upper(), 0.0)
|
|
65
|
+
)
|
|
66
|
+
return masses
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def _atom_masses(molecule: mda.Universe):
|
|
70
|
+
try:
|
|
71
|
+
masses = molecule.atoms.masses.copy()
|
|
72
|
+
except NoDataError:
|
|
73
|
+
masses = np.zeros(molecule.atoms.n_atoms, dtype=np.float64)
|
|
74
|
+
|
|
75
|
+
null_indices = masses == 0
|
|
76
|
+
if np.any(null_indices):
|
|
77
|
+
masses[null_indices] = _lookup_masses(_mass_labels(molecule)[null_indices])
|
|
78
|
+
return masses
|
|
79
|
+
|
|
80
|
+
|
|
25
81
|
# pathes = get_data_path()
|
|
26
82
|
# imgs = apply_pipeline(pathes=pathes, pipeline=pipeline_img)
|
|
27
83
|
# distances_to_letter, ytest = img_distances(imgs)
|
|
@@ -253,7 +309,8 @@ def lines2bonds(
|
|
|
253
309
|
|
|
254
310
|
|
|
255
311
|
def lines2bonds_MOL2(mol: mda.Universe):
|
|
256
|
-
|
|
312
|
+
with open(mol.filename, "r") as molecule_file:
|
|
313
|
+
_lines = molecule_file.readlines()
|
|
257
314
|
out = []
|
|
258
315
|
index = 0
|
|
259
316
|
while index < len(_lines) and _lines[index].strip() != "@<TRIPOS>BOND":
|
|
@@ -281,7 +338,7 @@ def lines2bonds_PDB(mol: mda.Universe):
|
|
|
281
338
|
def _mol2graphst(
|
|
282
339
|
path: str | mda.Universe, filtrations: Iterable[str], molecule_format=None
|
|
283
340
|
):
|
|
284
|
-
molecule =
|
|
341
|
+
molecule = _load_molecule(path)
|
|
285
342
|
|
|
286
343
|
num_filtrations = len(filtrations)
|
|
287
344
|
nodes = molecule.atoms.indices.reshape(1, -1)
|
|
@@ -320,12 +377,7 @@ def _mol2graphst(
|
|
|
320
377
|
charges = molecule.atoms.charges
|
|
321
378
|
st.fill_lowerstar(charges, parameter=i)
|
|
322
379
|
case "atomic_mass":
|
|
323
|
-
masses = molecule
|
|
324
|
-
null_indices = masses == 0
|
|
325
|
-
if np.any(null_indices): # guess if necessary
|
|
326
|
-
masses[null_indices] = guess_masses(molecule.atoms.types)[
|
|
327
|
-
null_indices
|
|
328
|
-
]
|
|
380
|
+
masses = _atom_masses(molecule)
|
|
329
381
|
st.fill_lowerstar(-masses, parameter=i)
|
|
330
382
|
case _:
|
|
331
383
|
pass
|
|
@@ -342,7 +394,7 @@ def _mol2ripsst(
|
|
|
342
394
|
import gudhi as gd
|
|
343
395
|
|
|
344
396
|
assert "bond_length" == filtrations[0], "Bond length has to be first for rips."
|
|
345
|
-
molecule =
|
|
397
|
+
molecule = _load_molecule(path)
|
|
346
398
|
num_parameters = len(filtrations)
|
|
347
399
|
st_rips = gd.RipsComplex(
|
|
348
400
|
points=molecule.atoms.positions, max_edge_length=threshold
|
|
@@ -391,12 +443,7 @@ def _mol2ripsst(
|
|
|
391
443
|
charges = molecule.atoms.charges
|
|
392
444
|
st.fill_lowerstar(charges, parameter=i)
|
|
393
445
|
case "atomic_mass":
|
|
394
|
-
masses = molecule
|
|
395
|
-
null_indices = masses == 0
|
|
396
|
-
if np.any(null_indices): # guess if necessary
|
|
397
|
-
masses[null_indices] = guess_masses(molecule.atoms.types)[
|
|
398
|
-
null_indices
|
|
399
|
-
]
|
|
446
|
+
masses = _atom_masses(molecule)
|
|
400
447
|
# print(masses)
|
|
401
448
|
st.fill_lowerstar(-masses, parameter=i)
|
|
402
449
|
case _:
|
|
@@ -442,7 +489,7 @@ class Molecule2SimplexTree(BaseEstimator, TransformerMixin):
|
|
|
442
489
|
def fit(self, X: Iterable[str], y=None):
|
|
443
490
|
if len(X) == 0:
|
|
444
491
|
return self
|
|
445
|
-
test_mol =
|
|
492
|
+
test_mol = _load_molecule(X[0])
|
|
446
493
|
self._molecule_format = test_mol.filename.split(".")[-1].lower()
|
|
447
494
|
return self
|
|
448
495
|
|