/* Reference :
Tiihonen, J., Soininen, T., Niemela, I., Sulonen, R.:
Empirical testing of a weight constraint rule based configurator.
In ECAI 2002 Configuration Workshop. (2002) 17--22
http://www.soberit.hut.fi/pdmg/Empirical/index.html
File: esvs.pm
Desc: ILOG instance for ESVS Benchmark
Auth: Sathi
Date: Mon July 12 2004
*/
variable
Control_type:[0..1];
Control_voltage:[0..1];
Start_system_nonesome:[0..3];
Modulating_air_valve_control_nonesome:[0..2];
Week_timer:[0..1];
Communication_bus_RS485:[0..1];
Cooling:[0..1];
Water_type_nonesome:[0..3];
Cooling_System_nonesome:[0..3];
Additional_Water_Cooling_nonesome:[0..3];
Supply_voltage_and_frequency:[0..9];
Supply_voltage:[0..5];
Supply_frequency:[0..1];
Maximum_capacity:[0..60];
Nominal_power:[0..4];
Pressure:[0..4];
Document_language:[0..8];
Super_Novox_inlet:[0..2];
Super_Novox_outlet:[0..1];
Canopy_filter:[0..1];
Integrated_refridgeration_air_dryer:[0..1];
Oil_water_separator:[0..1];
Water_draining_system:[0..2];
Maximum_ambient_temperature:[0..2];
Altitude:[0..1];
Packaging:[0..4];
rule
( Control_type = 0 )-> ((Week_timer = 1 ) and (Communication_bus_RS485 = 1)
and (Start_system_nonesome = 0)
and (Modulating_air_valve_control_nonesome = 0) );
( Control_type = 1 )-> ( (Start_system_nonesome <> 0)
and (Modulating_air_valve_control_nonesome <> 0) );
(Cooling = 0) -> ( (Water_type_nonesome <> 0 )
and (Cooling_System_nonesome <> 0)
and (Additional_Water_Cooling_nonesome <> 0 )
);
(Cooling = 1) -> ( (Water_type_nonesome = 0 )
and (Cooling_System_nonesome = 0)
and (Additional_Water_Cooling_nonesome = 0 )
);
(
((Maximum_capacity = 0) and (Nominal_power = 0 ) and (Pressure = 4 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 1) and (Nominal_power = 1 ) and (Pressure = 4 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 2) and (Nominal_power = 0 ) and (Pressure = 3 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 3) and (Nominal_power = 1 ) and (Pressure = 3 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 3) and (Nominal_power = 1 ) and (Pressure = 3 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0 ) or ( Supply_voltage = 1 )))
or ((Maximum_capacity = 4) and (Nominal_power = 0 ) and (Pressure = 1 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 5) and (Nominal_power = 1 ) and (Pressure = 2 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 6) and (Nominal_power = 1 ) and (Pressure = 3 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2 ) or ( Supply_voltage = 3 )))
or ((Maximum_capacity = 7) and (Nominal_power = 2 ) and (Pressure = 4 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 8) and (Nominal_power = 1 ) and (Pressure = 1 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0 ) or ( Supply_voltage = 1 )))
or ((Maximum_capacity = 9) and (Nominal_power = 1 ) and (Pressure = 1 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 10) and (Nominal_power =2 ) and (Pressure = 3 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2 ) or ( Supply_voltage = 3 )))
or ((Maximum_capacity = 11) and (Nominal_power = 3 ) and (Pressure = 4 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 12) and (Nominal_power = 2 ) and (Pressure = 3 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 13) and (Nominal_power = 2 ) and (Pressure = 2 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 14) and (Nominal_power = 4 ) and (Pressure = 4 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 15) and (Nominal_power = 1 ) and (Pressure = 0 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 16) and (Nominal_power = 3 ) and (Pressure = 3 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 17) and (Nominal_power = 2 ) and (Pressure = 1 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 18) and (Nominal_power = 3 ) and (Pressure = 2 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 19) and (Nominal_power = 4 ) and ((Pressure = 2 ) or (Pressure = 3 ) ) and ((Supply_frequency = 0 ) or (Supply_frequency = 1 )))
or ((Maximum_capacity = 20) and (Nominal_power = 3 ) and (Pressure = 1 ) and (Supply_frequency = 0 ))
or ((Maximum_capacity = 20) and (Nominal_power = 3 ) and (Pressure = 1 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0 ) or ( Supply_voltage = 1 ) ) )
or ((Maximum_capacity = 21) and (Nominal_power = 3 ) and (Pressure = 1 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2 ) or ( Supply_voltage = 3 ) ) )
or ((Maximum_capacity = 22) and (Nominal_power = 3 ) and (Pressure = 0 ) and (Supply_frequency = 0 ) )
or ((Maximum_capacity = 22) and (Nominal_power = 4 ) and (Pressure = 1 ) and (Supply_frequency = 0 ) )
or ((Maximum_capacity = 23) and (Nominal_power = 0 ) and (Pressure = 0 ) and (Supply_frequency = 0 ) )
or ((Maximum_capacity = 24) and (Nominal_power = 0 ) and (Pressure = 2 ) and (Supply_frequency = 0 ) )
or ((Maximum_capacity = 25) and (Nominal_power = 0 ) and (Pressure = 0 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 26) and (Nominal_power = 0 ) and (Pressure = 1 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 27) and (Nominal_power = 0 ) and (Pressure = 2 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 28) and (Nominal_power = 0 ) and (Pressure = 3 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 29) and (Nominal_power = 0 ) and (Pressure = 4 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 30) and (Nominal_power = 0 ) and (Pressure = 0 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 31) and (Nominal_power = 0 ) and (Pressure = 1 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 32) and (Nominal_power = 0 ) and (Pressure = 2 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 33) and (Nominal_power = 0 ) and (Pressure = 3 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 34) and (Nominal_power = 0 ) and (Pressure = 4 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 35) and (Nominal_power = 1 ) and (Pressure = 0 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 36) and (Nominal_power = 1 ) and (Pressure = 2 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 37) and (Nominal_power = 1 ) and (Pressure = 4 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 38) and (Nominal_power = 1 ) and (Pressure = 0 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 39) and (Nominal_power = 1 ) and (Pressure = 1 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 40) and (Nominal_power = 1 ) and (Pressure = 2 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 41) and (Nominal_power = 1 ) and (Pressure = 4 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 42) and (Nominal_power = 2 ) and (Pressure = 0 ) and (Supply_frequency = 0 ) )
or ((Maximum_capacity = 43) and (Nominal_power = 2 ) and (Pressure = 0 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 44) and (Nominal_power = 2 ) and (Pressure = 1 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 45) and (Nominal_power = 2 ) and (Pressure = 2 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 46) and (Nominal_power = 2 ) and (Pressure = 3 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 47) and (Nominal_power = 2 ) and (Pressure = 4 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 48) and (Nominal_power = 2 ) and (Pressure = 0 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 49) and (Nominal_power = 2 ) and (Pressure = 1 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 50) and (Nominal_power = 2 ) and (Pressure = 2 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 51) and (Nominal_power = 2 ) and (Pressure = 4 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 52) and (Nominal_power = 3 ) and (Pressure = 0 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 53) and (Nominal_power = 3 ) and (Pressure = 2 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 54) and (Nominal_power = 3 ) and (Pressure = 3 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 55) and (Nominal_power = 3 ) and (Pressure = 4 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 0) or ( Supply_voltage = 1) ) )
or ((Maximum_capacity = 56) and (Nominal_power = 3 ) and (Pressure = 0 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 57) and (Nominal_power = 3 ) and (Pressure = 2 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 58) and (Nominal_power = 3 ) and (Pressure = 3 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 59) and (Nominal_power = 3 ) and (Pressure = 4 ) and (Supply_frequency = 1 ) and ( (Supply_voltage = 2) or ( Supply_voltage = 3) ) )
or ((Maximum_capacity = 60) and (Nominal_power = 4 ) and (Pressure = 0 ) and ( (Supply_frequency = 0 ) or (Supply_frequency = 1 )) )
);
(Supply_voltage_and_frequency = 0) -> ( ( Supply_voltage = 1 ) and ( Supply_frequency = 0 ) );
(Supply_voltage_and_frequency = 1) -> ( ( Supply_voltage = 0 ) and ( Supply_frequency = 0 ) );
(Supply_voltage_and_frequency = 2) -> ( ( Supply_voltage = 1 ) and ( Supply_frequency = 0 ) );
(Supply_voltage_and_frequency = 3) -> ( ( Supply_voltage = 1 ) and ( Supply_frequency = 0 ) );
(Supply_voltage_and_frequency = 4) -> ( ( Supply_voltage = 4 ) and ( Supply_frequency = 0 ) );
(Supply_voltage_and_frequency = 5) -> ( ( Supply_voltage = 5 ) and ( Supply_frequency = 0 ) );
(Supply_voltage_and_frequency = 6) -> ( ( Supply_voltage = 0 ) and ( Supply_frequency = 1 ) );
(Supply_voltage_and_frequency = 7) -> ( ( Supply_voltage = 1 ) and ( Supply_frequency = 1 ) );
(Supply_voltage_and_frequency = 8) -> ( ( Supply_voltage = 2 ) and ( Supply_frequency = 1 ) );
(Supply_voltage_and_frequency = 9) -> ( ( Supply_voltage = 3 ) and ( Supply_frequency = 1 ) );
( ( Super_Novox_inlet = 0 ) or ( Canopy_filter = 0 ));
( Control_type = 0 )-> ( Nominal_power = 4);
( Control_type = 1)-> ( Nominal_power <> 4);
( not ( ( Control_type = 0 ) and ( (Supply_voltage_and_frequency = 1) or (Supply_voltage_and_frequency = 6) ) ) );
( Integrated_refridgeration_air_dryer = 1 ) -> ( Water_draining_system = 1 );
( Oil_water_separator = 1) -> ( Water_draining_system = 1 );