]> matita.cs.unibo.it Git - helm.git/blob - helm/software/matita/library/formal_topology/basic_pairs_to_basic_topologies.ma
ac137748f2b6aff69f6c1a6a7a3155463ba00fba
[helm.git] / helm / software / matita / library / formal_topology / basic_pairs_to_basic_topologies.ma
1 (**************************************************************************)
2 (*       ___                                                              *)
3 (*      ||M||                                                             *)
4 (*      ||A||       A project by Andrea Asperti                           *)
5 (*      ||T||                                                             *)
6 (*      ||I||       Developers:                                           *)
7 (*      ||T||         The HELM team.                                      *)
8 (*      ||A||         http://helm.cs.unibo.it                             *)
9 (*      \   /                                                             *)
10 (*       \ /        This file is distributed under the terms of the       *)
11 (*        v         GNU General Public License Version 2                  *)
12 (*                                                                        *)
13 (**************************************************************************)
14
15 include "formal_topology/basic_pairs_to_o-basic_pairs.ma".
16 include "formal_topology/o-basic_pairs_to_o-basic_topologies.ma".
17 include "formal_topology/basic_pairs.ma".
18 include "formal_topology/basic_topologies.ma".
19
20 definition basic_topology_of_basic_pair: basic_pair → basic_topology.
21  intro bp;
22  letin obp ≝ (o_basic_pair_of_basic_pair bp);
23  letin obt ≝ (o_basic_topology_of_o_basic_pair obp);
24  constructor 1;
25   [ apply (form bp);
26   | apply (oA obt);
27   | apply (oJ obt);
28   | apply (oA_is_saturation obt);
29   | apply (oJ_is_reduction obt);
30   | apply (Ocompatibility obt); ]
31 qed.
32
33 definition continuous_relation_of_relation_pair:
34  ∀BP1,BP2.relation_pair BP1 BP2 →
35   continuous_relation (basic_topology_of_basic_pair BP1) (basic_topology_of_basic_pair BP2).
36  intros (BP1 BP2 rp);
37  letin orp ≝ (o_relation_pair_of_relation_pair ?? rp);
38  letin ocr ≝ (o_continuous_relation_of_o_relation_pair ?? orp);
39  constructor 1;
40   [ apply (rp \sub \f);
41   | apply (Oreduced ?? ocr);
42   | apply (Osaturated ?? ocr); ]
43 qed.
44
45 alias symbol "compose" (instance 3) = "category1 composition".
46 alias symbol "compose" (instance 3) = "category1 composition".
47 record functor1 (C1: category1) (C2: category1) : Type2 ≝
48  { map_objs1:1> C1 → C2;
49    map_arrows1: ∀S,T. unary_morphism1 (arrows1 ? S T) (arrows1 ? (map_objs1 S) (map_objs1 T));
50    respects_id1: ∀o:C1. map_arrows1 ?? (id1 ? o) =_1 id1 ? (map_objs1 o);
51    respects_comp1:
52      ∀o1,o2,o3.∀f1:arrows1 ? o1 o2.∀f2:arrows1 ? o2 o3.
53      map_arrows1 ?? (f2 ∘ f1) =_1 map_arrows1 ?? f2 ∘ map_arrows1 ?? f1}.
54
55 (*
56 definition BTop_of_BP: functor1 BP BTop.
57  lapply OR as F;
58  constructor 1;
59   [ apply basic_topology_of_basic_pair
60   | intros; constructor 1 [ apply continuous_relation_of_relation_pair; ]
61   | simplify; intro;
62   ]
63 qed.
64 *)