Metadata-Version: 1.1
Name: powergrasp
Version: 0.8.9
Summary: compress graphs with answer-set-programming
Home-page: https://github.com/aluriak/powergrasp
Author: Lucas Bourneuf
Author-email: lucas.bourneuf@inria.fr
License: GPL
Description: # PowerGrASP
        Graph compression.
        
        Note that this is a full reimplementation of PowerGrASP,
        taking advantage of ASP and Python lifting and simplifications.
        For the version published in 2017, see [this repository](https://github.com/aluriak/PowerGrASP-1).
        
        
        ## CLI
        
            powergrasp mygraph.gml -o compressed.bbl
        
        ### help !
        
            powergrasp --help
        
        ## API
        
        ```python
        import powergrasp
        with open('compressed.bbl', 'w') as fd:
            for line in powergrasp.compress_by_cc('mygraph.gml'):
                fd.write(line + '\n')
        ```
        
        ### help !
        Sorry, no technical doc for the moment.
        
        
        ## Configuration
        PowerGrASP has some [configuration values](powergrasp/constants.py),
        that can be overwritten by a `powergrasp.cfg` file placed in the working directory.
        
        The config file may be either in ini or json format, as shown in [`test/powergrasp.oneshot.cfg`](test/powergrasp.oneshot.cfg) and [`test/powergrasp.manyoptions.cfg`](test/powergrasp.manyoptions.cfg).
        
        Configuration allow user to define how much text will be outputed by powergrasp,
        and to tune the core compression and related optimizations.
        
        
        ## installation
        
            pip install powergrasp
        
        On random error, try adding `--no-cache-dir` at the end of the command.
        
        
        ## TODO
        - [x] unit tests
        - [x] CLI
        - [x] run on big graph
        - [x] search multiple motif in the same run (speed up observed on bio graph)
        - [x] timers for solving, full run, output writing
        - [ ] timers for extraction
        - [ ] technical documentation
        - [ ] search and specific compression of trees
        - [ ] search and specific compression of triangle-free graphs
        - [x] search multiple motif in the same run (speed up observed on bio graph)
        
        
        ## Changelog
        
        - 8.9
            - many bugfixes
            - CLINGO_OPTIONS can be a dict, mapping motif name to arbitrary parameters
        - 8.8
            - bugfix: lowerbound can't go under 2 (3 for cliques)
            - clique search: lowerbound is initially computed as the maximal degree of node of clustering coefficient equals to 1
            - use new versions of clyngor and bubbletools
        - 8.7
            - raise error when an invalid key is found in config file
            - StarSearch is dedicated to find stars, simplifying BicliqueSearch's job (enabled by default, user may use Biclique instead of both Star and NonStarBiclique)
            - specify a prefix for all (power) nodes with OUTPUT_NODE_PREFIX config field
            - arbitrary options for clingo using CLINGO_OPTIONS config field
            - bugfix on string options given in ini file, when unecessary quotes are kept
        - 8.6
            - bugfixes for INI format
        - 8.5
            - config may now be given in INI format
            - improve logging
            - config allow optimization target between memory or CPU (currently define a constraint implementation in ASP)
            - bugfix about edges yielded by ASP and multithreading parameter
            - no statistics file to write by default
            - timer for output writing
            - config allow user to define the number of CPU for clingo to use
            - simplify ASP code by removing useless arg in block/4 atoms
        - 8.4
            - replace ASP code constraint to achieve much more efficient grounding
            - configuration allow for improved lowerbound computation of bicliques
            - generated bubble allow client to give heading comments
            - handle keyboard interruption during search with grace
            - implement timers and statistics recording
            - enable multishot motif search by default
            - various bugfixes
        
Keywords: graph,Answer Set Programming
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: ASP
Classifier: Topic :: Software Development :: Libraries :: Python Modules
