Skip to main content

Count or list the cliques in a graph using the Pivoter algorithm.

Project description

PyPivoter

Purpose

The purpose of this package is to count and/or list the cliques, or fully-connected subgraphs, within a graph using the fast Pivoter algorithm developed by Shweta Jain and C. Seshadhri.

Installation

From a repository checkout

make install

or

CYTHONIZE=1 pip install --user .

From PyPi

pip install --user pypivoter

Use

The two main functions available to the user are countCliques and enumerateCliques, which can be imported as follows:

>> from pypivoter.degeneracy_cliques import countCliques, enumerateCliques

Both take two arguments. The first is an m x 2 NumPy array of integer indices of vertex pairs that comprise the edges of a graph, with no repeated or reversed pairs or self-adjacency. The second is an integer, the maximum clique size to output. If the second argument is 0, all sizes will be output.

Example output from countCliques is:

>> import numpy as np
>> from pypivoter.degeneracy_cliques import countCliques
>> tetrahedron = np.array([[0, 1], [0, 2], [0, 3], [1, 2], [1, 3], [2, 3]])
>> countCliques(tetrahedron, 0)
[1 4 6 4 1]

Example output from enumerateCliques is:

>> import numpy as np
>> from pypivoter.degeneracy_cliques import enumerateCliques
>> tetrahedron = np.array([[0, 1], [0, 2], [0, 3], [1, 2], [1, 3], [2, 3]])
>> enumerateCliques(tetrahedron, 0)
[array([], shape=(0, 0), dtype=int32), array([[0],
       [1],
       [2],
       [3]], dtype=int32), array([[1, 0],
       [2, 0],
       [2, 1],
       [3, 1],
       [3, 0],
       [3, 2]], dtype=int32), array([[2, 0, 1],
       [3, 1, 0],
       [3, 1, 2],
       [3, 0, 2]], dtype=int32), array([[3, 1, 0, 2]], dtype=int32)]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypivoter-0.0.4.tar.gz (87.2 kB view details)

Uploaded Source

Built Distribution

pypivoter-0.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (49.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

File details

Details for the file pypivoter-0.0.4.tar.gz.

File metadata

  • Download URL: pypivoter-0.0.4.tar.gz
  • Upload date:
  • Size: 87.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.12

File hashes

Hashes for pypivoter-0.0.4.tar.gz
Algorithm Hash digest
SHA256 209308d5cd2cc131375e251828c638917a8b0a8efc42bac64366b92f31b90e8c
MD5 fac70b9412742803b9eac5acc58808cd
BLAKE2b-256 fbbf3082f6e6b7132488a5061c4040b25d0057dace763b20d468369f49924752

See more details on using hashes here.

File details

Details for the file pypivoter-0.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pypivoter-0.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0bde7d61e82b186cb0c508335953d67b06eaf1d27d79fd2b8a77ed7683a70914
MD5 99249d39dc7208b31b82524bc752435d
BLAKE2b-256 1cedee42de1ddda2e4e290b0b0fcc74e60f38c51bdc8c8b40cf384c3069255e7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page