HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem fiint 4486
Description: Equivalent ways of stating the finite intersection property. We show two ways of saying, "the intersection of elements in every finite non-empty subcollection of A is in A." This theorem is applicable to a topology, which (among other axioms) is closed under finite intersections. Some texts use the left-hand version of this axiom and others the right-hand version, but as our proof here shows, their "intuitively obvious" equivalence can be non-trivial to establish formally.
Assertion
Ref Expression
fiint |- (A.x e. A A.y e. A (x i^i y) e. A <-> A.x((x (_ A /\ x =/= (/) /\ E.y e. om x ~~ y) -> |^|x e. A))
Distinct variable group:   x,y,A

Proof of Theorem fiint
StepHypRef Expression
1 breq1 2590 . . . . . . . . . . . . . . 15 |- (y = (/) -> (y ~~ x <-> (/) ~~ x))
21anbi2d 614 . . . . . . . . . . . . . 14 |- (y = (/) -> (((x (_ A /\ x =/= (/)) /\ y ~~ x) <-> ((x (_ A /\ x =/= (/)) /\ (/) ~~ x)))
32imbi1d 611 . . . . . . . . . . . . 13 |- (y = (/) -> ((((x (_ A /\ x =/= (/)) /\ y ~~ x) -> |^|x e. A) <-> (((x (_ A /\ x =/= (/)) /\ (/) ~~ x) -> |^|x e. A)))
43albidv 1260 . . . . . . . . . . . 12 |- (y = (/) -> (A.x(((x (_ A /\ x =/= (/)) /\ y ~~ x) -> |^|x e. A) <-> A.x(((x (_ A /\ x =/= (/)) /\ (/) ~~ x) -> |^|x e. A)))
5 breq1 2590 . . . . . . . . . . . . . . 15 |- (y = v -> (y ~~ x <-> v ~~ x))
65anbi2d 614 . . . . . . . . . . . . . 14 |- (y = v -> (((x (_ A /\ x =/= (/)) /\ y ~~ x) <-> ((x (_ A /\ x =/= (/)) /\ v ~~ x)))
76imbi1d 611 . . . . . . . . . . . . 13 |- (y = v -> ((((x (_ A /\ x =/= (/)) /\ y ~~ x) -> |^|x e. A) <-> (((x (_ A /\ x =/= (/)) /\ v ~~ x) -> |^|x e. A)))
87albidv 1260 . . . . . . . . . . . 12 |- (y = v -> (A.x(((x (_ A /\ x =/= (/)) /\ y ~~ x) -> |^|x e. A) <-> A.x(((x (_ A /\ x =/= (/)) /\ v ~~ x) -> |^|x e. A)))
9 breq1 2590 . . . . . . . . . . . . . . 15 |- (y = suc v -> (y ~~ x <-> suc v ~~ x))
109anbi2d 614 . . . . . . . . . . . . . 14 |- (y = suc v -> (((x (_ A /\ x =/= (/)) /\ y ~~ x) <-> ((x (_ A /\ x =/= (/)) /\ suc v ~~ x)))
1110imbi1d 611 . . . . . . . . . . . . 13 |- (y = suc v -> ((((x (_ A /\ x =/= (/)) /\ y ~~ x) -> |^|x e. A) <-> (((x (_ A /\ x =/= (/)) /\ suc v ~~ x) -> |^|x e. A)))
1211albidv 1260 . . . . . . . . . . . 12 |- (y = suc v -> (A.x(((x (_ A /\ x =/= (/)) /\ y ~~ x) -> |^|x e. A) <-> A.x(((x (_ A /\ x =/= (/)) /\ suc v ~~ x) -> |^|x e. A)))
13 visset 1788 . . . . . . . . . . . . . . . . . . . 20 |- x e. V
1413ensym 4347 . . . . . . . . . . . . . . . . . . 19 |- ((/) ~~ x -> x ~~ (/))
15 en0 4358 . . . . . . . . . . . . . . . . . . 19 |- (x ~~ (/) <-> x = (/))
1614, 15sylib 198 . . . . . . . . . . . . . . . . . 18 |- ((/) ~~ x -> x = (/))
1716anim1i 334 . . . . . . . . . . . . . . . . 17 |- (((/) ~~ x /\ x =/= (/)) -> (x = (/) /\ x =/= (/)))
1817ancoms 436 . . . . . . . . . . . . . . . 16 |- ((x =/= (/) /\ (/) ~~ x) -> (x = (/) /\ x =/= (/)))
1918adantll 392 . . . . . . . . . . . . . . 15 |- (((x (_ A /\ x =/= (/)) /\ (/) ~~ x) -> (x = (/) /\ x =/= (/)))
20 pm3.24 655 . . . . . . . . . . . . . . . . 17 |- -. (x = (/) /\ -. x = (/))
2120pm2.21i 77 . . . . . . . . . . . . . . . 16 |- ((x = (/) /\ -. x = (/)) -> |^|x e. A)
22 df-ne 1563 . . . . . . . . . . . . . . . 16 |- (x =/= (/) <-> -. x = (/))
2321, 22sylan2b 452 . . . . . . . . . . . . . . 15 |- ((x = (/) /\ x =/= (/)) -> |^|x e. A)
2419, 23syl 10 . . . . . . . . . . . . . 14 |- (((x (_ A /\ x =/= (/)) /\ (/) ~~ x) -> |^|x e. A)
2524ax-gen 955 . . . . . . . . . . . . 13 |- A.x(((x (_ A /\ x =/= (/)) /\ (/) ~~ x) -> |^|x e. A)
2625a1i 8 . . . . . . . . . . . 12 |- (A.z e. A A.w e. A (z i^i w) e. A -> A.x(((x (_ A /\ x =/= (/)) /\ (/) ~~ x) -> |^|x e. A))
27 ax-17 1190 . . . . . . . . . . . . . 14 |- (A.z e. A A.w e. A (z i^i w) e. A -> A.xA.z e. A A.w e. A (z i^i w) e. A)
28 hba1 979 . . . . . . . . . . . . . 14 |- (A.x(((x (_ A /\ x =/= (/)) /\ v ~~ x) -> |^|x e. A) -> A.xA.x(((x (_ A /\ x =/= (/)) /\ v ~~ x) -> |^|x e. A))
29 ssel 2034 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (x (_ A -> ((f` v) e. x -> (f` v) e. A))
30 f1ofo 3634 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (f:suc v-1-1-onto->x -> f:suc v-onto->x)
31 fof 3611 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (f:suc v-onto->x -> f:suc v-->x)
32 visset 1788 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- v e. V
3332sucid 3014 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- v e. suc v
34 ffvelrn 3753 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- ((f:suc v-->x /\ v e. suc v) -> (f` v) e. x)
3533, 34mpan2 693 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (f:suc v-->x -> (f` v) e. x)
3630, 31, 353syl 20 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (f:suc v-1-1-onto->x -> (f` v) e. x)
3729, 36syl5 21 . . . . . . . . . . . . . . . . . . . . . . . 24 |- (x (_ A -> (f:suc v-1-1-onto->x -> (f` v) e. A))
3837imp 350 . . . . . . . . . . . . . . . . . . . . . . 23 |- ((x (_ A /\ f:suc v-1-1-onto->x) -> (f` v) e. A)
3938adantr 389 . . . . . . . . . . . . . . . . . . . . . 22 |- (((x (_ A /\ f:suc v-1-1-onto->x) /\ (A.x(((x (_ A /\ x =/= (/)) /\ v ~~ x) -> |^|x e. A) /\ A.z e. A A.w e. A (z i^i w) e. A)) -> (f` v) e. A)
40 imassrn 3366 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 |- (f"v) (_ ran f
41 f1o2 3632 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 |- (f:suc v-1-1-onto->x <-> (f Fn suc v /\ Fun `'f /\ ran f = x))
42 3simp3 787 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 |- ((f Fn suc v /\ Fun `'f /\ ran f = x) -> ran f = x)
4341, 42sylbi 199 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 |- (f:suc v-1-1-onto->x -> ran f = x)
4443sseq2d 2060 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 |- (f:suc v-1-1-onto->x -> ((f"v) (_ ran f <-> (f"v) (_ x))
4540, 44mpbii 193 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 |- (f:suc v-1-1-onto->x -> (f"v) (_ x)
46 sstr2 2042 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 |- ((f"v) (_ x -> (x (_ A -> (f"v) (_ A))
4745, 46syl 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 |- (f:suc v-1-1-onto->x -> (x (_ A -> (f"v) (_ A))
4847anim1d 558 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 |- (f:suc v-1-1-onto->x -> ((x (_ A /\ (f"v) =/= (/)) -> ((f"v) (_ A /\ (f"v) =/= (/))))
49 f1of1 3627 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 |- (f:suc v-1-1-onto->x -> f:suc v-1-1->x)
50 sssucid 3010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 |- v (_ suc v
51 f1ores 3642 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 |- ((f:suc v-1-1->x /\ v (_ suc v) -> (f |` v):v-1-1-onto->(f"v))
5250, 51mpan2 693 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 |- (f:suc v-1-1->x -> (f |` v):v-1-1-onto->(f"v))
5332f1oen 4333 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 |- ((f |` v):v-1-1-onto->(f"v) -> v ~~ (f"v))
5449, 52, 533syl 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 |- (f:suc v-1-1-onto->x -> v ~~ (f"v))
5548, 54jctird 600 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 |- (f:suc v-1-1-onto->x -> ((x (_ A /\ (f"v) =/= (/)) -> (((f"v) (_ A /\ (f"v) =/= (/)) /\ v ~~ (f"v))))
56 visset 1788 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 |- f e. V
57 imaexg 3367 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 |- (f e. V -> (f"v) e. V)
5856, 57ax-mp 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 |- (f"v) e. V
59 sseq1 2053 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 |- (x = (f"v) -> (x (_ A <-> (f"v) (_ A))
60 neeq1 1566 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 |- (x = (f"v) -> (x =/= (/) <-> (f"v) =/= (/)))
6159, 60anbi12d 626 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 |- (x = (f"v) -> ((x (_ A /\ x =/= (/)) <-> ((f"v) (_ A /\ (f"v) =/= (/))))
62 breq2 2591 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 |- (x = (f"v) -> (v ~~ x <-> v ~~ (f"v)))
6361, 62anbi12d 626 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 |- (x = (f"v) -> (((x (_ A /\ x =/= (/)) /\ v ~~ x) <-> (((f"v) (_ A /\ (f"v) =/= (/)) /\ v ~~ (f"v))))
64 inteq 2504 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 |- (x = (f"v) -> |^|x = |^|(f"v))
6564eleq1d 1516 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 |- (x = (f"v) -> (|^|x e. A <-> |^|(f"v) e. A))
6663, 65imbi12d 624 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 |- (x = (f"v) -> ((((x (_ A /\ x =/= (/)) /\ v ~~ x) -> |^|x e. A) <-> ((((f"v) (_ A /\ (f"v) =/= (/)) /\ v ~~ (f"v)) -> |^|(f"v) e. A)))
6758, 66cla4v 1841 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 |- (A.x(((x (_ A /\ x =/= (/)) /\ v ~~ x) -> |^|x e. A) -> ((((f"v) (_ A /\ (f"v) =/= (/)) /\ v ~~ (f"v)) ->