proposition: Lemma left_filter i k k' j (s: X k k') m m' u (u': X i k') v (v': X k' j): u*s == u' -> m*s == s*m' -> v == s*v' -> u'*m'#*v' == u*m#*v.
proof: Proof. intros Hu Hm Hv. rewrite Hv, <- Hu, dot_assoc. monoid_rewrite (comm_iter_left Hm). semiring_reflexivity. Qed.
imports: ATBR(Common) ATBR(Classes) ATBR(Graph) ATBR(Monoid) ATBR(SemiLattice) ATBR(SemiRing) ATBR(KleeneAlgebra) ATBR(MxGraph) ATBR(MxSemiLattice) ATBR(MxSemiRing) ATBR(MxKleeneAlgebra) ATBR(MyFSets) ATBR(MyFSetProperties) ATBR(MyFMapProperties)