pub fn is_cograph(graph: &Graph) -> IgraphResult<bool>Expand description
Check whether a graph is a cograph (P4-free).
A cograph contains no induced path on 4 vertices. Cographs are also known as complement-reducible graphs.
Uses the recursive characterization: a graph is a cograph iff either it or its complement is disconnected, and every component (of whichever is disconnected) is a cograph.
Returns false for directed graphs.
An empty graph (0 vertices) is a cograph (vacuously). A single vertex is a cograph. Any complete graph is a cograph. Any edgeless graph is a cograph.
ยงExamples
use rust_igraph::{Graph, is_cograph};
// K3: cograph
let mut g = Graph::with_vertices(3);
g.add_edge(0, 1).unwrap();
g.add_edge(1, 2).unwrap();
g.add_edge(2, 0).unwrap();
assert!(is_cograph(&g).unwrap());
// P4 (path on 4 vertices) is NOT a cograph
let mut g = Graph::with_vertices(4);
g.add_edge(0, 1).unwrap();
g.add_edge(1, 2).unwrap();
g.add_edge(2, 3).unwrap();
assert!(!is_cograph(&g).unwrap());