Boolean matrix logic programming for active learning of gene functions in genome-scale metabolic network models