4.3. Graph invariants
Within the scope of the graph-based description this section shows how to use implied constraints, which are systematically linked to the description of a global constraint. This usually occurs in the following context:
Quite often, it happens that one wants to enforce the final graph to satisfy more than one graph property. In this context, these graph properties involve several graph parameters that cannot vary independently.
EXAMPLE: As a practical example, consider the constraint and its first graph constraint. It involves the four graph parameters , , and , which respectively correspond to the number of connected components, the number of vertices of the smallest connected component, the number of vertices of the largest connected component and the number of vertices of the final graph. In this example the number of connected components of the final graph cannot vary independently from the size of the smallest connected component. The same remark applies also for the size of the largest connected component. Having a graph invariant that directly relates the four graph parameters can dramatically improve the propagation.
Even though the description of a global constraint involves a single graph parameter , we can introduce the number of vertices, , and the number of arcs, , of the final digraph. In this context, we can take advantage of graph invariants linking , and .
It also happens that we enforce two graph constraints and that have the same initial graph . In this context we consider the following situations:
Each arc of belongs to one of the final graphs associated with or with (but not to both). An example of such global constraint is the constraint. Within the graph invariants this situation is denoted by .
Each vertex of belongs to one of the final graphs associated with or with (but not to both). An example of such global constraint is the constraint. Within the graph invariants this situation is denoted by .
In these situations the graph properties associated with the two graph constraints are also not independent.
In practice the graphs associated with global constraints have a regular structure that comes from the initial graph or from the property of the arc constraints. So, in addition to graph invariants that hold for any graph, we want also tighter graph invariants that hold for specific graph classes. The next section introduces the graph classes we consider, while the two other sections give the graph invariants on one and two graphs.
- 4.3.1. Graph classes
- 4.3.2. Format of an invariant
- 4.3.3. Using the database of invariants
- 4.3.4. The database of graph invariants
- 4.3.4.1. one parameter/one final graph
- 4.3.4.2. two parameters/one final graph
- 4.3.4.3. three parameters/one final graph
- 4.3.4.4. four parameters/one final graph
- 4.3.4.5. five parameters/one final graph
- 4.3.4.6. two parameters/two final graphs
- 4.3.4.7. three parameters/two final graphs
- 4.3.4.8. four parameters/two final graphs
- 4.3.4.9. five parameters/two final graphs
- 4.3.4.10. six parameters/two final graphs