End INF_SEQ_DECOMP.
Set Implicit Arguments.
(** * Big-step semantics and program behaviors *)
Section BIGSTEP_BEHAVIORS.
Variable B: bigstep_semantics.
Variable L: semantics.
Hypothesis sound: bigstep_sound B L.

(* Specifications: *)
Lemma behavior_bigstep_terminates:
forall t r,
bigstep_terminates B t r -> program_behaves L (Terminates t r).
Lemma behavior_bigstep_diverges:
forall T,
bigstep_diverges B T ->
program_behaves L (Reacts T)
\/ exists t, program_behaves L (Diverges t) /\ traceinf_prefix t T.
Lemma behavior_bigstep_terminates:
forall t r,
bigstep_terminates B t r -> program_behaves L (Terminates t r).
Lemma behavior_bigstep_diverges:
forall T,
bigstep_diverges B T ->
program_behaves L (Reacts T)
\/ exists t, program_behaves L (Diverges t) /\ traceinf_prefix t T.