# TriangulationMethod

``public enum TriangulationMethod``

The TriangulationMethod type represents the triangulation method used for this `Domain`. Triangulation is the process of transforming the graph of a `Domain` to a triangulated graph, which forms the basis for constructing the JunctionTree of the `Domain`.

• ``` cliqueSize ```

Represents the clique-size triangulation heuristic.

Triangulation is the process of transforming the graph of this `Domain` to a triangulated graph, which forms the basis for constructing the JunctionTree of the `Domain`.

As its score function, this heuristic uses the size of N(v), where N(v) is the set of neighbors of the target node v (i.e., the node to be eliminated next in the elimination order used for triangulating the graph).

#### Declaration

Swift

``case cliqueSize``
• ``` cliqueWeight ```

Represents the clique-weight triangulation heuristic.

Triangulation is the process of transforming the graph of this `Domain` to a triangulated graph, which forms the basis for constructing the JunctionTree of the `Domain`.

As its score function, this heuristic uses the product of the number of states of the discrete nodes in N(v) multiplied by a

• bm(m + 3)/2, where m is the number of continuous nodes in N(v), a and b are the size of the types h_number_t and h_double_t, respectively, and N(v) is the set of neighbors of the target node v (i.e., the node to be eliminated next in the elimination order used for triangulating the graph).

#### Declaration

Swift

``case cliqueWeight``
• ``` fillInSize ```

Represents the fill-in-size triangulation heuristic.

Triangulation is the process of transforming the graph of this `Domain` to a triangulated graph, which forms the basis for constructing the JunctionTree of the `Domain`.

As its score function, this heuristic uses the number of fill-in links required to complete the neighbors of a target node (i.e., the node to be eliminated next in the elimination order used for triangulating the graph).

#### Declaration

Swift

``case fillInSize``
• ``` fillInWeight ```

Represents the fill-in-weight triangulation heuristic.

Triangulation is the process of transforming the graph of this `Domain` to a triangulated graph, which forms the basis for constructing the JunctionTree of the `Domain`.

As its score function, this heuristic uses the sum of the weights of the fill-in links required to complete the neighbors of a target node (i.e., the node to be eliminated next in the elimination order used for triangulating the graph).

#### Declaration

Swift

``case fillInWeight``
• ``` bestGreedy ```

Represents the best-greedy triangulation heuristic.

Triangulation is the process of transforming the graph of this `Domain` to a triangulated graph, which forms the basis for constructing the JunctionTree of the `Domain`.

This heuristic tries all the greedy elimination heuristics and uses the best result.

#### Declaration

Swift

``case bestGreedy``
• ``` totalWeight ```

Represents the total clique-table size triangulation algorithm.

Triangulation is the process of transforming the graph of this `Domain` to a triangulated graph, which forms the basis for constructing the JunctionTree of the `Domain`.

This algorithm is also sometimes referred to as the optimal triangulation algorithm.

`Domain.setInitialTriangulation([Node])`

`Domain.setMaxNumberOfSeparators(Int?)`
`Domain.setMaxSeparatorSize (Int?)`
``case totalWeight``