proposition: Lemma mark_marked_root: forall (m1: NodePred V) root m2, m1 root -> mark m1 root m2 -> (m1 ~=~ m2)%NodePred.
proof: Proof. intros. destruct H0 as [? ?]. intro; intros. apply H1. intro. rewrite reachable_by_eq_subgraph_reachable in H2. apply reachable_head_valid in H2. simpl in H2. unfold predicate_vvalid in H2. rewrite negateP_spec in H2. tauto. Qed.
imports: Coq.Logic.ProofIrrelevance CertiGraph.lib.Ensembles_ext Coq.Lists.List Coq.Classes.Morphisms CertiGraph.lib.Coqlib CertiGraph.lib.List_ext CertiGraph.lib.EquivDec_ext VST.msl.Coqlib2 CertiGraph.graph.graph_model CertiGraph.graph.path_lemmas CertiGraph.graph.reachable_computable CertiGraph.graph.reachable_ind CertiGraph.graph.graph_gen CertiGraph.graph.graph_relation CertiGraph.graph.subgraph2