This problem can be expressed as a set of strings:
B = {p | p(ε)↓}, where p is a Java program.
But Java is universal — it has the same recognition
power as a Turing machine. B is nontrivial because
some Java programs halt on an empty input and some don't.
It respects equivalence because, if p and q are
equivalent programs then either p and q both stop on
an empty string or p and q both loop forever on an
empty string. That is, p ∈ B iff q ∈ B.
By Rice's Theorem, B is uncomputable.