To implement the cut generator process, the user must provide a function that accepts an LP solution and returns cuts violated by that solution to the NP module. In parallel configurations, each cut is returned immediately to the NP module, rather than being passed back as a group once the function exits. This allows the LP to begin adding cuts and solving the current relaxation before the cut generator is finished if desired. Parameters controlling if and when the LP should begin solving the relaxation before the cut generator is finished can be set by the user.
SYMPHONY generates generic cutting planes using the Cut Generator Library, also available from COIN-OR The CGL can be used to generate cuts in cases where problem-specific cutting planes are not available or not implemented yet.