proposition: Lemma add_edge_separation (G : sgraph) V1 V2 x y: x \in V1:&:V2 -> y \in V1:&:V2 -> separation G V1 V2 -> separation (add_edge x y) V1 V2.
proof: Proof. move => xS yS sep. split; first by move => z; apply sep. move => x1 x2 x1V2 x2V1 /=. rewrite /edge_rel/= sep //=. apply: contraTF isT. case/orP => [] /and3P[_ /eqP ? /eqP ?]; by set_tac. Qed.
imports: mathcomp(all_ssreflect) GraphTheory(edone preliminaries digraph mgraph sgraph set_tac)