But consistency is already there, WeightedAdjacencyMatrix is the same as AdjacencyMatrix for not weighted graphs, so seems like replacing AdjacencyMatrix with WeightedAdjacencyMatrix and AdjacencyGraph with WeightedAdjacencyGraph (after replacing 0 with Infinity, which I find to be weird inconsistency between two functions) is a natural generalization for all the products.