2-sat library