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

Theorem intfracq 6255
Description: Decompose a rational number, expressed as a ratio, into integer and fractional parts. The fractional part has a tighter bound than that of intfrac 6254.
Hypotheses
Ref Expression
intfracq.1 |- Z = (|_` (M / N))
intfracq.2 |- F = ((M / N) - Z)
Assertion
Ref Expression
intfracq |- ((M e. ZZ /\ N e. NN) -> (0 <_ F /\ F <_ ((N - 1) / N) /\ (M / N) = (Z + F)))

Proof of Theorem intfracq
StepHypRef Expression
1 redivclt 5802 . . . . 5 |- ((M e. RR /\ N e. RR /\ N =/= 0) -> (M / N) e. RR)
2 zret 6141 . . . . . 6 |- (M e. ZZ -> M e. RR)
32adantr 391 . . . . 5 |- ((M e. ZZ /\ N e. NN) -> M e. RR)
4 nnret 5931 . . . . . 6 |- (N e. NN -> N e. RR)
54adantl 390 . . . . 5 |- ((M e. ZZ /\ N e. NN) -> N e. RR)
6 nnne0t 5951 . . . . . 6 |- (N e. NN -> N =/= 0)
76adantl 390 . . . . 5 |- ((M e. ZZ /\ N e. NN) -> N =/= 0)
81, 3, 5, 7syl3anc 860 . . . 4 |- ((M e. ZZ /\ N e. NN) -> (M / N) e. RR)
9 intfracq.1 . . . . 5 |- Z = (|_` (M / N))
10 intfracq.2 . . . . 5 |- F = ((M / N) - Z)
119, 10intfrac 6254 . . . 4 |- ((M / N) e. RR -> (0 <_ F /\ F < 1 /\ (M / N) = (Z + F)))
128, 11syl 10 . . 3 |- ((M e. ZZ /\ N e. NN) -> (0 <_ F /\ F < 1 /\ (M / N) = (Z + F)))
13123simp1d 796 . 2 |- ((M e. ZZ /\ N e. NN) -> 0 <_ F)
14 fraclt1t 6233 . . . . . . 7 |- ((M / N) e. RR -> ((M / N) - (|_` (M / N))) < 1)
158, 14syl 10 . . . . . 6 |- ((M e. ZZ /\ N e. NN) -> ((M / N) - (|_` (M / N))) < 1)
169opreq2i 3978 . . . . . . . 8 |- ((M / N) - Z) = ((M / N) - (|_` (M / N)))
1710, 16eqtr 1498 . . . . . . 7 |- F = ((M / N) - (|_` (M / N)))
1817a1i 8 . . . . . 6 |- ((M e. ZZ /\ N e. NN) -> F = ((M / N) - (|_` (M / N))))
19 dividt 5767 . . . . . . . 8 |- ((N e. CC /\ N =/= 0) -> (N / N) = 1)
20 nncnt 5932 . . . . . . . 8 |- (N e. NN -> N e. CC)
2119, 20, 6sylanc 473 . . . . . . 7 |- (N e. NN -> (N / N) = 1)
2221adantl 390 . . . . . 6 |- ((M e. ZZ /\ N e. NN) -> (N / N) = 1)
2315, 18, 223brtr4d 2650 . . . . 5 |- ((M e. ZZ /\ N e. NN) -> F < (N / N))
24 ltmuldiv2t 5867 . . . . . 6 |- ((F e. RR /\ N e. RR /\ (N e. RR /\ 0 < N)) -> ((N x. F) < N <-> F < (N / N)))
25 resubclt 5450 . . . . . . . 8 |- (((M / N) e. RR /\ Z e. RR) -> ((M / N) - Z) e. RR)
26 flreclt 6229 . . . . . . . . . 10 |- ((M / N) e. RR -> (|_` (M / N)) e. RR)
278, 26syl 10 . . . . . . . . 9 |- ((M e. ZZ /\ N e. NN) -> (|_` (M / N)) e. RR)
2827, 9syl5eqel 1555 . . . . . . . 8 |- ((M e. ZZ /\ N e. NN) -> Z e. RR)
2925, 8, 28sylanc 473 . . . . . . 7 |- ((M e. ZZ /\ N e. NN) -> ((M / N) - Z) e. RR)
3029, 10syl5eqel 1555 . . . . . 6 |- ((M e. ZZ /\ N e. NN) -> F e. RR)
31 nngt0t 5948 . . . . . . . 8 |- (N e. NN -> 0 < N)
324, 31jca 288 . . . . . . 7 |- (N e. NN -> (N e. RR /\ 0 < N))
3332adantl 390 . . . . . 6 |- ((M e. ZZ /\ N e. NN) -> (N e. RR /\ 0 < N))
3424, 30, 5, 33syl3anc 860 . . . . 5 |- ((M e. ZZ /\ N e. NN) -> ((N x. F) < N <-> F < (N / N)))
3523, 34mpbird 196 . . . 4 |- ((M e. ZZ /\ N e. NN) -> (N x. F) < N)
36 zltlem1t 6186 . . . . 5 |- (((N x. F) e. ZZ /\ N e. ZZ) -> ((N x. F) < N <-> (N x. F) <_ (N - 1)))
37 subdit 5439 . . . . . . . 8 |- ((N e. CC /\ (M / N) e. CC /\ Z e. CC) -> (N x. ((M / N) - Z)) = ((N x. (M / N)) - (N x. Z)))
3820adantl 390 . . . . . . . 8 |- ((M e. ZZ /\ N e. NN) -> N e. CC)
398recnd 5327 . . . . . . . 8 |- ((M e. ZZ /\ N e. NN) -> (M / N) e. CC)
409a1i 8 . . . . . . . . . 10 |- ((M e. ZZ /\ N e. NN) -> Z = (|_` (M / N)))
41 flclt 6228 . . . . . . . . . . 11 |- ((M / N) e. RR -> (|_` (M / N)) e. ZZ)
428, 41syl 10 . . . . . . . . . 10 |- ((M e. ZZ /\ N e. NN) -> (|_` (M / N)) e. ZZ)
4340, 42eqeltrd 1551 . . . . . . . . 9 |- ((M e. ZZ /\ N e. NN) -> Z e. ZZ)
44 zcnt 6142 . . . . . . . . 9 |- (Z e. ZZ -> Z e. CC)
4543, 44syl 10 . . . . . . . 8 |- ((M e. ZZ /\ N e. NN) -> Z e. CC)
4637, 38, 39, 45syl3anc 860 . . . . . . 7 |- ((M e. ZZ /\ N e. NN) -> (N x. ((M / N) - Z)) = ((N x. (M / N)) - (N x. Z)))
4710opreq2i 3978 . . . . . . 7 |- (N x. F) = (N x. ((M / N) - Z))
4846, 47syl5eq 1522 . . . . . 6 |- ((M e. ZZ /\ N e. NN) -> (N x. F) = ((N x. (M / N)) - (N x. Z)))
49 zsubclt 6170 . . . . . . 7 |- (((N x. (M / N)) e. ZZ /\ (N x. Z) e. ZZ) -> ((N x. (M / N)) - (N x. Z)) e. ZZ)
50 divcan2t 5733 . . . . . . . . 9 |- ((M e. CC /\ N e. CC /\ N =/= 0) -> (N x. (M / N)) = M)
51 zcnt 6142 . . . . . . . . . 10 |- (M e. ZZ -> M e. CC)
5251adantr 391 . . . . . . . . 9 |- ((M e. ZZ /\ N e. NN) -> M e. CC)
5350, 52, 38, 7syl3anc 860 . . . . . . . 8 |- ((M e. ZZ /\ N e. NN) -> (N x. (M / N)) = M)
54 pm3.26 319 . . . . . . . 8 |- ((M e. ZZ /\ N e. NN) -> M e. ZZ)
5553, 54eqeltrd 1551 . . . . . . 7 |- ((M e. ZZ /\ N e. NN) -> (N x. (M / N)) e. ZZ)
56 zmulclt 6182 . . . . . . . 8 |- ((N e. ZZ /\ Z e. ZZ) -> (N x. Z) e. ZZ)
57 nnzt 6155 . . . . . . . . 9 |- (N e. NN -> N e. ZZ)
5857adantl 390 . . . . . . . 8 |- ((M e. ZZ /\ N e. NN) -> N e. ZZ)
5956, 58, 43sylanc 473 . . . . . . 7 |- ((M e. ZZ /\ N e. NN) -> (N x. Z) e. ZZ)
6049, 55, 59sylanc 473 . . . . . 6 |- ((M e. ZZ /\ N e. NN) -> ((N x. (M / N)) - (N x. Z)) e. ZZ)
6148, 60eqeltrd 1551 . . . . 5 |- ((M e. ZZ /\ N e. NN) -> (N x. F) e. ZZ)
6236, 61, 58sylanc 473 . . . 4 |- ((M e. ZZ /\ N e. NN) -> ((N x. F) < N <-> (N x. F) <_ (N - 1)))
6335, 62mpbid 195 . . 3 |- ((M e. ZZ /\ N e. NN) -> (N x. F) <_ (N - 1))
64 lemuldiv2t 5878 . . . 4 |- ((F e. RR /\ (N - 1) e. RR /\ (N e. RR /\ 0 < N)) -> ((N x. F) <_ (N - 1) <-> F <_ ((N - 1) / N)))
65 peano2rem 5454 . . . . . 6 |- (N e. RR -> (N - 1) e. RR)
664, 65syl 10 . . . . 5 |- (N e. NN -> (N - 1) e. RR)
6766adantl 390 . . . 4 |- ((M e. ZZ /\ N e. NN) -> (N - 1) e. RR)
6864, 30, 67, 33syl3anc 860 . . 3 |- ((M e. ZZ /\ N e. NN) -> ((N x. F) <_ (N - 1) <-> F <_ ((N - 1) / N)))
6963, 68mpbid 195 . 2 |- ((M e. ZZ /\ N e. NN) -> F <_ ((N - 1) / N))
70123simp3d 798 . 2 |- ((M e. ZZ /\ N e. NN) -> (M / N) = (Z + F))
7113, 69, 703jca 821 1 |- ((M e. ZZ /\ N e. NN) -> (0 <_ F /\ F <_ ((N - 1) / N) /\ (M / N) = (Z + F)))
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 146   /\ wa 223   /\ w3a 777   = wceq 958   e. wcel 960   =/= wne 1588   class class class wbr 2624  ` cfv 3188  (class class class)co 3969  CCcc 5244  RRcr 5245  0cc0 5246  1c1 5247   + caddc 5249   x. cmul 5251   - cmin 5304   / cdiv 5306   <_ cle 5307  NNcn 5308  ZZcz 5310   < clt 5498  |_cfl 6225
This theorem is referenced by:  fldivt 6256
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 964  ax-gen 965  ax-8 966  ax-9 967  ax-10 968  ax-11 969  ax-12 970  ax-13 971  ax-14 972  ax-17 973  ax-4 975  ax-5o 977  ax-6o 980  ax-9o 1125  ax-10o 1142  ax-16 1212  ax-11o 1220  ax-ext 1462  ax-rep 2698  ax-sep 2708  ax-nul 2715  ax-pow 2748  ax-pr 2785  ax-un 2872  ax-inf2 4634
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-3or 778  df-3an 779  df-ex 983  df-sb 1174  df-eu 1384  df-mo 1385  df-clab 1467  df-cleq 1472  df-clel 1475  df-ne 1590  df-nel 1591  df-ral 1652  df-rex 1653  df-reu 1654  df-rab 1655  df-v 1815  df-sbc 1945  df-csb 2005  df-dif 2052  df-un 2053  df-in 2054  df-ss 2056  df-pss 2058  df-nul 2284  df-if 2366  df-pw 2406  df-sn 2416  df-pr 2417  df-tp 2419  df-op 2420  df-uni 2508  df-int 2538  df-iun 2572  df-br 2625  df-opab 2672  df-tr 2686  df-eprel 2838  df-id 2841  df-po 2846  df-so 2856  df-fr 2923  df-we 2940  df-ord 2957  df-on 2958  df-lim 2959  df-suc 2960  df-om 3138  df-xp 3190  df-rel 3191  df-cnv 3192  df-co 3193  df-dm 3194  df-rn 3195  df-res 3196  df-ima 3197  df-fun 3198  df-fn 3199  df-f 3200  df-f1 3201  df-fo 3202  df-f1o 3203  df-fv 3204  df-rdg 3938  df-opr 3971  df-oprab 3972  df-1st 4085  df-2nd 4086  df-1o 4139  df-oadd 4141  df-omul 4142  df-er 4267  df-ec 4269  df-qs 4272  df-en 4374  df-dom 4375  df-sdom 4376  df-ni 5012  df-pli 5013  df-mi 5014  df-lti 5015  df-plpq 5047  df-mpq 5048  df-enq 5049  df-nq 5050  df-plq 5051  df-mq 5052  df-rq 5053  df-ltq 5054  df-1q 5055  df-np 5098