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

Uploaded Source

Built Distribution

pypivoter-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (205.0 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

File details

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

File metadata

  • Download URL: pypivoter-0.0.6.tar.gz
  • Upload date:
  • Size: 90.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.3

File hashes

Hashes for pypivoter-0.0.6.tar.gz
Algorithm Hash digest
SHA256 04cd2860d4fdd9597c767cb073abf18fb5ceea8b555abee9d20ff296ef0a94b9
MD5 3b999a97e1e7d5b73becaec29c94c233
BLAKE2b-256 9781b4f7336d1b3ddd488b0fdfef9fa91ee4ce15dee7445dcaa75fa14715b87b

See more details on using hashes here.

File details

Details for the file pypivoter-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pypivoter-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 951d3c37d05295bfc89d0805c324ba56ff0bb14a3e89d522724dbb192308272a
MD5 3e9dcc260f4cb0ef826bbe92b999dbd2
BLAKE2b-256 8c58a0647896df2d7e84c042fc7039871033d6833ae35fbe6375dd68ce48a8fa

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