ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  qnumdenbi GIF version

Theorem qnumdenbi 11904
Description: Two numbers are the canonical representation of a rational iff they are coprime and have the right quotient. (Contributed by Stefan O'Rear, 13-Sep-2014.)
Assertion
Ref Expression
qnumdenbi ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (((𝐵 gcd 𝐶) = 1 ∧ 𝐴 = (𝐵 / 𝐶)) ↔ ((numer‘𝐴) = 𝐵 ∧ (denom‘𝐴) = 𝐶)))

Proof of Theorem qnumdenbi
Dummy variable 𝑎 is distinct from all other variables.
StepHypRef Expression
1 opelxpi 4578 . . . 4 ((𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ⟨𝐵, 𝐶⟩ ∈ (ℤ × ℕ))
213adant1 1000 . . 3 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ⟨𝐵, 𝐶⟩ ∈ (ℤ × ℕ))
3 qredeu 11812 . . . 4 (𝐴 ∈ ℚ → ∃!𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))))
433ad2ant1 1003 . . 3 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ∃!𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))))
5 fveq2 5428 . . . . . . 7 (𝑎 = ⟨𝐵, 𝐶⟩ → (1st𝑎) = (1st ‘⟨𝐵, 𝐶⟩))
6 fveq2 5428 . . . . . . 7 (𝑎 = ⟨𝐵, 𝐶⟩ → (2nd𝑎) = (2nd ‘⟨𝐵, 𝐶⟩))
75, 6oveq12d 5799 . . . . . 6 (𝑎 = ⟨𝐵, 𝐶⟩ → ((1st𝑎) gcd (2nd𝑎)) = ((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)))
87eqeq1d 2149 . . . . 5 (𝑎 = ⟨𝐵, 𝐶⟩ → (((1st𝑎) gcd (2nd𝑎)) = 1 ↔ ((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)) = 1))
95, 6oveq12d 5799 . . . . . 6 (𝑎 = ⟨𝐵, 𝐶⟩ → ((1st𝑎) / (2nd𝑎)) = ((1st ‘⟨𝐵, 𝐶⟩) / (2nd ‘⟨𝐵, 𝐶⟩)))
109eqeq2d 2152 . . . . 5 (𝑎 = ⟨𝐵, 𝐶⟩ → (𝐴 = ((1st𝑎) / (2nd𝑎)) ↔ 𝐴 = ((1st ‘⟨𝐵, 𝐶⟩) / (2nd ‘⟨𝐵, 𝐶⟩))))
118, 10anbi12d 465 . . . 4 (𝑎 = ⟨𝐵, 𝐶⟩ → ((((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))) ↔ (((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)) = 1 ∧ 𝐴 = ((1st ‘⟨𝐵, 𝐶⟩) / (2nd ‘⟨𝐵, 𝐶⟩)))))
1211riota2 5759 . . 3 ((⟨𝐵, 𝐶⟩ ∈ (ℤ × ℕ) ∧ ∃!𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) → ((((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)) = 1 ∧ 𝐴 = ((1st ‘⟨𝐵, 𝐶⟩) / (2nd ‘⟨𝐵, 𝐶⟩))) ↔ (𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) = ⟨𝐵, 𝐶⟩))
132, 4, 12syl2anc 409 . 2 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ((((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)) = 1 ∧ 𝐴 = ((1st ‘⟨𝐵, 𝐶⟩) / (2nd ‘⟨𝐵, 𝐶⟩))) ↔ (𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) = ⟨𝐵, 𝐶⟩))
14 op1stg 6055 . . . . . 6 ((𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (1st ‘⟨𝐵, 𝐶⟩) = 𝐵)
15 op2ndg 6056 . . . . . 6 ((𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (2nd ‘⟨𝐵, 𝐶⟩) = 𝐶)
1614, 15oveq12d 5799 . . . . 5 ((𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)) = (𝐵 gcd 𝐶))
17163adant1 1000 . . . 4 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)) = (𝐵 gcd 𝐶))
1817eqeq1d 2149 . . 3 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)) = 1 ↔ (𝐵 gcd 𝐶) = 1))
19143adant1 1000 . . . . 5 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (1st ‘⟨𝐵, 𝐶⟩) = 𝐵)
20153adant1 1000 . . . . 5 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (2nd ‘⟨𝐵, 𝐶⟩) = 𝐶)
2119, 20oveq12d 5799 . . . 4 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ((1st ‘⟨𝐵, 𝐶⟩) / (2nd ‘⟨𝐵, 𝐶⟩)) = (𝐵 / 𝐶))
2221eqeq2d 2152 . . 3 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (𝐴 = ((1st ‘⟨𝐵, 𝐶⟩) / (2nd ‘⟨𝐵, 𝐶⟩)) ↔ 𝐴 = (𝐵 / 𝐶)))
2318, 22anbi12d 465 . 2 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ((((1st ‘⟨𝐵, 𝐶⟩) gcd (2nd ‘⟨𝐵, 𝐶⟩)) = 1 ∧ 𝐴 = ((1st ‘⟨𝐵, 𝐶⟩) / (2nd ‘⟨𝐵, 𝐶⟩))) ↔ ((𝐵 gcd 𝐶) = 1 ∧ 𝐴 = (𝐵 / 𝐶))))
24 riotacl 5751 . . . . . . 7 (∃!𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))) → (𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) ∈ (ℤ × ℕ))
25 1st2nd2 6080 . . . . . . 7 ((𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) ∈ (ℤ × ℕ) → (𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) = ⟨(1st ‘(𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))))), (2nd ‘(𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))))⟩)
263, 24, 253syl 17 . . . . . 6 (𝐴 ∈ ℚ → (𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) = ⟨(1st ‘(𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))))), (2nd ‘(𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))))⟩)
27 qnumval 11897 . . . . . . 7 (𝐴 ∈ ℚ → (numer‘𝐴) = (1st ‘(𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))))))
28 qdenval 11898 . . . . . . 7 (𝐴 ∈ ℚ → (denom‘𝐴) = (2nd ‘(𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))))))
2927, 28opeq12d 3720 . . . . . 6 (𝐴 ∈ ℚ → ⟨(numer‘𝐴), (denom‘𝐴)⟩ = ⟨(1st ‘(𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎))))), (2nd ‘(𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))))⟩)
3026, 29eqtr4d 2176 . . . . 5 (𝐴 ∈ ℚ → (𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) = ⟨(numer‘𝐴), (denom‘𝐴)⟩)
3130eqeq1d 2149 . . . 4 (𝐴 ∈ ℚ → ((𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) = ⟨𝐵, 𝐶⟩ ↔ ⟨(numer‘𝐴), (denom‘𝐴)⟩ = ⟨𝐵, 𝐶⟩))
32313ad2ant1 1003 . . 3 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ((𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) = ⟨𝐵, 𝐶⟩ ↔ ⟨(numer‘𝐴), (denom‘𝐴)⟩ = ⟨𝐵, 𝐶⟩))
33 qnumcl 11900 . . . . 5 (𝐴 ∈ ℚ → (numer‘𝐴) ∈ ℤ)
34 qdencl 11901 . . . . 5 (𝐴 ∈ ℚ → (denom‘𝐴) ∈ ℕ)
35 opthg 4167 . . . . 5 (((numer‘𝐴) ∈ ℤ ∧ (denom‘𝐴) ∈ ℕ) → (⟨(numer‘𝐴), (denom‘𝐴)⟩ = ⟨𝐵, 𝐶⟩ ↔ ((numer‘𝐴) = 𝐵 ∧ (denom‘𝐴) = 𝐶)))
3633, 34, 35syl2anc 409 . . . 4 (𝐴 ∈ ℚ → (⟨(numer‘𝐴), (denom‘𝐴)⟩ = ⟨𝐵, 𝐶⟩ ↔ ((numer‘𝐴) = 𝐵 ∧ (denom‘𝐴) = 𝐶)))
37363ad2ant1 1003 . . 3 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (⟨(numer‘𝐴), (denom‘𝐴)⟩ = ⟨𝐵, 𝐶⟩ ↔ ((numer‘𝐴) = 𝐵 ∧ (denom‘𝐴) = 𝐶)))
3832, 37bitrd 187 . 2 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → ((𝑎 ∈ (ℤ × ℕ)(((1st𝑎) gcd (2nd𝑎)) = 1 ∧ 𝐴 = ((1st𝑎) / (2nd𝑎)))) = ⟨𝐵, 𝐶⟩ ↔ ((numer‘𝐴) = 𝐵 ∧ (denom‘𝐴) = 𝐶)))
3913, 23, 383bitr3d 217 1 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℕ) → (((𝐵 gcd 𝐶) = 1 ∧ 𝐴 = (𝐵 / 𝐶)) ↔ ((numer‘𝐴) = 𝐵 ∧ (denom‘𝐴) = 𝐶)))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 103  wb 104  w3a 963   = wceq 1332  wcel 1481  ∃!wreu 2419  cop 3534   × cxp 4544  cfv 5130  crio 5736  (class class class)co 5781  1st c1st 6043  2nd c2nd 6044  1c1 7644   / cdiv 8455  cn 8743  cz 9077  cq 9437   gcd cgcd 11669  numercnumer 11893  denomcdenom 11894
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 604  ax-in2 605  ax-io 699  ax-5 1424  ax-7 1425  ax-gen 1426  ax-ie1 1470  ax-ie2 1471  ax-8 1483  ax-10 1484  ax-11 1485  ax-i12 1486  ax-bndl 1487  ax-4 1488  ax-13 1492  ax-14 1493  ax-17 1507  ax-i9 1511  ax-ial 1515  ax-i5r 1516  ax-ext 2122  ax-coll 4050  ax-sep 4053  ax-nul 4061  ax-pow 4105  ax-pr 4138  ax-un 4362  ax-setind 4459  ax-iinf 4509  ax-cnex 7734  ax-resscn 7735  ax-1cn 7736  ax-1re 7737  ax-icn 7738  ax-addcl 7739  ax-addrcl 7740  ax-mulcl 7741  ax-mulrcl 7742  ax-addcom 7743  ax-mulcom 7744  ax-addass 7745  ax-mulass 7746  ax-distr 7747  ax-i2m1 7748  ax-0lt1 7749  ax-1rid 7750  ax-0id 7751  ax-rnegex 7752  ax-precex 7753  ax-cnre 7754  ax-pre-ltirr 7755  ax-pre-ltwlin 7756  ax-pre-lttrn 7757  ax-pre-apti 7758  ax-pre-ltadd 7759  ax-pre-mulgt0 7760  ax-pre-mulext 7761  ax-arch 7762  ax-caucvg 7763
This theorem depends on definitions:  df-bi 116  df-dc 821  df-3or 964  df-3an 965  df-tru 1335  df-fal 1338  df-nf 1438  df-sb 1737  df-eu 2003  df-mo 2004  df-clab 2127  df-cleq 2133  df-clel 2136  df-nfc 2271  df-ne 2310  df-nel 2405  df-ral 2422  df-rex 2423  df-reu 2424  df-rmo 2425  df-rab 2426  df-v 2691  df-sbc 2913  df-csb 3007  df-dif 3077  df-un 3079  df-in 3081  df-ss 3088  df-nul 3368  df-if 3479  df-pw 3516  df-sn 3537  df-pr 3538  df-op 3540  df-uni 3744  df-int 3779  df-iun 3822  df-br 3937  df-opab 3997  df-mpt 3998  df-tr 4034  df-id 4222  df-po 4225  df-iso 4226  df-iord 4295  df-on 4297  df-ilim 4298  df-suc 4300  df-iom 4512  df-xp 4552  df-rel 4553  df-cnv 4554  df-co 4555  df-dm 4556  df-rn 4557  df-res 4558  df-ima 4559  df-iota 5095  df-fun 5132  df-fn 5133  df-f 5134  df-f1 5135  df-fo 5136  df-f1o 5137  df-fv 5138  df-riota 5737  df-ov 5784  df-oprab 5785  df-mpo 5786  df-1st 6045  df-2nd 6046  df-recs 6209  df-frec 6295  df-sup 6878  df-pnf 7825  df-mnf 7826  df-xr 7827  df-ltxr 7828  df-le 7829  df-sub 7958  df-neg 7959  df-reap 8360  df-ap 8367  df-div 8456  df-inn 8744  df-2 8802  df-3 8803  df-4 8804  df-n0 9001  df-z 9078  df-uz 9350  df-q 9438  df-rp 9470  df-fz 9821  df-fzo 9950  df-fl 10073  df-mod 10126  df-seqfrec 10249  df-exp 10323  df-cj 10645  df-re 10646  df-im 10647  df-rsqrt 10801  df-abs 10802  df-dvds 11528  df-gcd 11670  df-numer 11895  df-denom 11896
This theorem is referenced by:  qnumdencoprm  11905  qeqnumdivden  11906  divnumden  11908  numdensq  11914
  Copyright terms: Public domain W3C validator