Proof using.
unfold refined_raft_net_invariant_do_generic_server, votes_le_currentTerm.
start_proof.
assert (gd = (fst (nwState net h)) /\ d = snd (nwState net h))
by (repeat find_rewrite; auto). break_and. subst.
erewrite doGenericServer_currentTerm by eauto.
eauto.
Qed.

(* Specifications: *)
Lemma votes_le_current_term_state_same_packet_subset :
refined_raft_net_invariant_state_same_packet_subset votes_le_currentTerm.