Graph terminology: vertex, node, edge, arc

The distinction between vertex and node seems to me to be mostly about discipline (e.g. whether you come from combinatorics or computer science) and is irrelevant. The distinction between edge and arc can sometimes be relevant depending on who's using it: combinatorialists sometimes use "edge" to mean "undirected edge" and "arc" to mean "directed edge," although this usage is not universal.


You can take a look at "Introduction to Graph Theory" of Douglas B. West.

At page 3/Example 1.1.5 of the Second Edition:

The terms "vertex" and "edge" arise from solid geometry. A cube has vertices and edges, and these form the vertex set and edge set of a graph.

At page 55/Remark 1.4.8 of the Second Edition:

We often use the same names for corresponding concepts in the graph and digraph models. Many authors replace "vertex" and "edge" with "node" and "arc" to discuss digraphs, but this obscures the analogies. Some results have the same statements and proofs; it would be wasteful to repeat them just to change terminology (especially in Chapter 4).

Also, a graph G can be modeled using a digraph D in which each edge uv E E(G) is replaced with UV, vu E E(D). In this way, results about digraphs can be applied to graphs. Since the notion of "edge" in digraphs extends the notion of "edge" in graphs, using the same name makes sense.

So according to this book, vertices and edges are for undirected graphs due to the analogy with solid geometry and node and arcs are for directed graphs.

In computer science, "node" and "edge" are used in both cases. I think the only mistake you could make is to use the term "arc" for undirected graph.


My readings suggests "arc" and "edge" are conceptually the same. Yet, LEMON ( http://lemon.cs.elte.hu/trac/lemon )has separate functions/methods for arcs & edges. I have played with it but not enough to understand the difference, in their usage.