Theorem: Characterization of Bifunctor Induced By One-Variable Functors/Necessary Condition

Let $\mathbf C$, $\mathbf D$ and $\mathbf E$ be categories.
Let $F: \mathbf C \times \mathbf D \to \mathbf E$ be a bifunctor.
For each $C \in \mathbf C_0$, let:
:$\paren{L_C}_0: \mathbf D_0 \to \mathbf E_0$ denote the object functor defined by:
::For each $D \in \mathbf D_0 : \map {\paren{L_C}_0} D = \map {F_0} {C, D}$
:$\paren{L_C}_1: \mathbf D_1 \to \mathbf E_1$ denote the morphism functor defined by:
::For each $g \in \mathbf D_1 : \map {\paren{L_C}_1} g = \map {F_1} {\operatorname{id}_C, g}$
For each $D \in \mathbf D_0$, let:
:$\paren{M_D}_0: \mathbf C_0 \to \mathbf E_0$ denote the object functor defined by:
::For each $C \in \mathbf C_0 : \map {\paren{M_D}_0} C = \map {F_0} {C, D}$
:$\paren{M_D}_1: \mathbf C_1 \to \mathbf E_1$ denote the morphism functor defined by:
::For each $f \in \mathbf C_1 : \map {\paren{M_D}_1} f = \map {F_1} {f, \operatorname{id}_D}$
Then:
{{begin-axiom}}
{{axiom | n = 1
        | lc = '''Functor in First Variable''': 
        | t = for each object $D \in \mathbf D : M_D: \mathbf C \to \mathbf E$ is a covariant functor
}}
{{axiom | n = 2
        | lc = '''Functor in Second Variable''': 
        | t = for each object $C \in \mathbf C : L_C: \mathbf D \to \mathbf E$ is a covariant functor
}}
{{axiom | n = 3
        | lc = '''Interchange Law''': 
        | t = for morphisms $f: C \to C' \in \mathbf C$ and $g: D \to D' \in \mathbf D : \map {M_{D'} } f \circ \map {L_C} g = \map {L_{C'} } g \circ \map {M_D} f = \map F {f, g}$
}}
{{end-axiom}}

Proof:
==== $(1) : M_D: \mathbf C \to \mathbf E$ is a Covariant Functor ====
Let $f: A \to B, g: B \to C \in \mathbf C_1$.
We have:
{{begin-eqn}}
{{eqn | l = \map {M_D} {g \circ f}
      | r = \map F {g \circ f, \operatorname{id}_D}
      | c = Definition of $M_D$ morphism functor
}}
{{eqn | r = \map F {g \circ f, \operatorname{id}_D \circ \operatorname{id}_D}
      | c = Identity Morphism is Idempotent
}}
{{eqn | r = \map F {\tuple{g, \operatorname{id}_D} \circ \tuple{f, \operatorname{id}_D} }
      | c = {{Defof|Product Category|Composition in Product Category}}
}}
{{eqn | r = \map F {g, \operatorname{id}_D} \circ \map F {f, \operatorname{id}_D}
      | c = {{Defof|Bifunctor}}
}}
{{eqn | r = M_D \paren g \circ M_D \paren f
      | c = Definition of $M_D$ morphism functor    
}}
{{end-eqn}}
Hence $M_D$ preserves composition of morphisms.
Let $C \in \mathbf C_0$.
We have:
{{begin-eqn}}
{{eqn | l = \map {M_D} {\operatorname{id}_C}
      | r = \map F {\operatorname{id}_C, \operatorname{id}_D}      
      | c = Definition of $M_D$ morphism functor
}}
{{eqn | r = \map F {\operatorname{id}_\tuple{C, D} }
      | c = {{Defof|Product Category|Identity Morphism in Product Category}}
}}
{{eqn | r = \operatorname{id}_{\map F {C, D} }
      | c = {{Defof|Bifunctor}}
}}
{{eqn | r = \operatorname{id}_{\map {M_D} C}
      | c = Definition of $M_D$ object functor
}}
{{end-eqn}}
Hence $M_D$ preserves identity morphisms.
It follows that $M_D$ is a covariant functor by definition.
{{qed|lemma}}
==== $(2) : L_C: \mathbf D \to \mathbf E$ is a Covariant Functor ====
Let $s: X \to Y, t: Y \to Z \in \mathbf D_1$.
We have:
{{begin-eqn}}
{{eqn | l = \map {L_C} {t \circ s}
      | r = \map F {\operatorname{id}_C, t \circ s }
      | c = Definition of $L_C$ morphism functor
}}
{{eqn | r = \map F {\operatorname{id}_C \circ \operatorname{id}_C, t \circ s}
      | c = Identity Morphism is Idempotent
}}
{{eqn | r = \map F {\tuple{\operatorname{id}_C, t} \circ \tuple{\operatorname{id}_C, s} }
      | c = {{Defof|Product Category|Composition in Product Category}}
}}
{{eqn | r = \map F {\operatorname{id}_C, t} \circ \map F {\operatorname{id}_C, s}
      | c = {{Defof|Bifunctor}}
}}
{{eqn | r = \map {L_C} t \circ \map {L_C} s
      | c = Definition of $L_C$ morphism functor
}}
{{end-eqn}}
Hence $L_C$ preserves composition of morphisms.
Let $D \in \mathbf D_0$.
We have:
{{begin-eqn}}
{{eqn | l = \map {L_C} {\operatorname{id}_D}
      | r = \map F {\operatorname{id}_C, \operatorname{id}_D}
      | c = Definition of $L_C$ morphism functor
}}
{{eqn | r = \map F {\operatorname{id}_\tuple{C, D} }
      | c = {{Defof|Product Category|Identity Morphism in Product Category}}
}}
{{eqn | r = \operatorname{id}_{\map F {C, D} }
      | c = {{Defof|Bifunctor}}
}}
{{eqn | r = \operatorname{id}_{\map {L_C} D}
      | c = Definition of $L_C$ object functor
}}
{{end-eqn}}
Hence $L_C$ preserves identity morphisms.
It follows that $L_C$ is a covariant functor by definition.
{{qed|lemma}}
==== $(3) :$ Interchange Law ====
For morphisms $f: C \to C' \in \mathbf C$ and $g: D \to D' \in \mathbf D$, we have:
{{begin-eqn}}
{{eqn | l = \map {M_{D'} } f \circ \map {L_C} g
      | r = \map F {f, \operatorname{id}_{D'} } \circ \map F {\operatorname{id}_C, g}
      | c = Definition of $M_D'$ and $L_C$ morphism functors
}}
{{eqn | r = \map F {f \circ \operatorname{id}_C, \operatorname{id}_{D'} \circ g}
      | c = {{Defof|Product Category|Composition in Product Category}}
}}
{{eqn | r = \map F {f, g}
      | c = {{Defof|Identity Morphism}}
}}
{{eqn | r = \map F {\operatorname{id}_{C'} \circ f, g \circ \operatorname{id}_D}
      | c = {{Defof|Identity Morphism}}
}}
{{eqn | r = \map F {\operatorname{id}_{C'}, g } \circ \map F {f, \operatorname{id}_D}
      | c = {{Defof|Product Category|Composition in Product Category}}
}}
{{eqn | r = \map {L_{C'} } g \circ \map {M_D} f
      | c = Definition of $L_C'$ and $M_D$ morphism functors
}}
{{end-eqn}}