Skip to main content

A Python package to check the similarity of two graphs using nanotopology.

Project description

Nanotopology

The Python project to check the similarity of two graphs using nano sets.

nanosets.py file is used to find nanosets of graph

Input data

1.List of all vertices of graph.

2.Dictionary that contains vertices of graph as key and adjacent vertices as value.

Function explanation

  1. Parameters of function vh is the list of all vertices of graph(s).
  2. Parameters of function lower_approximation and upper_approximation are dictionary and the value returned by function vh.
  3. Parameters of function boundary_region are the values returned from lower-approximation and upper_approximation.
  4. nanoset is obtained by passing the values returned from lower_approximation, upper_approximation and boundary_region.

graph_euivalence.py file is used to check whether two graphs are isomorphic or not.

Dictionary that contains nodes(key) and adjacent nodes(values) of each graphs are directly passed to the equality function.

Final result will be isomorphic vertices of second graph to the first graph if two graphs are similar else false statement(graphs are not similar) will be returned.

Example

Input

d1 = { 1: [1,2,4,6], 2: [1,2,3], 3: [2,3,4], 4:[1,2,4,6], 5:[4,5,6], 6:[1,5,6] }

d2 = { a: [a,b,c,f], b: [b,e,d,a], c:[a,d,c], d:[b,c,d], e:[b,f,e], f:[e,f,a] }

Output

two graphs are similar

matching nodes

[['a', 'c', 'd', 'b', 'e', 'f'], ['a', 'd', 'c', 'b', 'f', 'e'], ['a', 'e', 'f', 'b', 'c', 'd'], ['a', 'f', 'e', 'b', 'd', 'c'], ['b', 'c', 'd', 'a', 'e', 'f'], ['b', 'd', 'c', 'a', 'f', 'e'], ['b', 'e', 'f', 'a', 'c', 'd'], ['b', 'f', 'e', 'a', 'd', 'c']]

Dependencies

1.Python >= 2.6

Project details


Release history Release notifications

This version

1.0.1

Download files

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

Files for nanotopology, version 1.0.1
Filename, size File type Python version Upload date Hashes
Filename, size nanotopology-1.0.1-py3-none-any.whl (4.2 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size nanotopology-1.0.1.tar.gz (3.4 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page