Section ThreadPoolWF.
Context {Sem : Semantics}.
Existing Instance DryHybridMachine.dryResources.
Existing Instance OrdinalPool.OrdinalThreadPool.
(** Take an instance of the Dry Machine *)
Existing Instance DryHybridMachine.DryHybridMachineSig.
(** ** Lemmas about initial state*)

(** The [invariant] holds for the initial state*)
Lemma initial_invariant:
forall m m' pmap f arg tp
(Hinit: init_mach pmap m tp m' f arg),
invariant tp.