proposition: Lemma thread_info_rep_ramif_stable_1: forall sh tinfo ti gen, Z.of_nat gen < MAX_SPACES -> thread_info_rep sh tinfo ti |-- space_struct_rep sh (ti_heap_p tinfo) (ti_heap tinfo) gen * (space_struct_rep sh (ti_heap_p tinfo) (ti_heap tinfo) gen -* thread_info_rep sh tinfo ti).
proof: Proof. intros. unfold thread_info_rep. sep_apply (heap_rep_ramif_stable_1 sh (ti_heap tinfo) (ti_heap_p tinfo) gen). cancel. apply -> wand_sepcon_adjoint. cancel. rewrite sepcon_comm. apply modus_ponens_wand. 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