Local Open Scope assert.
Definition Gprog : funspecs :=
ltac:(with_library prog [odd_spec; even_spec; main_spec]).
Definition Espec := add_funspecs NullExtension.Espec (ext_link_prog even.prog) Gprog.
Existing Instance Espec.

(* The Espec for odd is different from the Espec for even; the former has only "even" as an external function, and vice versa. *)
Lemma prog_correct:
semax_prog prog tt Vprog Gprog.