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.5.tar.gz (90.0 kB view details)

Uploaded Source

Built Distribution

pypivoter-0.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (49.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

File details

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

File metadata

  • Download URL: pypivoter-0.0.5.tar.gz
  • Upload date:
  • Size: 90.0 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.5.tar.gz
Algorithm Hash digest
SHA256 ac0cc3f6b3529e5fd2c547200544f836ab7b57ac4775412c2496120a6474fad7
MD5 ed3e5fb8b5379d64409785f6be0382f9
BLAKE2b-256 c772136bf2809c669c7341ea048daeda6b5aadecb9fb91388840a446591de446

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pypivoter-0.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c305ea7297686d077ce7647a32831a889c952fb42566e4b0fe520487df0c27c6
MD5 f1d9f0fdaa9cac0626d8d3ce4ea427d0
BLAKE2b-256 24b89051294b26a876291728cdc55db47d8767107c18eb66c166f547414ecd15

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