# Functor Oper.Neighbourhood

    module Neighbourhood: functor (G : sigtype t

    module V: Sig.COMPARABLE val fold_succ : (V.t -> 'a -> 'a) -> t -> V.t -> 'a -> 'aval succ : t -> V.t -> V.t listend) -> sig .. end

Neighbourhood of vertex / vertices

Parameters:

`G` | : | `sig type t module V : Sig.COMPARABLE val fold_succ: (V.t -> 'a -> 'a) -> t -> V.t -> 'a -> 'a val succ: t -> V.t -> V.t list end`

    module Vertex_Set: Set.S  with type elt = G.V.t

The neighbourhood of a vertex `v` is { v' | (succ g v) and (v <> v') }

    val list_from_vertex : G.t -> G.V.t -> G.V.t list

Neighbourhood of a vertex as a list.

    val set_from_vertex : G.t -> G.V.t -> Vertex_Set.t

Neighbourhood of a vertex as a set. Less efficient that `list_from_vertex`.
The neighbourhood of a set `S` of vertices is `U \ S` where `U` is the union of neighbourhoods of each vertex of `S`.

    val list_from_vertices : G.t -> G.V.t list -> G.V.t list

Neighbourhood of a list of vertices as a list.

    val set_from_vertices : G.t -> G.V.t list -> Vertex_Set.t

Neighbourhood of a list of vertices as a set. More efficient that `list_from_vertices`.