When modeling a constraint satisfaction problem in Picat using the `cp` module, what is the primary purpose of the `solve/1` predicate?
-
A
To declare the domains of the constraint variables.
-
B
To post the arithmetic and global constraints to the solver.
-
C
To initiate the search process for finding a valid assignment of values to the variables.
-
D
To verify if a manually assigned set of values satisfies all constraints.