Metamath Proof Explorer


Theorem vdwlem11

Description: Lemma for vdw . (Contributed by Mario Carneiro, 18-Aug-2014)

Ref Expression
Hypotheses vdw.r ⊢ φ → R ∈ Fin
vdwlem9.k ⊢ φ → K ∈ ℤ ≥ 2
vdwlem9.s ⊢ φ → ∀ s ∈ Fin ∃ n ∈ ℕ ∀ f ∈ s 1 … n K MonoAP f
Assertion vdwlem11 ⊢ φ → ∃ n ∈ ℕ ∀ f ∈ R 1 … n K + 1 MonoAP f

Proof

Step Hyp Ref Expression
1 vdw.r ⊢ φ → R ∈ Fin
2 vdwlem9.k ⊢ φ → K ∈ ℤ ≥ 2
3 vdwlem9.s ⊢ φ → ∀ s ∈ Fin ∃ n ∈ ℕ ∀ f ∈ s 1 … n K MonoAP f
4 hashcl ⊢ R ∈ Fin → R ∈ ℕ 0
5 1 4 syl ⊢ φ → R ∈ ℕ 0
6 nn0p1nn ⊢ R ∈ ℕ 0 → R + 1 ∈ ℕ
7 5 6 syl ⊢ φ → R + 1 ∈ ℕ
8 1 2 3 7 vdwlem10 ⊢ φ → ∃ n ∈ ℕ ∀ f ∈ R 1 … n R + 1 K PolyAP f ∨ K + 1 MonoAP f
9 1 adantr ⊢ φ ∧ n ∈ ℕ → R ∈ Fin
10 ovex ⊢ 1 … n ∈ V
11 elmapg ⊢ R ∈ Fin ∧ 1 … n ∈ V → f ∈ R 1 … n ↔ f : 1 … n ⟶ R
12 9 10 11 sylancl ⊢ φ ∧ n ∈ ℕ → f ∈ R 1 … n ↔ f : 1 … n ⟶ R
13 12 biimpa ⊢ φ ∧ n ∈ ℕ ∧ f ∈ R 1 … n → f : 1 … n ⟶ R
14 5 nn0red ⊢ φ → R ∈ ℝ
15 14 ltp1d ⊢ φ → R < R + 1
16 peano2re ⊢ R ∈ ℝ → R + 1 ∈ ℝ
17 14 16 syl ⊢ φ → R + 1 ∈ ℝ
18 14 17 ltnled ⊢ φ → R < R + 1 ↔ ¬ R + 1 ≤ R
19 15 18 mpbid ⊢ φ → ¬ R + 1 ≤ R
20 19 adantr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → ¬ R + 1 ≤ R
21 eluz2nn ⊢ K ∈ ℤ ≥ 2 → K ∈ ℕ
22 2 21 syl ⊢ φ → K ∈ ℕ
23 22 adantr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → K ∈ ℕ
24 23 nnnn0d ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → K ∈ ℕ 0
25 simprr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → f : 1 … n ⟶ R
26 7 adantr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → R + 1 ∈ ℕ
27 eqid ⊢ 1 … R + 1 = 1 … R + 1
28 10 24 25 26 27 vdwpc ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → R + 1 K PolyAP f ↔ ∃ a ∈ ℕ ∃ d ∈ ℕ 1 … R + 1 ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i ∧ ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i = R + 1
29 1 ad3antrrr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → R ∈ Fin
30 25 ad2antrr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 → f : 1 … n ⟶ R
31 25 ad3antrrr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 ∧ a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → f : 1 … n ⟶ R
32 simpr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 ∧ a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i
33 cnvimass ⊢ f -1 f ⁡ a + d ⁡ i ⊆ dom ⁡ f
34 32 33 sstrdi ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 ∧ a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → a + d ⁡ i AP ⁡ K d ⁡ i ⊆ dom ⁡ f
35 31 34 fssdmd ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 ∧ a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → a + d ⁡ i AP ⁡ K d ⁡ i ⊆ 1 … n
36 22 ad3antrrr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 → K ∈ ℕ
37 simplrl ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 → a ∈ ℕ
38 simprr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 → d ∈ ℕ 1 … R + 1
39 nnex ⊢ ℕ ∈ V
40 ovex ⊢ 1 … R + 1 ∈ V
41 39 40 elmap ⊢ d ∈ ℕ 1 … R + 1 ↔ d : 1 … R + 1 ⟶ ℕ
42 38 41 sylib ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 → d : 1 … R + 1 ⟶ ℕ
43 42 ffvelcdmda ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 → d ⁡ i ∈ ℕ
44 37 43 nnaddcld ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 → a + d ⁡ i ∈ ℕ
45 vdwapid1 ⊢ K ∈ ℕ ∧ a + d ⁡ i ∈ ℕ ∧ d ⁡ i ∈ ℕ → a + d ⁡ i ∈ a + d ⁡ i AP ⁡ K d ⁡ i
46 36 44 43 45 syl3anc ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 → a + d ⁡ i ∈ a + d ⁡ i AP ⁡ K d ⁡ i
47 46 adantr ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 ∧ a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → a + d ⁡ i ∈ a + d ⁡ i AP ⁡ K d ⁡ i
48 35 47 sseldd ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 ∧ a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → a + d ⁡ i ∈ 1 … n
49 48 ex ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 → a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → a + d ⁡ i ∈ 1 … n
50 ffvelcdm ⊢ f : 1 … n ⟶ R ∧ a + d ⁡ i ∈ 1 … n → f ⁡ a + d ⁡ i ∈ R
51 30 49 50 syl6an ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ i ∈ 1 … R + 1 → a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → f ⁡ a + d ⁡ i ∈ R
52 51 ralimdva ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 → ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → ∀ i ∈ 1 … R + 1 f ⁡ a + d ⁡ i ∈ R
53 52 imp ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → ∀ i ∈ 1 … R + 1 f ⁡ a + d ⁡ i ∈ R
54 eqid ⊢ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i = i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i
55 54 fmpt ⊢ ∀ i ∈ 1 … R + 1 f ⁡ a + d ⁡ i ∈ R ↔ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i : 1 … R + 1 ⟶ R
56 53 55 sylib ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i : 1 … R + 1 ⟶ R
57 56 frnd ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ⊆ R
58 ssdomg ⊢ R ∈ Fin → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ⊆ R → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ≼ R
59 29 57 58 sylc ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ≼ R
60 29 57 ssfid ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ∈ Fin
61 hashdom ⊢ ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ∈ Fin ∧ R ∈ Fin → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ≤ R ↔ ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ≼ R
62 60 29 61 syl2anc ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ≤ R ↔ ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ≼ R
63 59 62 mpbird ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ≤ R
64 breq1 ⊢ ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i = R + 1 → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i ≤ R ↔ R + 1 ≤ R
65 63 64 syl5ibcom ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 ∧ ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i → ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i = R + 1 → R + 1 ≤ R
66 65 expimpd ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R ∧ a ∈ ℕ ∧ d ∈ ℕ 1 … R + 1 → ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i ∧ ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i = R + 1 → R + 1 ≤ R
67 66 rexlimdvva ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → ∃ a ∈ ℕ ∃ d ∈ ℕ 1 … R + 1 ∀ i ∈ 1 … R + 1 a + d ⁡ i AP ⁡ K d ⁡ i ⊆ f -1 f ⁡ a + d ⁡ i ∧ ran ⁡ i ∈ 1 … R + 1 ⟼ f ⁡ a + d ⁡ i = R + 1 → R + 1 ≤ R
68 28 67 sylbid ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → R + 1 K PolyAP f → R + 1 ≤ R
69 20 68 mtod ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → ¬ R + 1 K PolyAP f
70 biorf ⊢ ¬ R + 1 K PolyAP f → K + 1 MonoAP f ↔ R + 1 K PolyAP f ∨ K + 1 MonoAP f
71 69 70 syl ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → K + 1 MonoAP f ↔ R + 1 K PolyAP f ∨ K + 1 MonoAP f
72 71 anassrs ⊢ φ ∧ n ∈ ℕ ∧ f : 1 … n ⟶ R → K + 1 MonoAP f ↔ R + 1 K PolyAP f ∨ K + 1 MonoAP f
73 13 72 syldan ⊢ φ ∧ n ∈ ℕ ∧ f ∈ R 1 … n → K + 1 MonoAP f ↔ R + 1 K PolyAP f ∨ K + 1 MonoAP f
74 73 ralbidva ⊢ φ ∧ n ∈ ℕ → ∀ f ∈ R 1 … n K + 1 MonoAP f ↔ ∀ f ∈ R 1 … n R + 1 K PolyAP f ∨ K + 1 MonoAP f
75 74 rexbidva ⊢ φ → ∃ n ∈ ℕ ∀ f ∈ R 1 … n K + 1 MonoAP f ↔ ∃ n ∈ ℕ ∀ f ∈ R 1 … n R + 1 K PolyAP f ∨ K + 1 MonoAP f
76 8 75 mpbird ⊢ φ → ∃ n ∈ ℕ ∀ f ∈ R 1 … n K + 1 MonoAP f