Weak cartesian product of graphs