  This work extends the existing MACE-style finite model finding approach to
multi-sorted first order logic. This existing approach iteratively assumes
increasing domain sizes and encodes the related ground problem as a SAT
problem. When moving to the multi-sorted setting each sort may have a different
domain size, leading to an explosion in the search space. This paper focusses
on methods to tame that search space. The key approach adds additional
information to the SAT encoding to suggest which domains should be grown.
Evaluation of an implementation of techniques in the Vampire theorem prover
shows that they dramatically reduce the search space and that this is an
effective approach to find finite models in multi-sorted first order logic.
