The arrow is the clue that backtracking is part of Prolog. Unlike in logic, Prolog did not find all the values of X for which the query pattern is true. It just found the first one. Asking for still more produces no because there are no more solutions. Backtracking is the repeated searching for additional solutions, so named because Prolog goes back and tries again to find a solution.
Unification is the binding of X with each name in succession.
Prolog's unification pattern-matching algorithm is much more powerful than this simple example can show, and it can be used to express elegant solutions to many complex problems. Backtracking search quickly converges on solutions without the need for the developer to code the flow of control structures. Figure 1 schematically shows the full procedurality. That is the significance of the upper left diamond. If Prolog succeeds in finding a match it exits, binding X to the value.