unitary and normal predicates
add matrix fft