(************************************************)
(************ Restriction ***********************)
(***** a more practical form of replacement *****)
(************************************************)

Record Restriction (P : Ens -> Prop) (A X : Ens) : Prop := 
  {remaining_property : P X; the_restriction : IN X A}.(************************************************)
(************ Restriction ***********************)
(***** a more practical form of replacement *****)
(************************************************)

Record Restriction (P : Ens -> Prop) (A X : Ens) : Prop := 
  {remaining_property : P X; the_restriction : IN X A}.(************************************************)
(************ Restriction ***********************)
(***** a more practical form of replacement *****)
(************************************************)

Record Restriction (P : Ens -> Prop) (A X : Ens) : Prop := 
  {remaining_property : P X; the_restriction : IN X A}.Definition restriction_bounded_Out : Bounded R :=
  EXISTS_th1 (fun Y : Ens => Bounded_By Y R) A t.

Theorem Restriction_bounded : forall (P : Ens -> Prop) (A : Ens), Bounded (Restriction P A).