Initialises the colgen instance ColgenInstance. A colgen instance is an instance of the colgen solver, to which colgen partial linear arithmetic constraints can be posted, and to which an external LP solver can be associated and used to optimise the posted constraints with respect to some objective.
If ColgenInstance is not an already existing colgen instance, a new colgen instance will be created and initialised. If it is an existing colgen instance, and it is not currently being used (having no outstanding posted constraints and no associated solver), it is effectively reinitialised. Otherwise, the predicate aborts with an error. Note that a colgen instance is a module, and each colgen instance can be associated with at most one solver at any time and vice versa.