fix  violates_inequality? and illigle?