Users' Mathboxes Mathbox for Alexander van der Vekens < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  2elfz2melfz Structured version   Visualization version   GIF version

Theorem 2elfz2melfz 42156
Description: If the sum of two integers of a 0-based finite set of sequential integers is greater than the upper bound, the difference between one of the integers and the difference between the upper bound and the other integer is in the 0-based finite set of sequential integers with the first integer as upper bound. (Contributed by Alexander van der Vekens, 7-Apr-2018.) (Revised by Alexander van der Vekens, 31-May-2018.)
Assertion
Ref Expression
2elfz2melfz ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → (𝑁 < (𝐴 + 𝐵) → (𝐵 − (𝑁𝐴)) ∈ (0...𝐴)))

Proof of Theorem 2elfz2melfz
StepHypRef Expression
1 elfzelz 12592 . . . . 5 (𝐴 ∈ (0...𝑁) → 𝐴 ∈ ℤ)
2 elfzel2 12590 . . . . . 6 (𝐵 ∈ (0...𝑁) → 𝑁 ∈ ℤ)
3 elfzelz 12592 . . . . . 6 (𝐵 ∈ (0...𝑁) → 𝐵 ∈ ℤ)
4 simplr 786 . . . . . . . . . 10 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → 𝐵 ∈ ℤ)
5 zsubcl 11705 . . . . . . . . . . 11 ((𝑁 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (𝑁𝐴) ∈ ℤ)
65adantlr 707 . . . . . . . . . 10 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → (𝑁𝐴) ∈ ℤ)
74, 6zsubcld 11773 . . . . . . . . 9 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → (𝐵 − (𝑁𝐴)) ∈ ℤ)
87adantr 473 . . . . . . . 8 ((((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) ∧ 𝑁 < (𝐴 + 𝐵)) → (𝐵 − (𝑁𝐴)) ∈ ℤ)
9 zre 11666 . . . . . . . . . . . 12 (𝑁 ∈ ℤ → 𝑁 ∈ ℝ)
109ad2antrr 718 . . . . . . . . . . 11 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → 𝑁 ∈ ℝ)
11 zaddcl 11703 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝐴 + 𝐵) ∈ ℤ)
1211zred 11768 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝐴 + 𝐵) ∈ ℝ)
1312expcom 403 . . . . . . . . . . . . 13 (𝐵 ∈ ℤ → (𝐴 ∈ ℤ → (𝐴 + 𝐵) ∈ ℝ))
1413adantl 474 . . . . . . . . . . . 12 ((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝐴 ∈ ℤ → (𝐴 + 𝐵) ∈ ℝ))
1514imp 396 . . . . . . . . . . 11 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → (𝐴 + 𝐵) ∈ ℝ)
1610, 15, 10ltsub1d 10926 . . . . . . . . . 10 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → (𝑁 < (𝐴 + 𝐵) ↔ (𝑁𝑁) < ((𝐴 + 𝐵) − 𝑁)))
17 zre 11666 . . . . . . . . . . . . . 14 (𝐵 ∈ ℤ → 𝐵 ∈ ℝ)
189, 17anim12i 607 . . . . . . . . . . . . 13 ((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝑁 ∈ ℝ ∧ 𝐵 ∈ ℝ))
19 zre 11666 . . . . . . . . . . . . 13 (𝐴 ∈ ℤ → 𝐴 ∈ ℝ)
2018, 19anim12i 607 . . . . . . . . . . . 12 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → ((𝑁 ∈ ℝ ∧ 𝐵 ∈ ℝ) ∧ 𝐴 ∈ ℝ))
21 id 22 . . . . . . . . . . . . . . 15 (𝑁 ∈ ℝ → 𝑁 ∈ ℝ)
2221, 21resubcld 10748 . . . . . . . . . . . . . 14 (𝑁 ∈ ℝ → (𝑁𝑁) ∈ ℝ)
2322ad2antrr 718 . . . . . . . . . . . . 13 (((𝑁 ∈ ℝ ∧ 𝐵 ∈ ℝ) ∧ 𝐴 ∈ ℝ) → (𝑁𝑁) ∈ ℝ)
24 readdcl 10305 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ) → (𝐴 + 𝐵) ∈ ℝ)
2524expcom 403 . . . . . . . . . . . . . . . 16 (𝐵 ∈ ℝ → (𝐴 ∈ ℝ → (𝐴 + 𝐵) ∈ ℝ))
2625adantl 474 . . . . . . . . . . . . . . 15 ((𝑁 ∈ ℝ ∧ 𝐵 ∈ ℝ) → (𝐴 ∈ ℝ → (𝐴 + 𝐵) ∈ ℝ))
2726imp 396 . . . . . . . . . . . . . 14 (((𝑁 ∈ ℝ ∧ 𝐵 ∈ ℝ) ∧ 𝐴 ∈ ℝ) → (𝐴 + 𝐵) ∈ ℝ)
28 simpll 784 . . . . . . . . . . . . . 14 (((𝑁 ∈ ℝ ∧ 𝐵 ∈ ℝ) ∧ 𝐴 ∈ ℝ) → 𝑁 ∈ ℝ)
2927, 28resubcld 10748 . . . . . . . . . . . . 13 (((𝑁 ∈ ℝ ∧ 𝐵 ∈ ℝ) ∧ 𝐴 ∈ ℝ) → ((𝐴 + 𝐵) − 𝑁) ∈ ℝ)
3023, 29jca 508 . . . . . . . . . . . 12 (((𝑁 ∈ ℝ ∧ 𝐵 ∈ ℝ) ∧ 𝐴 ∈ ℝ) → ((𝑁𝑁) ∈ ℝ ∧ ((𝐴 + 𝐵) − 𝑁) ∈ ℝ))
31 ltle 10414 . . . . . . . . . . . 12 (((𝑁𝑁) ∈ ℝ ∧ ((𝐴 + 𝐵) − 𝑁) ∈ ℝ) → ((𝑁𝑁) < ((𝐴 + 𝐵) − 𝑁) → (𝑁𝑁) ≤ ((𝐴 + 𝐵) − 𝑁)))
3220, 30, 313syl 18 . . . . . . . . . . 11 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → ((𝑁𝑁) < ((𝐴 + 𝐵) − 𝑁) → (𝑁𝑁) ≤ ((𝐴 + 𝐵) − 𝑁)))
33 zcn 11667 . . . . . . . . . . . . . 14 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
3433subidd 10670 . . . . . . . . . . . . 13 (𝑁 ∈ ℤ → (𝑁𝑁) = 0)
3534ad2antrr 718 . . . . . . . . . . . 12 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → (𝑁𝑁) = 0)
36 zcn 11667 . . . . . . . . . . . . . . 15 (𝐵 ∈ ℤ → 𝐵 ∈ ℂ)
3736adantl 474 . . . . . . . . . . . . . 14 ((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) → 𝐵 ∈ ℂ)
3837adantr 473 . . . . . . . . . . . . 13 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → 𝐵 ∈ ℂ)
3933ad2antrr 718 . . . . . . . . . . . . 13 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → 𝑁 ∈ ℂ)
40 zcn 11667 . . . . . . . . . . . . . 14 (𝐴 ∈ ℤ → 𝐴 ∈ ℂ)
4140adantl 474 . . . . . . . . . . . . 13 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → 𝐴 ∈ ℂ)
42 simp3 1169 . . . . . . . . . . . . . . . 16 ((𝐵 ∈ ℂ ∧ 𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ) → 𝐴 ∈ ℂ)
43 simp1 1167 . . . . . . . . . . . . . . . 16 ((𝐵 ∈ ℂ ∧ 𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ) → 𝐵 ∈ ℂ)
4442, 43addcomd 10526 . . . . . . . . . . . . . . 15 ((𝐵 ∈ ℂ ∧ 𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ) → (𝐴 + 𝐵) = (𝐵 + 𝐴))
4544oveq1d 6891 . . . . . . . . . . . . . 14 ((𝐵 ∈ ℂ ∧ 𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ) → ((𝐴 + 𝐵) − 𝑁) = ((𝐵 + 𝐴) − 𝑁))
46 subsub3 10603 . . . . . . . . . . . . . 14 ((𝐵 ∈ ℂ ∧ 𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ) → (𝐵 − (𝑁𝐴)) = ((𝐵 + 𝐴) − 𝑁))
4745, 46eqtr4d 2834 . . . . . . . . . . . . 13 ((𝐵 ∈ ℂ ∧ 𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ) → ((𝐴 + 𝐵) − 𝑁) = (𝐵 − (𝑁𝐴)))
4838, 39, 41, 47syl3anc 1491 . . . . . . . . . . . 12 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → ((𝐴 + 𝐵) − 𝑁) = (𝐵 − (𝑁𝐴)))
4935, 48breq12d 4854 . . . . . . . . . . 11 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → ((𝑁𝑁) ≤ ((𝐴 + 𝐵) − 𝑁) ↔ 0 ≤ (𝐵 − (𝑁𝐴))))
5032, 49sylibd 231 . . . . . . . . . 10 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → ((𝑁𝑁) < ((𝐴 + 𝐵) − 𝑁) → 0 ≤ (𝐵 − (𝑁𝐴))))
5116, 50sylbid 232 . . . . . . . . 9 (((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) → (𝑁 < (𝐴 + 𝐵) → 0 ≤ (𝐵 − (𝑁𝐴))))
5251imp 396 . . . . . . . 8 ((((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) ∧ 𝑁 < (𝐴 + 𝐵)) → 0 ≤ (𝐵 − (𝑁𝐴)))
53 elnn0z 11675 . . . . . . . 8 ((𝐵 − (𝑁𝐴)) ∈ ℕ0 ↔ ((𝐵 − (𝑁𝐴)) ∈ ℤ ∧ 0 ≤ (𝐵 − (𝑁𝐴))))
548, 52, 53sylanbrc 579 . . . . . . 7 ((((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝐴 ∈ ℤ) ∧ 𝑁 < (𝐴 + 𝐵)) → (𝐵 − (𝑁𝐴)) ∈ ℕ0)
5554exp31 411 . . . . . 6 ((𝑁 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝐴 ∈ ℤ → (𝑁 < (𝐴 + 𝐵) → (𝐵 − (𝑁𝐴)) ∈ ℕ0)))
562, 3, 55syl2anc 580 . . . . 5 (𝐵 ∈ (0...𝑁) → (𝐴 ∈ ℤ → (𝑁 < (𝐴 + 𝐵) → (𝐵 − (𝑁𝐴)) ∈ ℕ0)))
571, 56mpan9 503 . . . 4 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → (𝑁 < (𝐴 + 𝐵) → (𝐵 − (𝑁𝐴)) ∈ ℕ0))
5857imp 396 . . 3 (((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) ∧ 𝑁 < (𝐴 + 𝐵)) → (𝐵 − (𝑁𝐴)) ∈ ℕ0)
59 elfznn0 12683 . . . 4 (𝐴 ∈ (0...𝑁) → 𝐴 ∈ ℕ0)
6059ad2antrr 718 . . 3 (((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) ∧ 𝑁 < (𝐴 + 𝐵)) → 𝐴 ∈ ℕ0)
61 elfzle2 12595 . . . . . . 7 (𝐵 ∈ (0...𝑁) → 𝐵𝑁)
6261adantl 474 . . . . . 6 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → 𝐵𝑁)
63 elfzel2 12590 . . . . . . . . . 10 (𝐴 ∈ (0...𝑁) → 𝑁 ∈ ℤ)
6463zcnd 11769 . . . . . . . . 9 (𝐴 ∈ (0...𝑁) → 𝑁 ∈ ℂ)
651zcnd 11769 . . . . . . . . 9 (𝐴 ∈ (0...𝑁) → 𝐴 ∈ ℂ)
6664, 65jca 508 . . . . . . . 8 (𝐴 ∈ (0...𝑁) → (𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ))
6766adantr 473 . . . . . . 7 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → (𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ))
68 npcan 10580 . . . . . . 7 ((𝑁 ∈ ℂ ∧ 𝐴 ∈ ℂ) → ((𝑁𝐴) + 𝐴) = 𝑁)
6967, 68syl 17 . . . . . 6 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → ((𝑁𝐴) + 𝐴) = 𝑁)
7062, 69breqtrrd 4869 . . . . 5 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → 𝐵 ≤ ((𝑁𝐴) + 𝐴))
713zred 11768 . . . . . . 7 (𝐵 ∈ (0...𝑁) → 𝐵 ∈ ℝ)
7271adantl 474 . . . . . 6 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → 𝐵 ∈ ℝ)
7363zred 11768 . . . . . . . 8 (𝐴 ∈ (0...𝑁) → 𝑁 ∈ ℝ)
741zred 11768 . . . . . . . 8 (𝐴 ∈ (0...𝑁) → 𝐴 ∈ ℝ)
7573, 74resubcld 10748 . . . . . . 7 (𝐴 ∈ (0...𝑁) → (𝑁𝐴) ∈ ℝ)
7675adantr 473 . . . . . 6 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → (𝑁𝐴) ∈ ℝ)
7774adantr 473 . . . . . 6 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → 𝐴 ∈ ℝ)
7872, 76, 77lesubadd2d 10916 . . . . 5 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → ((𝐵 − (𝑁𝐴)) ≤ 𝐴𝐵 ≤ ((𝑁𝐴) + 𝐴)))
7970, 78mpbird 249 . . . 4 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → (𝐵 − (𝑁𝐴)) ≤ 𝐴)
8079adantr 473 . . 3 (((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) ∧ 𝑁 < (𝐴 + 𝐵)) → (𝐵 − (𝑁𝐴)) ≤ 𝐴)
81 elfz2nn0 12681 . . 3 ((𝐵 − (𝑁𝐴)) ∈ (0...𝐴) ↔ ((𝐵 − (𝑁𝐴)) ∈ ℕ0𝐴 ∈ ℕ0 ∧ (𝐵 − (𝑁𝐴)) ≤ 𝐴))
8258, 60, 80, 81syl3anbrc 1444 . 2 (((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) ∧ 𝑁 < (𝐴 + 𝐵)) → (𝐵 − (𝑁𝐴)) ∈ (0...𝐴))
8382ex 402 1 ((𝐴 ∈ (0...𝑁) ∧ 𝐵 ∈ (0...𝑁)) → (𝑁 < (𝐴 + 𝐵) → (𝐵 − (𝑁𝐴)) ∈ (0...𝐴)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 385  w3a 1108   = wceq 1653  wcel 2157   class class class wbr 4841  (class class class)co 6876  cc 10220  cr 10221  0cc0 10222   + caddc 10225   < clt 10361  cle 10362  cmin 10554  0cn0 11576  cz 11662  ...cfz 12576
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1891  ax-4 1905  ax-5 2006  ax-6 2072  ax-7 2107  ax-8 2159  ax-9 2166  ax-10 2185  ax-11 2200  ax-12 2213  ax-13 2354  ax-ext 2775  ax-sep 4973  ax-nul 4981  ax-pow 5033  ax-pr 5095  ax-un 7181  ax-cnex 10278  ax-resscn 10279  ax-1cn 10280  ax-icn 10281  ax-addcl 10282  ax-addrcl 10283  ax-mulcl 10284  ax-mulrcl 10285  ax-mulcom 10286  ax-addass 10287  ax-mulass 10288  ax-distr 10289  ax-i2m1 10290  ax-1ne0 10291  ax-1rid 10292  ax-rnegex 10293  ax-rrecex 10294  ax-cnre 10295  ax-pre-lttri 10296  ax-pre-lttrn 10297  ax-pre-ltadd 10298  ax-pre-mulgt0 10299
This theorem depends on definitions:  df-bi 199  df-an 386  df-or 875  df-3or 1109  df-3an 1110  df-tru 1657  df-ex 1876  df-nf 1880  df-sb 2065  df-mo 2590  df-eu 2607  df-clab 2784  df-cleq 2790  df-clel 2793  df-nfc 2928  df-ne 2970  df-nel 3073  df-ral 3092  df-rex 3093  df-reu 3094  df-rab 3096  df-v 3385  df-sbc 3632  df-csb 3727  df-dif 3770  df-un 3772  df-in 3774  df-ss 3781  df-pss 3783  df-nul 4114  df-if 4276  df-pw 4349  df-sn 4367  df-pr 4369  df-tp 4371  df-op 4373  df-uni 4627  df-iun 4710  df-br 4842  df-opab 4904  df-mpt 4921  df-tr 4944  df-id 5218  df-eprel 5223  df-po 5231  df-so 5232  df-fr 5269  df-we 5271  df-xp 5316  df-rel 5317  df-cnv 5318  df-co 5319  df-dm 5320  df-rn 5321  df-res 5322  df-ima 5323  df-pred 5896  df-ord 5942  df-on 5943  df-lim 5944  df-suc 5945  df-iota 6062  df-fun 6101  df-fn 6102  df-f 6103  df-f1 6104  df-fo 6105  df-f1o 6106  df-fv 6107  df-riota 6837  df-ov 6879  df-oprab 6880  df-mpt2 6881  df-om 7298  df-1st 7399  df-2nd 7400  df-wrecs 7643  df-recs 7705  df-rdg 7743  df-er 7980  df-en 8194  df-dom 8195  df-sdom 8196  df-pnf 10363  df-mnf 10364  df-xr 10365  df-ltxr 10366  df-le 10367  df-sub 10556  df-neg 10557  df-nn 11311  df-n0 11577  df-z 11663  df-uz 11927  df-fz 12577
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator