1 Require Export tbs_fun.
3 Section Subset_Finite_Definitions.
5 Section subsets_from_lists.
7 Definition SList: (S:Set) (List S) -> (S -> Set) := [S](ListFam S [_](S->Set) (SBot S) [_;p;a](SOr S p (Sing S a))).
9 End subsets_from_lists.
11 Section subset_finite_predicate.
13 Definition WFin: (S:Set) (S -> Set) -> Set := [S;U](LEx (FDF S) [z](SbE S U (FDFImg S z))).
15 Definition SFin: (S:Set) (S -> Set) -> Set := [S;U](Ex (FDF S) [z](SEq S U (FDFImg S z))).
17 End subset_finite_predicate.
19 Section subset_finite_quantification.
21 Definition FAll: (S:Set) ((Part S) -> Set) -> Set := [S;P](z:(FDF S))(P (SFImg S z)).
23 Definition FEx: (S:Set) ((Part S) -> Set) -> Set := [S;P](Ex (FDF S) [z](P (SFImg S z))).
25 End subset_finite_quantification.
27 End Subset_Finite_Definitions.
29 Section Subset_Finite_Results.
33 Theorem slist_eps_i: (S:Set; a:S; l:(List S)) (LIn S a l) -> (Eps S a (SList S l)).
37 Apply (lin_e S a (empty S)).
41 MApply '(list_p4 S v a).
42 MApply '(list_p4 S (app S (fr S v a) l0) s).
44 Apply (lin_e S a (fr S l0 s)).
50 MApply '(fr_ini2 S l0 v).
53 MApply '(lin_i S v l1).
54 MApply '(fr_ini1 S s0 s).
58 Theorem slist_xfdfl: (S:Set; n:N; v:(Fin n)->S) (SbE S (Img (Fin n) S v) (SList S (xfdf_list S n v))).
62 MApply '(img_eps_e (Fin n) S v a).
63 MApply '(id_repl S a (v i)).
67 Theorem slist_fdfl: (S:Set; v:(FDF S)) (SbE S (FDFImg S v) (SList S (fdfl S v))).
69 MApply '(id_repl (List S) (fdfl S v) (xfdf_list S (fdf_n S v) (fdf_f S v))).
77 Section weakly_finite.
79 Theorem wfin_i: (S:Set; v:(FDF S); U:S->Set) (SbE S U (FDFImg S v)) -> (WFin S U).
82 MApply '(lex_i (FDF S) v).
85 Theorem wfin_e: (S:Set; U:S->Set; P:Set) (WFin S U) -> ((v:(FDF S)) (SbE S U (FDFImg S v)) -> P) -> P.
91 Theorem wfin_sand: (S:Set; U,V:S->Set) (WFin S U) -> (WFin S (SAnd S U V)).
99 Theorem wfin_sor: (S:Set; U,V:S->Set) (WFin S U) -> (WFin S V) -> (WFin S (SOr S U V)).
101 MApply '(wfin_e S U).
102 MApply '(wfin_e S V).
103 MApply '(wfin_i S (fdf_add S v v0)).
104 MApply '(sbe_t S (SOr S (FDFImg S v) (FDFImg S v0))).
106 MApply 'img_fdf_add_i.
109 Theorem wfin_list: (S:Set; U:S->Set) (WFin S U) -> (LEx (List S) [v](SbE S U (SList S v))).
111 MApply '(wfin_e S U).
112 MApply '(lex_i (List S) (fdfl S v)).
113 MApply '(sbe_t S (FDFImg S v)).
119 End Subset_Finite_Results.