сравнение с фиксированым эпсилоном, кстати, не совсем верное. плавающие распределены неравномерно, и эпсилон часто надо динамически выбирать в зависимости от значений и цели, а не просто прибивать гвоздями.

не всегда верное, потому что зависит от того, какой от сравнения результат ожидается. два соседних флоата очень далеко от нуля иногда могут считаться одинаковыми, например, даже несмотря на то, что между ними вроде как большая разница (хотя на самом деле они отличаются как раз на тот самый ULP).

опять же: вычитание из большого флоата какого-нибудь субнормала даст в итоге тот же самый большой флоат, как ни уменьшай эпсилон.

флоаты — это СЛОЖНА! ;-) если можно обойтись без них — лучше обойтись. вон, в ящике предпочли для устройство-независимых координат fixed point, хотя могли бы и floating.