Wrapper for Boyer’s (C) planarity algorithm#
- sage.graphs.planarity.is_planar(g, kuratowski=False, set_pos=False, set_embedding=False)[source]#
Check whether
g
is planar using Boyer’s planarity algorithm.If
kuratowski
isFalse
, returnsTrue
ifg
is planar,False
otherwise. Ifkuratowski
isTrue
, returns a tuple, first entry is a boolean (whether or not the graph is planar) and second entry is a Kuratowski subgraph, i.e. an edge subdivision of \(K_5\) or \(K_{3,3}\) (if not planar) orNone
(if planar). Also, will set an_embedding
attribute for the graphg
ifset_embedding
is set toTrue
.INPUT:
kuratowski
– boolean (default:False
); when set toTrue
, return a tuple of a boolean and eitherNone
or a Kuratowski subgraph (i.e. an edge subdivision of \(K_5\) or \(K_{3,3}\)). When set toFalse
, returnsTrue
ifg
is planar,False
otherwise.set_pos
– boolean (default:False
); whether to use Schnyder’s algorithm to determine and set positionsset_embedding
– boolean (default:False
); whether to record the combinatorial embedding returned (seeget_embedding()
)
EXAMPLES:
sage: G = graphs.DodecahedralGraph() sage: from sage.graphs.planarity import is_planar sage: is_planar(G) True sage: Graph('@').is_planar() True
>>> from sage.all import * >>> G = graphs.DodecahedralGraph() >>> from sage.graphs.planarity import is_planar >>> is_planar(G) True >>> Graph('@').is_planar() True