Let prod2_proj := fun i:twoT =>
match i return (point_set X * point_set Y ->
point_set (prod2_fun i)) with
| twoT_1 => @fst (point_set X) (point_set Y)
| twoT_2 => @snd (point_set X) (point_set Y)
end.
Definition ProductTopology2 : TopologicalSpace :=
WeakTopology prod2_proj.

Lemma prod2_conv2_cont: continuous prod2_conv2 (X:=ProductTopology2).