Metamath Proof Explorer


Theorem bfp

Description: Banach fixed point theorem, also known as contraction mapping theorem. A contraction on a complete metric space has a unique fixed point. We show existence in the lemmas, and uniqueness here - if F has two fixed points, then the distance between them is less than K times itself, a contradiction. (Contributed by Jeff Madsen, 2-Sep-2009) (Proof shortened by Mario Carneiro, 5-Jun-2014)

Ref Expression
Hypotheses bfp.2 ⊢ φ → D ∈ CMet ⁡ X
bfp.3 ⊢ φ → X ≠ ∅
bfp.4 ⊢ φ → K ∈ ℝ +
bfp.5 ⊢ φ → K < 1
bfp.6 ⊢ φ → F : X ⟶ X
bfp.7 ⊢ φ ∧ x ∈ X ∧ y ∈ X → F ⁡ x D F ⁡ y ≤ K ⁢ x D y
Assertion bfp ⊢ φ → ∃! z ∈ X F ⁡ z = z

Proof

Step Hyp Ref Expression
1 bfp.2 ⊢ φ → D ∈ CMet ⁡ X
2 bfp.3 ⊢ φ → X ≠ ∅
3 bfp.4 ⊢ φ → K ∈ ℝ +
4 bfp.5 ⊢ φ → K < 1
5 bfp.6 ⊢ φ → F : X ⟶ X
6 bfp.7 ⊢ φ ∧ x ∈ X ∧ y ∈ X → F ⁡ x D F ⁡ y ≤ K ⁢ x D y
7 n0 ⊢ X ≠ ∅ ↔ ∃ w w ∈ X
8 2 7 sylib ⊢ φ → ∃ w w ∈ X
9 1 adantr ⊢ φ ∧ w ∈ X → D ∈ CMet ⁡ X
10 2 adantr ⊢ φ ∧ w ∈ X → X ≠ ∅
11 3 adantr ⊢ φ ∧ w ∈ X → K ∈ ℝ +
12 4 adantr ⊢ φ ∧ w ∈ X → K < 1
13 5 adantr ⊢ φ ∧ w ∈ X → F : X ⟶ X
14 6 adantlr ⊢ φ ∧ w ∈ X ∧ x ∈ X ∧ y ∈ X → F ⁡ x D F ⁡ y ≤ K ⁢ x D y
15 eqid ⊢ MetOpen ⁡ D = MetOpen ⁡ D
16 simpr ⊢ φ ∧ w ∈ X → w ∈ X
17 eqid ⊢ seq 1 F ∘ 1 st ℕ × w = seq 1 F ∘ 1 st ℕ × w
18 9 10 11 12 13 14 15 16 17 bfplem2 ⊢ φ ∧ w ∈ X → ∃ z ∈ X F ⁡ z = z
19 8 18 exlimddv ⊢ φ → ∃ z ∈ X F ⁡ z = z
20 oveq12 ⊢ F ⁡ x = x ∧ F ⁡ y = y → F ⁡ x D F ⁡ y = x D y
21 20 adantl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → F ⁡ x D F ⁡ y = x D y
22 6 adantr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → F ⁡ x D F ⁡ y ≤ K ⁢ x D y
23 21 22 eqbrtrrd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y ≤ K ⁢ x D y
24 cmetmet ⊢ D ∈ CMet ⁡ X → D ∈ Met ⁡ X
25 1 24 syl ⊢ φ → D ∈ Met ⁡ X
26 25 ad2antrr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → D ∈ Met ⁡ X
27 simplrl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x ∈ X
28 simplrr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → y ∈ X
29 metcl ⊢ D ∈ Met ⁡ X ∧ x ∈ X ∧ y ∈ X → x D y ∈ ℝ
30 26 27 28 29 syl3anc ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y ∈ ℝ
31 3 rpred ⊢ φ → K ∈ ℝ
32 31 ad2antrr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → K ∈ ℝ
33 32 30 remulcld ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → K ⁢ x D y ∈ ℝ
34 30 33 suble0d ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y − K ⁢ x D y ≤ 0 ↔ x D y ≤ K ⁢ x D y
35 23 34 mpbird ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y − K ⁢ x D y ≤ 0
36 1cnd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 ∈ ℂ
37 32 recnd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → K ∈ ℂ
38 30 recnd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y ∈ ℂ
39 36 37 38 subdird ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 − K ⁢ x D y = 1 ⁢ x D y − K ⁢ x D y
40 38 mullidd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 ⁢ x D y = x D y
41 40 oveq1d ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 ⁢ x D y − K ⁢ x D y = x D y − K ⁢ x D y
42 39 41 eqtrd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 − K ⁢ x D y = x D y − K ⁢ x D y
43 1re ⊢ 1 ∈ ℝ
44 resubcl ⊢ 1 ∈ ℝ ∧ K ∈ ℝ → 1 − K ∈ ℝ
45 43 31 44 sylancr ⊢ φ → 1 − K ∈ ℝ
46 45 ad2antrr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 − K ∈ ℝ
47 46 recnd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 − K ∈ ℂ
48 47 mul01d ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 − K ⋅ 0 = 0
49 35 42 48 3brtr4d ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 1 − K ⁢ x D y ≤ 1 − K ⋅ 0
50 0red ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 0 ∈ ℝ
51 posdif ⊢ K ∈ ℝ ∧ 1 ∈ ℝ → K < 1 ↔ 0 < 1 − K
52 31 43 51 sylancl ⊢ φ → K < 1 ↔ 0 < 1 − K
53 4 52 mpbid ⊢ φ → 0 < 1 − K
54 53 ad2antrr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 0 < 1 − K
55 lemul2 ⊢ x D y ∈ ℝ ∧ 0 ∈ ℝ ∧ 1 − K ∈ ℝ ∧ 0 < 1 − K → x D y ≤ 0 ↔ 1 − K ⁢ x D y ≤ 1 − K ⋅ 0
56 30 50 46 54 55 syl112anc ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y ≤ 0 ↔ 1 − K ⁢ x D y ≤ 1 − K ⋅ 0
57 49 56 mpbird ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y ≤ 0
58 metge0 ⊢ D ∈ Met ⁡ X ∧ x ∈ X ∧ y ∈ X → 0 ≤ x D y
59 26 27 28 58 syl3anc ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → 0 ≤ x D y
60 0re ⊢ 0 ∈ ℝ
61 letri3 ⊢ x D y ∈ ℝ ∧ 0 ∈ ℝ → x D y = 0 ↔ x D y ≤ 0 ∧ 0 ≤ x D y
62 30 60 61 sylancl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y = 0 ↔ x D y ≤ 0 ∧ 0 ≤ x D y
63 57 59 62 mpbir2and ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y = 0
64 meteq0 ⊢ D ∈ Met ⁡ X ∧ x ∈ X ∧ y ∈ X → x D y = 0 ↔ x = y
65 26 27 28 64 syl3anc ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x D y = 0 ↔ x = y
66 63 65 mpbid ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ F ⁡ x = x ∧ F ⁡ y = y → x = y
67 66 ex ⊢ φ ∧ x ∈ X ∧ y ∈ X → F ⁡ x = x ∧ F ⁡ y = y → x = y
68 67 ralrimivva ⊢ φ → ∀ x ∈ X ∀ y ∈ X F ⁡ x = x ∧ F ⁡ y = y → x = y
69 fveq2 ⊢ x = z → F ⁡ x = F ⁡ z
70 id ⊢ x = z → x = z
71 69 70 eqeq12d ⊢ x = z → F ⁡ x = x ↔ F ⁡ z = z
72 71 anbi1d ⊢ x = z → F ⁡ x = x ∧ F ⁡ y = y ↔ F ⁡ z = z ∧ F ⁡ y = y
73 equequ1 ⊢ x = z → x = y ↔ z = y
74 72 73 imbi12d ⊢ x = z → F ⁡ x = x ∧ F ⁡ y = y → x = y ↔ F ⁡ z = z ∧ F ⁡ y = y → z = y
75 74 ralbidv ⊢ x = z → ∀ y ∈ X F ⁡ x = x ∧ F ⁡ y = y → x = y ↔ ∀ y ∈ X F ⁡ z = z ∧ F ⁡ y = y → z = y
76 75 cbvralvw ⊢ ∀ x ∈ X ∀ y ∈ X F ⁡ x = x ∧ F ⁡ y = y → x = y ↔ ∀ z ∈ X ∀ y ∈ X F ⁡ z = z ∧ F ⁡ y = y → z = y
77 68 76 sylib ⊢ φ → ∀ z ∈ X ∀ y ∈ X F ⁡ z = z ∧ F ⁡ y = y → z = y
78 fveq2 ⊢ z = y → F ⁡ z = F ⁡ y
79 id ⊢ z = y → z = y
80 78 79 eqeq12d ⊢ z = y → F ⁡ z = z ↔ F ⁡ y = y
81 80 reu4 ⊢ ∃! z ∈ X F ⁡ z = z ↔ ∃ z ∈ X F ⁡ z = z ∧ ∀ z ∈ X ∀ y ∈ X F ⁡ z = z ∧ F ⁡ y = y → z = y
82 19 77 81 sylanbrc ⊢ φ → ∃! z ∈ X F ⁡ z = z