An FDBG event can (currently) belong to one of the two following major classes:

constraint event
A global constraint is woken.
labeling event
Three events belong to this class, namely:

These events are intercepted by the FDBG core. When any of them occurs, the appropriate visualizer (see FDBG Visualizers) gets called with a representation of the event (a Prolog term) as extra arguments.

Note that it is not possible to debug indexicals with FDBG. What's more, any domain narrowings done by indexicals happen unnoticed, making FDBG output harder to follow. On the other hand, arithmetical constraints (like X #> 0) are translated to global constraints instead of indexicals after consulting library(fdbg), and therefore don't lead to any misunderstandings. For this latter reason it is advisable to load library(fdbg) before any user programs.

Send feedback on this subject.