Proof using.
unfold refined_raft_net_invariant_request_vote, leaderLogs_sublog.
simpl. intuition.
repeat find_higher_order_rewrite.
find_copy_apply_lem_hyp handleRequestVote_type.
intuition.
- start.
find_rewrite_lem leaderLogs_update_elections_data_requestVote.
find_erewrite_lem update_nop_ext'.
update_destruct_max_simplify; eauto.
erewrite handleRequestVote_same_log by eauto.
eauto.
- repeat update_destruct_max_simplify; try congruence.
+ find_rewrite_lem leaderLogs_update_elections_data_requestVote.
eauto.
+ eauto.
Qed.

(* Specifications: *)
Lemma lifted_leader_sublog_host :
forall net leader h e,
refined_raft_intermediate_reachable net ->
type (snd (nwState net leader)) = Leader ->
In e (log (snd (nwState net h))) ->
eTerm e = currentTerm (snd (nwState net leader)) ->
In e (log (snd (nwState net leader))).