Proof using rmri lhlli.
intros.
pose proof msg_lift_prop _ leaders_have_leaderLogs_invariant _ ltac:(eauto).
unfold leaders_have_leaderLogs, lifted_leaders_have_leaderLogs in *.
intros.
match goal with
| [ H : _ |- _ ] => specialize (H h)
end.
repeat find_rewrite_lem msg_deghost_spec.
auto.
Qed.
Definition lifted_leader_completeness_directly_committed (net : ghost_log_network) : Prop :=
forall t e log h,
lifted_directly_committed net e ->
t > eTerm e -> In (t, log) (leaderLogs (fst (nwState net h))) -> In e log.
Definition lifted_leader_completeness_committed (net : ghost_log_network) : Prop :=
forall t t' e log h,
lifted_committed net e t ->
t' > t -> In (t', log) (leaderLogs (fst (nwState net h))) -> In e log.
Definition lifted_leader_completeness (net : ghost_log_network) : Prop :=
lifted_leader_completeness_directly_committed net /\
lifted_leader_completeness_committed net.

(* Specifications: *)
Lemma lifted_leader_completeness_invariant :
forall net,
msg_refined_raft_intermediate_reachable net ->
lifted_leader_completeness net.