For undirected graphs, head and tail is not defined.  In this case
head_of returns vertices incident to the supplied edges, and
tail_of returns the other end(s) of the edge(s).
head_of(graph, es)The input graph.
The edges to query.
A vertex sequence with the head(s) of the edge(s).
Other structural queries: [.igraph,
  [[.igraph, adjacent_vertices,
  are_adjacent, ends,
  get.edge.ids, gorder,
  gsize, incident_edges,
  incident, is_directed,
  neighbors, tail_of