Стакан, по-прежнему, наполовину полон и наполовину пуст, так как это характеристика объекта на текущий момент. Глаголы "заполнить" и "опустошить" определяют процессы, которые привели его к текущему состоянию. Так что предмет типа "стакан" просто имеет несколько характеристик одновременно: наполненность и опустошенность. И даже если бы одну из характеристик пришлось убрать, вторая характеристика существовала бы косвенно: стакан на 75% полон (значит он на 25% пуст). В целом, наличие условия "или" совместно с очевидным требованием приводить его значение к бинарной системе (полон-пуст, 0-1) привело к избыточному поиску и обсуждению правильного решения изначально ограниченной задачи. Куда проще заменить на условие "и" или хотя бы второй характеристикой пренебречь, как косвенной. Но если условие приведения наполненности/опустошенности к бинарной системе является обязательным, то я бы просто уточнил до какого знака после запятой точность измерительного прибора и измерил бы его точное значение содержания наполнения. К примеру, прибор показал 49.999999% наполнения (0 в округлении) и в этом случае стакан уже более, чем наполовину пуст, но менее, чем наполовину полон и в бинарной системе уже не полон, то есть пуст или, если значение содержания наполнения 50.000000% (1 в округлении), в этом случае стакан уже более, чем наполовину полон и уже менее чем наполовину пуст, в бинарной системе он уже полон и не пуст. Может показаться что 50% - это двойственное состояние, но если задача привести это значение в бинарному, то по правилам округления в диапазоне от 0 до 1 значение 0.5 - это 1 в округлении. Также в условиях нет слов "был" или "будет", поэтому подразумевается текущий момент, так что результат будет зависеть от содержимого: испаряется оно или нет. И от скорости измерительного прибора в случае с испаряющихся содержимым