A sparse algorithm for predicated global value numbering | Synapse