Section Sound_Flat.
Context {L: Language}
{minL: MinimumLanguage L}
{pL: PropositionalLanguage L}
{sepconL: SepconLanguage L}
{wandL: WandLanguage L}
{MD: Model}
{kMD: KripkeModel MD}
(M: Kmodel)
{R: Relation (Kworlds M)}
{po_R: PreOrder Krelation}
{J: Join (Kworlds M)}
{SA: SeparationAlgebra (Kworlds M)}
{dSA: DownwardsClosedSeparationAlgebra (Kworlds M)}
{SM: Semantics L MD}
{kiSM: KripkeIntuitionisticSemantics L MD M SM}
{kminSM: KripkeMinimumSemantics L MD M SM}
{kpSM: KripkePropositionalSemantics L MD M SM}
{fsepconSM: FlatSemantics.SepconSemantics L MD M SM}
{fwandSM: FlatSemantics.WandSemantics L MD M SM}.

Lemma sound_wand_sepcon_adjoint:
forall x y z: expr,
(forall m, KRIPKE: M, m |= x * y --> z) <-> (forall m, KRIPKE: M, m |= x --> (y -* z)).