Section well_def_1.
Variable F : Ens.
Hypothesis w : well_definedness F.
Variable R : Ens.
Hypothesis h : SUB R F.
Variable X Y Z : Ens.
Hypothesis i : IN (PAIR X Y) R.
Hypothesis j : IN (PAIR X Z) R.
Let step1 : IN (PAIR X Y) F.
Proof h (PAIR X Y) i.
Let step2 : IN (PAIR X Z) F.
Proof h (PAIR X Z) j.
Proof w X Y Z step1 step2.
End well_def_1.
Proof well_def_1_Out.
Record is_a_function (F : Ens) : Prop :=
{function_is_a_relation : is_a_relation F;
function_well_definedness : well_definedness F}.
Proof
fun (F : Ens) (f : is_a_function F) (G : Ens) (s : SUB G F) =>
Build_is_a_function G (relation_sub F (function_is_a_relation F f) G s)
(well_definedness_sub F (function_well_definedness F f) G s).
Record is_a_function_on (D F : Ens) : Prop :=
{function_on_fn : is_a_function F; function_on_dom : EQ D (Domain F)}.

Theorem function_is_a_function_on :
forall (F : Ens) (f : is_a_function F), is_a_function_on (Domain F) F.