partial solution to bug #20 (see bug26.fst); improvement related to bug #29 and #26 --- be careful with the use of heterogenous equality, use homogenous eq. if possible for better type inference results