Skip to content
Snippets Groups Projects
Commit fb158d06 authored by François Clément's avatar François Clément
Browse files

Proof without keep_useful/get_useful.

parent e7aa245a
No related branches found
No related tags found
No related merge requests found
......@@ -568,24 +568,24 @@ destruct HA as [a [b HA]]; rewrite HA.
unfold union_seq; apply open_or_count; intros n; apply open_intoo.
(* *)
destruct (R_second_countable_alt A HA) as [P HP].
destruct (keep_useful P) as [phi [optN HB]].
pose (a := get_useful (fun n => fst (bij_NQ2 n)) 0 phi optN).
pose (b := get_useful (fun n => snd (bij_NQ2 n)) 0 phi optN).
exists a, b.
rewrite HP; clear HP; unfold a, b, get_useful; clear a b.
apply subset_ext_equiv; split.
(* . *)
intros x [p [Hx1 [Hx2 Hx3]]].
destruct optN as [N | ], HB as [HB1 HB2], (HB2 p Hx1) as [n Hn].
destruct Hn as [Hn1 Hn2]; exists n; case (lt_dec n (S N)); intros Hn;
try easy; split; rewrite <- Hn2; easy.
exists n; split; rewrite <- Hn; easy.
(* . *)
intros x [n [Hx1 Hx2]].
exists (phi n); generalize Hx1, Hx2; clear Hx1 Hx2.
destruct optN as [N | ], HB as [HB1 HB2].
case (lt_dec n (S N)); intros Hn Hx1 Hx2; try lra; split; try apply HB1; easy.
intros Hx1 Hx2; split; try apply HB1; easy.
unfold R_subset_open.
pose (a := fun n =>
match (in_dec P n) with
| left _ => fst (bij_NQ2 n)
| right _ => 0%Q
end).
pose (b := fun n =>
match (in_dec P n) with
| left _ => snd (bij_NQ2 n)
| right _ => 0%Q
end).
exists a, b; rewrite HP; f_equal.
apply subset_seq_ext.
intros n; unfold a, b; destruct (in_dec P n) as [Hn | Hn].
rewrite (subset_ext (Prop_cst (P n)) fullset); try easy.
rewrite inter_full_l; easy.
rewrite (subset_ext (Prop_cst (P n)) emptyset); try easy.
rewrite inter_empty_l, R_oo_diag_is_empty; easy.
Qed.
End R_subset_open_Facts.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment