In this subsection we give three definitions regarding the labeling procedure.
labeling/2or an equivalent predicate and finishes by exiting this predicate. Normally, there is at most one labeling session per run.
enummode labeling, a single labeling attempt tries every possible value, but in
stepmode labeling, several binary choicepoints are created.
As you can see there is a hierarchical relation among these definitions: a labeling session consists of several labeling attempts, which, in turn, might consist of several labeling steps.
A labeling event, on the other hand, can either be a labeling step, or the start of a labeling attempt, or the failure of the same. See FDBG Events.