Proof using rmri tci.
intros.
apply committed_lifted_committed.
find_apply_lem_hyp lifted_committed_committed.
repeat match goal with
| H : _ |- _ =>
rewrite <- msg_deghost_spec with (net0 := net) in H
end.
eapply transitive_commit_invariant; eauto.
eapply msg_lift_prop; eauto.
Qed.

(* Specifications: *)
Lemma handleAppendEntries_preserves_commit :
forall net net' h p t n pli plt es ci d m e t',
msg_refined_raft_intermediate_reachable net ->
In p (nwPackets net) ->
snd (pBody p) = AppendEntries t n pli plt es ci ->
handleAppendEntries h (snd (nwState net h)) t n pli plt es ci = (d, m) ->
(forall h', nwState net' h' = update name_eq_dec (nwState net) h
(update_elections_data_appendEntries
h (nwState net h) t n pli plt es ci, d) h') ->
lifted_committed net e t' ->
lifted_committed net' e t'.