Después de investigar un poco, esto se puede hacer usando la anotación de fórmula:
@Entity
public class A {
@Column(name ="a1")
private int a1;
@Column(name ="a2")
private int a2;
@Formula("myFunction(a1)")
private int a3;
.....
}
Y en los Criterios:
Criteria cr = getInstanciaCriteria(A.class);
cr.add(Restrictions.eq("a3", 1));