Skip to content

JanJend/Stable-Decomposition

Repository files navigation

Multiparameter Persistence Pruning

A C++ implementation for computing the pruning of a multiparameter persistence module.

Overview

This tool reads a presentation matrix from a file, computes the pruning, and optionally saves the result as a minimal presentation matrix.

Building

mkdir build
cmake ..
make .

Usage

./main <file_path> [options]

Options

  • --delta <value> - Set delta threshold value (default: 1% of the range of all degrees)
  • --no-output - Skip saving the output file
  • --no-timers - Disable timing output (doesnt work yet)

Examples

# Basic usage with default delta
./matrix_pruning input.scc

# Custom delta value
./matrix_pruning input.scc --delta 0.05

# Process without saving output
./matrix_pruning input.scc --no-output --no-timers

# Combine options
./matrix_pruning input.scc --delta 0.01 --no-timers

Input Format

The program expects input files in .scc - sparse chain complex - format (link to paper).

Output

Output files are automatically named with the pattern: <input_name>_pru<delta><extension>

Example: torus3_largestcomp.scctorus3_largestcomp_pru0.0200.scc

Default Behavior

If no arguments are provided, the program uses tests/torus3_largestcomp.scc as the default input file.

Version

Version

Current version: 0.2

Authors

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Citation

If you use this software in your research, please cite:

@software{multiparameter_pruning,
  author = {Havard Bjerkevik and Jan Jendrysiak and Fabian Lenzen},
  title = {Multiparameter Persistence Pruning},
  year = {2025},
  url = {https://github.com/jendjan/Stable-Decomposition},
  license = {GPL-3.0}
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •