Skip to main content

count_isomorphisms_vf2

Function count_isomorphisms_vf2 

Source
pub fn count_isomorphisms_vf2(
    graph1: &Graph,
    graph2: &Graph,
    vertex_color1: Option<&[u32]>,
    vertex_color2: Option<&[u32]>,
    edge_color1: Option<&[u32]>,
    edge_color2: Option<&[u32]>,
) -> IgraphResult<u64>
Expand description

Count the number of VF2 isomorphic mappings between two graphs.

Calling this with the same graph as both arguments counts the graph’s automorphisms. Colour arguments behave as in isomorphic_vf2.

§Errors

Same conditions as isomorphic_vf2.

§Examples

use rust_igraph::{Graph, count_isomorphisms_vf2};

// A 4-cycle has 8 automorphisms (4 rotations x 2 reflections).
let mut g = Graph::new(4, false).unwrap();
g.add_edge(0, 1).unwrap();
g.add_edge(1, 2).unwrap();
g.add_edge(2, 3).unwrap();
g.add_edge(3, 0).unwrap();
let count = count_isomorphisms_vf2(&g, &g, None, None, None, None).unwrap();
assert_eq!(count, 8);