// Now check the desired precision was actually achieved.
STORM_LOG_THROW(std::fabs(static_cast<int>(value)-value)<=storm::settings::getModule<storm::settings::modules::GlpkSettings>().getIntegerTolerance(),storm::exceptions::InvalidStateException,"Illegal value for integer variable in glpk solution ("<<value<<").");
returnstatic_cast<int_fast64_t>(value);
doubleroundedValue=std::round(value);
doublediff=std::abs(roundedValue-value);
STORM_LOG_ERROR_COND(diff<=storm::settings::getModule<storm::settings::modules::GlpkSettings>().getIntegerTolerance(),"Illegal value for integer variable in GLPK solution ("<<value<<"). Difference to nearest int is "<<diff);
STORM_LOG_THROW(std::fabs(static_cast<int>(value)-value)<=storm::settings::getModule<storm::settings::modules::GlpkSettings>().getIntegerTolerance(),storm::exceptions::InvalidStateException,"Illegal value for binary variable in glpk solution ("<<value<<").");
if(value>0.5){
STORM_LOG_ERROR_COND(std::abs(value-1.0)<=storm::settings::getModule<storm::settings::modules::GlpkSettings>().getIntegerTolerance(),"Illegal value for binary variable in GLPK solution ("<<value<<").");
returntrue;
}else{
STORM_LOG_ERROR_COND(std::abs(value)<=storm::settings::getModule<storm::settings::modules::GlpkSettings>().getIntegerTolerance(),"Illegal value for binary variable in GLPK solution ("<<value<<").");
STORM_LOG_THROW(error==0,storm::exceptions::InvalidStateException,"Unable to get Gurobi solution ("<<GRBgeterrormsg(env)<<", error code "<<error<<").");
STORM_LOG_THROW(error==0,storm::exceptions::InvalidStateException,"Unable to get Gurobi solution ("<<GRBgeterrormsg(env)<<", error code "<<error<<").");
if(value>0.5){
if(value>0.5){
STORM_LOG_ERROR_COND(std::abs(value-1.0)<=storm::settings::getModule<storm::settings::modules::GurobiSettings>().getIntegerTolerance(),"Illegal value for integer variable in Gurobi solution ("<<value<<").");
STORM_LOG_ERROR_COND(std::abs(value-1.0)<=storm::settings::getModule<storm::settings::modules::GurobiSettings>().getIntegerTolerance(),"Illegal value for binary variable in Gurobi solution ("<<value<<").");
returntrue;
returntrue;
}else{
}else{
STORM_LOG_ERROR_COND(std::abs(value)<=storm::settings::getModule<storm::settings::modules::GurobiSettings>().getIntegerTolerance(),"Illegal value for integer variable in Gurobi solution ("<<value<<").");
STORM_LOG_ERROR_COND(std::abs(value)<=storm::settings::getModule<storm::settings::modules::GurobiSettings>().getIntegerTolerance(),"Illegal value for binary variable in Gurobi solution ("<<value<<").");