I don't think the answer given by willm1 is correct.
Let me explain.
The following expression:
tlf.z >= tlb.z - EPSILON
is equivalent to:
(tlf.z > tlb.z - EPSILON) or (tlf.z == tlb.z - EPSILON)
If tlf.z > tlb.z is true, even by a difference smaller than EPSILON, then tlf.z > tlb.z - EPSILON will also be true. No matter what the value of EPSILON. Instead, the correct form is:
tlf.z > tlb.z + EPSILON
As for the second expression, tlf.z == tlb.z - EPSILON, it will only be evaluated as true if tlf.z and tlb.z differ exactly by EPSILON, which is not what we want. Instead, we want the difference between them to be less than EPSILON:
abs(tlf.z - tlb.z) <= EPSILON
Concluding, tlf.z >= tlb.z - EPSILON should be written as:
(tlf.z > tlb.z + EPSILON) || (abs(tlf.z - tlb.z) <= EPSILON)
Update:
I was looking at some code, and all of a sudden I noticed that (tlf.z > tlb.z + EPSILON) || (abs(tlf.z - tlb.z) <= EPSILON) is actually equivalent to tlf.z >= tlb.z - EPSILON.
When we're looking for the similarity, abs(tlf.z - tlb.z) <= EPSILON, we want tlb.z to be in the following gray area:

When we're looking for tlf.z > tlb.z + EPSILON:

Hence, we're really looking for:

Which is the same as tlf.z + EPSILON >= tlb.z (equivalent to tlf.z >= tlb.z - EPSILON).
In that case, willm1 was actually right. Sorry :)