Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  dvdsflf1o Structured version   Visualization version   GIF version

Theorem dvdsflf1o 24808
 Description: A bijection from the numbers less than 𝑁 / 𝐴 to the multiples of 𝐴 less than 𝑁. Useful for some sum manipulations. (Contributed by Mario Carneiro, 3-May-2016.)
Hypotheses
Ref Expression
dvdsflf1o.1 (𝜑𝐴 ∈ ℝ)
dvdsflf1o.2 (𝜑𝑁 ∈ ℕ)
dvdsflf1o.f 𝐹 = (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ↦ (𝑁 · 𝑛))
Assertion
Ref Expression
dvdsflf1o (𝜑𝐹:(1...(⌊‘(𝐴 / 𝑁)))–1-1-onto→{𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})
Distinct variable groups:   𝑥,𝑛,𝐴   𝑛,𝑁,𝑥   𝜑,𝑛
Allowed substitution hints:   𝜑(𝑥)   𝐹(𝑥,𝑛)

Proof of Theorem dvdsflf1o
Dummy variable 𝑚 is distinct from all other variables.
StepHypRef Expression
1 dvdsflf1o.f . 2 𝐹 = (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ↦ (𝑁 · 𝑛))
2 dvdsflf1o.2 . . . . 5 (𝜑𝑁 ∈ ℕ)
3 elfznn 12309 . . . . 5 (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) → 𝑛 ∈ ℕ)
4 nnmulcl 10988 . . . . 5 ((𝑁 ∈ ℕ ∧ 𝑛 ∈ ℕ) → (𝑁 · 𝑛) ∈ ℕ)
52, 3, 4syl2an 494 . . . 4 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → (𝑁 · 𝑛) ∈ ℕ)
6 dvdsflf1o.1 . . . . . . . . 9 (𝜑𝐴 ∈ ℝ)
76, 2nndivred 11014 . . . . . . . 8 (𝜑 → (𝐴 / 𝑁) ∈ ℝ)
8 fznnfl 12598 . . . . . . . 8 ((𝐴 / 𝑁) ∈ ℝ → (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ↔ (𝑛 ∈ ℕ ∧ 𝑛 ≤ (𝐴 / 𝑁))))
97, 8syl 17 . . . . . . 7 (𝜑 → (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ↔ (𝑛 ∈ ℕ ∧ 𝑛 ≤ (𝐴 / 𝑁))))
109simplbda 653 . . . . . 6 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → 𝑛 ≤ (𝐴 / 𝑁))
113adantl 482 . . . . . . . 8 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → 𝑛 ∈ ℕ)
1211nnred 10980 . . . . . . 7 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → 𝑛 ∈ ℝ)
136adantr 481 . . . . . . 7 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → 𝐴 ∈ ℝ)
142nnred 10980 . . . . . . . 8 (𝜑𝑁 ∈ ℝ)
1514adantr 481 . . . . . . 7 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → 𝑁 ∈ ℝ)
162nngt0d 11009 . . . . . . . 8 (𝜑 → 0 < 𝑁)
1716adantr 481 . . . . . . 7 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → 0 < 𝑁)
18 lemuldiv2 10849 . . . . . . 7 ((𝑛 ∈ ℝ ∧ 𝐴 ∈ ℝ ∧ (𝑁 ∈ ℝ ∧ 0 < 𝑁)) → ((𝑁 · 𝑛) ≤ 𝐴𝑛 ≤ (𝐴 / 𝑁)))
1912, 13, 15, 17, 18syl112anc 1327 . . . . . 6 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → ((𝑁 · 𝑛) ≤ 𝐴𝑛 ≤ (𝐴 / 𝑁)))
2010, 19mpbird 247 . . . . 5 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → (𝑁 · 𝑛) ≤ 𝐴)
212nnzd 11425 . . . . . . 7 (𝜑𝑁 ∈ ℤ)
22 elfzelz 12281 . . . . . . 7 (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) → 𝑛 ∈ ℤ)
23 zmulcl 11371 . . . . . . 7 ((𝑁 ∈ ℤ ∧ 𝑛 ∈ ℤ) → (𝑁 · 𝑛) ∈ ℤ)
2421, 22, 23syl2an 494 . . . . . 6 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → (𝑁 · 𝑛) ∈ ℤ)
25 flge 12543 . . . . . 6 ((𝐴 ∈ ℝ ∧ (𝑁 · 𝑛) ∈ ℤ) → ((𝑁 · 𝑛) ≤ 𝐴 ↔ (𝑁 · 𝑛) ≤ (⌊‘𝐴)))
2613, 24, 25syl2anc 692 . . . . 5 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → ((𝑁 · 𝑛) ≤ 𝐴 ↔ (𝑁 · 𝑛) ≤ (⌊‘𝐴)))
2720, 26mpbid 222 . . . 4 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → (𝑁 · 𝑛) ≤ (⌊‘𝐴))
286flcld 12536 . . . . . 6 (𝜑 → (⌊‘𝐴) ∈ ℤ)
2928adantr 481 . . . . 5 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → (⌊‘𝐴) ∈ ℤ)
30 fznn 12347 . . . . 5 ((⌊‘𝐴) ∈ ℤ → ((𝑁 · 𝑛) ∈ (1...(⌊‘𝐴)) ↔ ((𝑁 · 𝑛) ∈ ℕ ∧ (𝑁 · 𝑛) ≤ (⌊‘𝐴))))
3129, 30syl 17 . . . 4 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → ((𝑁 · 𝑛) ∈ (1...(⌊‘𝐴)) ↔ ((𝑁 · 𝑛) ∈ ℕ ∧ (𝑁 · 𝑛) ≤ (⌊‘𝐴))))
325, 27, 31mpbir2and 956 . . 3 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → (𝑁 · 𝑛) ∈ (1...(⌊‘𝐴)))
33 dvdsmul1 14922 . . . 4 ((𝑁 ∈ ℤ ∧ 𝑛 ∈ ℤ) → 𝑁 ∥ (𝑁 · 𝑛))
3421, 22, 33syl2an 494 . . 3 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → 𝑁 ∥ (𝑁 · 𝑛))
35 breq2 4622 . . . 4 (𝑥 = (𝑁 · 𝑛) → (𝑁𝑥𝑁 ∥ (𝑁 · 𝑛)))
3635elrab 3351 . . 3 ((𝑁 · 𝑛) ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥} ↔ ((𝑁 · 𝑛) ∈ (1...(⌊‘𝐴)) ∧ 𝑁 ∥ (𝑁 · 𝑛)))
3732, 34, 36sylanbrc 697 . 2 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → (𝑁 · 𝑛) ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})
38 breq2 4622 . . . . . . 7 (𝑥 = 𝑚 → (𝑁𝑥𝑁𝑚))
3938elrab 3351 . . . . . 6 (𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥} ↔ (𝑚 ∈ (1...(⌊‘𝐴)) ∧ 𝑁𝑚))
4039simprbi 480 . . . . 5 (𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥} → 𝑁𝑚)
4140adantl 482 . . . 4 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝑁𝑚)
42 elrabi 3347 . . . . . . 7 (𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥} → 𝑚 ∈ (1...(⌊‘𝐴)))
4342adantl 482 . . . . . 6 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝑚 ∈ (1...(⌊‘𝐴)))
44 elfznn 12309 . . . . . 6 (𝑚 ∈ (1...(⌊‘𝐴)) → 𝑚 ∈ ℕ)
4543, 44syl 17 . . . . 5 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝑚 ∈ ℕ)
462adantr 481 . . . . 5 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝑁 ∈ ℕ)
47 nndivdvds 14908 . . . . 5 ((𝑚 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑁𝑚 ↔ (𝑚 / 𝑁) ∈ ℕ))
4845, 46, 47syl2anc 692 . . . 4 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → (𝑁𝑚 ↔ (𝑚 / 𝑁) ∈ ℕ))
4941, 48mpbid 222 . . 3 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → (𝑚 / 𝑁) ∈ ℕ)
50 fznnfl 12598 . . . . . . 7 (𝐴 ∈ ℝ → (𝑚 ∈ (1...(⌊‘𝐴)) ↔ (𝑚 ∈ ℕ ∧ 𝑚𝐴)))
516, 50syl 17 . . . . . 6 (𝜑 → (𝑚 ∈ (1...(⌊‘𝐴)) ↔ (𝑚 ∈ ℕ ∧ 𝑚𝐴)))
5251simplbda 653 . . . . 5 ((𝜑𝑚 ∈ (1...(⌊‘𝐴))) → 𝑚𝐴)
5342, 52sylan2 491 . . . 4 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝑚𝐴)
5445nnred 10980 . . . . 5 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝑚 ∈ ℝ)
556adantr 481 . . . . 5 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝐴 ∈ ℝ)
5614adantr 481 . . . . 5 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝑁 ∈ ℝ)
5716adantr 481 . . . . 5 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 0 < 𝑁)
58 lediv1 10833 . . . . 5 ((𝑚 ∈ ℝ ∧ 𝐴 ∈ ℝ ∧ (𝑁 ∈ ℝ ∧ 0 < 𝑁)) → (𝑚𝐴 ↔ (𝑚 / 𝑁) ≤ (𝐴 / 𝑁)))
5954, 55, 56, 57, 58syl112anc 1327 . . . 4 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → (𝑚𝐴 ↔ (𝑚 / 𝑁) ≤ (𝐴 / 𝑁)))
6053, 59mpbid 222 . . 3 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → (𝑚 / 𝑁) ≤ (𝐴 / 𝑁))
617adantr 481 . . . 4 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → (𝐴 / 𝑁) ∈ ℝ)
62 fznnfl 12598 . . . 4 ((𝐴 / 𝑁) ∈ ℝ → ((𝑚 / 𝑁) ∈ (1...(⌊‘(𝐴 / 𝑁))) ↔ ((𝑚 / 𝑁) ∈ ℕ ∧ (𝑚 / 𝑁) ≤ (𝐴 / 𝑁))))
6361, 62syl 17 . . 3 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → ((𝑚 / 𝑁) ∈ (1...(⌊‘(𝐴 / 𝑁))) ↔ ((𝑚 / 𝑁) ∈ ℕ ∧ (𝑚 / 𝑁) ≤ (𝐴 / 𝑁))))
6449, 60, 63mpbir2and 956 . 2 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → (𝑚 / 𝑁) ∈ (1...(⌊‘(𝐴 / 𝑁))))
6545nncnd 10981 . . . . 5 ((𝜑𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥}) → 𝑚 ∈ ℂ)
6665adantrl 751 . . . 4 ((𝜑 ∧ (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ∧ 𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})) → 𝑚 ∈ ℂ)
672nncnd 10981 . . . . 5 (𝜑𝑁 ∈ ℂ)
6867adantr 481 . . . 4 ((𝜑 ∧ (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ∧ 𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})) → 𝑁 ∈ ℂ)
6911nncnd 10981 . . . . 5 ((𝜑𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁)))) → 𝑛 ∈ ℂ)
7069adantrr 752 . . . 4 ((𝜑 ∧ (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ∧ 𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})) → 𝑛 ∈ ℂ)
712nnne0d 11010 . . . . 5 (𝜑𝑁 ≠ 0)
7271adantr 481 . . . 4 ((𝜑 ∧ (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ∧ 𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})) → 𝑁 ≠ 0)
7366, 68, 70, 72divmuld 10768 . . 3 ((𝜑 ∧ (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ∧ 𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})) → ((𝑚 / 𝑁) = 𝑛 ↔ (𝑁 · 𝑛) = 𝑚))
74 eqcom 2633 . . 3 (𝑛 = (𝑚 / 𝑁) ↔ (𝑚 / 𝑁) = 𝑛)
75 eqcom 2633 . . 3 (𝑚 = (𝑁 · 𝑛) ↔ (𝑁 · 𝑛) = 𝑚)
7673, 74, 753bitr4g 303 . 2 ((𝜑 ∧ (𝑛 ∈ (1...(⌊‘(𝐴 / 𝑁))) ∧ 𝑚 ∈ {𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})) → (𝑛 = (𝑚 / 𝑁) ↔ 𝑚 = (𝑁 · 𝑛)))
771, 37, 64, 76f1o2d 6841 1 (𝜑𝐹:(1...(⌊‘(𝐴 / 𝑁)))–1-1-onto→{𝑥 ∈ (1...(⌊‘𝐴)) ∣ 𝑁𝑥})
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 196   ∧ wa 384   = wceq 1480   ∈ wcel 1992   ≠ wne 2796  {crab 2916   class class class wbr 4618   ↦ cmpt 4678  –1-1-onto→wf1o 5849  ‘cfv 5850  (class class class)co 6605  ℂcc 9879  ℝcr 9880  0cc0 9881  1c1 9882   · cmul 9886   < clt 10019   ≤ cle 10020   / cdiv 10629  ℕcn 10965  ℤcz 11322  ...cfz 12265  ⌊cfl 12528   ∥ cdvds 14902 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1841  ax-6 1890  ax-7 1937  ax-8 1994  ax-9 2001  ax-10 2021  ax-11 2036  ax-12 2049  ax-13 2250  ax-ext 2606  ax-sep 4746  ax-nul 4754  ax-pow 4808  ax-pr 4872  ax-un 6903  ax-cnex 9937  ax-resscn 9938  ax-1cn 9939  ax-icn 9940  ax-addcl 9941  ax-addrcl 9942  ax-mulcl 9943  ax-mulrcl 9944  ax-mulcom 9945  ax-addass 9946  ax-mulass 9947  ax-distr 9948  ax-i2m1 9949  ax-1ne0 9950  ax-1rid 9951  ax-rnegex 9952  ax-rrecex 9953  ax-cnre 9954  ax-pre-lttri 9955  ax-pre-lttrn 9956  ax-pre-ltadd 9957  ax-pre-mulgt0 9958  ax-pre-sup 9959 This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-tru 1483  df-ex 1702  df-nf 1707  df-sb 1883  df-eu 2478  df-mo 2479  df-clab 2613  df-cleq 2619  df-clel 2622  df-nfc 2756  df-ne 2797  df-nel 2900  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3193  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-pss 3576  df-nul 3897  df-if 4064  df-pw 4137  df-sn 4154  df-pr 4156  df-tp 4158  df-op 4160  df-uni 4408  df-iun 4492  df-br 4619  df-opab 4679  df-mpt 4680  df-tr 4718  df-eprel 4990  df-id 4994  df-po 5000  df-so 5001  df-fr 5038  df-we 5040  df-xp 5085  df-rel 5086  df-cnv 5087  df-co 5088  df-dm 5089  df-rn 5090  df-res 5091  df-ima 5092  df-pred 5642  df-ord 5688  df-on 5689  df-lim 5690  df-suc 5691  df-iota 5813  df-fun 5852  df-fn 5853  df-f 5854  df-f1 5855  df-fo 5856  df-f1o 5857  df-fv 5858  df-riota 6566  df-ov 6608  df-oprab 6609  df-mpt2 6610  df-om 7014  df-1st 7116  df-2nd 7117  df-wrecs 7353  df-recs 7414  df-rdg 7452  df-er 7688  df-en 7901  df-dom 7902  df-sdom 7903  df-sup 8293  df-inf 8294  df-pnf 10021  df-mnf 10022  df-xr 10023  df-ltxr 10024  df-le 10025  df-sub 10213  df-neg 10214  df-div 10630  df-nn 10966  df-n0 11238  df-z 11323  df-uz 11632  df-fz 12266  df-fl 12530  df-dvds 14903 This theorem is referenced by:  dvdsflsumcom  24809  logfac2  24837
 Copyright terms: Public domain W3C validator