proposition: Lemma graph_and_heap_rest_data_at_: forall (g: LGraph) (h: heap) gen, graph_has_gen g gen -> graph_heap_compatible g h -> graph_rep g * heap_rest_rep h |-- generation_data_at_ g h gen * TT.
proof: Proof. intros. sep_apply (graph_heap_rest_iter_sepcon _ _ H0). sep_apply (iter_sepcon_in_true (generation_data_at_ g h) (nat_inc_list (length (g_gen (glabel g)))) gen); [rewrite nat_inc_list_In_iff; assumption | apply derives_refl]. Qed.
imports: VST.veric.compcert_rmaps VST.msl.shares VST.msl.wand_frame VST.concurrency.conclib CertiGraph.lib.List_ext CertiGraph.msl_ext.log_normalize CertiGraph.msl_ext.ramification_lemmas CertiGraph.graph.graph_model CertiGraph.CertiGC.GCGraph CertiGraph.CertiGC.env_graph_gc CertiGraph.msl_ext.iter_sepcon Coq.Lists.List