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

Theorem tanaddlem 15016
Description: A useful intermediate step in tanadd 15017 when showing that the addition of tangents is well-defined. (Contributed by Mario Carneiro, 4-Apr-2015.)
Assertion
Ref Expression
tanaddlem (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((cos‘(𝐴 + 𝐵)) ≠ 0 ↔ ((tan‘𝐴) · (tan‘𝐵)) ≠ 1))

Proof of Theorem tanaddlem
StepHypRef Expression
1 coscl 14977 . . . . . 6 (𝐴 ∈ ℂ → (cos‘𝐴) ∈ ℂ)
21ad2antrr 764 . . . . 5 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (cos‘𝐴) ∈ ℂ)
3 coscl 14977 . . . . . 6 (𝐵 ∈ ℂ → (cos‘𝐵) ∈ ℂ)
43ad2antlr 765 . . . . 5 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (cos‘𝐵) ∈ ℂ)
52, 4mulcld 10173 . . . 4 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((cos‘𝐴) · (cos‘𝐵)) ∈ ℂ)
6 sincl 14976 . . . . . 6 (𝐴 ∈ ℂ → (sin‘𝐴) ∈ ℂ)
76ad2antrr 764 . . . . 5 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (sin‘𝐴) ∈ ℂ)
8 sincl 14976 . . . . . 6 (𝐵 ∈ ℂ → (sin‘𝐵) ∈ ℂ)
98ad2antlr 765 . . . . 5 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (sin‘𝐵) ∈ ℂ)
107, 9mulcld 10173 . . . 4 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((sin‘𝐴) · (sin‘𝐵)) ∈ ℂ)
115, 10subeq0ad 10515 . . 3 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((((cos‘𝐴) · (cos‘𝐵)) − ((sin‘𝐴) · (sin‘𝐵))) = 0 ↔ ((cos‘𝐴) · (cos‘𝐵)) = ((sin‘𝐴) · (sin‘𝐵))))
12 cosadd 15015 . . . . 5 ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) → (cos‘(𝐴 + 𝐵)) = (((cos‘𝐴) · (cos‘𝐵)) − ((sin‘𝐴) · (sin‘𝐵))))
1312adantr 472 . . . 4 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (cos‘(𝐴 + 𝐵)) = (((cos‘𝐴) · (cos‘𝐵)) − ((sin‘𝐴) · (sin‘𝐵))))
1413eqeq1d 2726 . . 3 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((cos‘(𝐴 + 𝐵)) = 0 ↔ (((cos‘𝐴) · (cos‘𝐵)) − ((sin‘𝐴) · (sin‘𝐵))) = 0))
15 tanval 14978 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (cos‘𝐴) ≠ 0) → (tan‘𝐴) = ((sin‘𝐴) / (cos‘𝐴)))
1615ad2ant2r 800 . . . . . . 7 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (tan‘𝐴) = ((sin‘𝐴) / (cos‘𝐴)))
17 tanval 14978 . . . . . . . 8 ((𝐵 ∈ ℂ ∧ (cos‘𝐵) ≠ 0) → (tan‘𝐵) = ((sin‘𝐵) / (cos‘𝐵)))
1817ad2ant2l 799 . . . . . . 7 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (tan‘𝐵) = ((sin‘𝐵) / (cos‘𝐵)))
1916, 18oveq12d 6783 . . . . . 6 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((tan‘𝐴) · (tan‘𝐵)) = (((sin‘𝐴) / (cos‘𝐴)) · ((sin‘𝐵) / (cos‘𝐵))))
20 simprl 811 . . . . . . 7 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (cos‘𝐴) ≠ 0)
21 simprr 813 . . . . . . 7 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (cos‘𝐵) ≠ 0)
227, 2, 9, 4, 20, 21divmuldivd 10955 . . . . . 6 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (((sin‘𝐴) / (cos‘𝐴)) · ((sin‘𝐵) / (cos‘𝐵))) = (((sin‘𝐴) · (sin‘𝐵)) / ((cos‘𝐴) · (cos‘𝐵))))
2319, 22eqtrd 2758 . . . . 5 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((tan‘𝐴) · (tan‘𝐵)) = (((sin‘𝐴) · (sin‘𝐵)) / ((cos‘𝐴) · (cos‘𝐵))))
2423eqeq1d 2726 . . . 4 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (((tan‘𝐴) · (tan‘𝐵)) = 1 ↔ (((sin‘𝐴) · (sin‘𝐵)) / ((cos‘𝐴) · (cos‘𝐵))) = 1))
25 1cnd 10169 . . . . 5 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → 1 ∈ ℂ)
262, 4, 20, 21mulne0d 10792 . . . . 5 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((cos‘𝐴) · (cos‘𝐵)) ≠ 0)
2710, 5, 25, 26divmuld 10936 . . . 4 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((((sin‘𝐴) · (sin‘𝐵)) / ((cos‘𝐴) · (cos‘𝐵))) = 1 ↔ (((cos‘𝐴) · (cos‘𝐵)) · 1) = ((sin‘𝐴) · (sin‘𝐵))))
285mulid1d 10170 . . . . 5 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (((cos‘𝐴) · (cos‘𝐵)) · 1) = ((cos‘𝐴) · (cos‘𝐵)))
2928eqeq1d 2726 . . . 4 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((((cos‘𝐴) · (cos‘𝐵)) · 1) = ((sin‘𝐴) · (sin‘𝐵)) ↔ ((cos‘𝐴) · (cos‘𝐵)) = ((sin‘𝐴) · (sin‘𝐵))))
3024, 27, 293bitrd 294 . . 3 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → (((tan‘𝐴) · (tan‘𝐵)) = 1 ↔ ((cos‘𝐴) · (cos‘𝐵)) = ((sin‘𝐴) · (sin‘𝐵))))
3111, 14, 303bitr4d 300 . 2 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((cos‘(𝐴 + 𝐵)) = 0 ↔ ((tan‘𝐴) · (tan‘𝐵)) = 1))
3231necon3bid 2940 1 (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ) ∧ ((cos‘𝐴) ≠ 0 ∧ (cos‘𝐵) ≠ 0)) → ((cos‘(𝐴 + 𝐵)) ≠ 0 ↔ ((tan‘𝐴) · (tan‘𝐵)) ≠ 1))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 383   = wceq 1596  wcel 2103  wne 2896  cfv 6001  (class class class)co 6765  cc 10047  0cc0 10049  1c1 10050   + caddc 10052   · cmul 10054  cmin 10379   / cdiv 10797  sincsin 14914  cosccos 14915  tanctan 14916
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1835  ax-4 1850  ax-5 1952  ax-6 2018  ax-7 2054  ax-8 2105  ax-9 2112  ax-10 2132  ax-11 2147  ax-12 2160  ax-13 2355  ax-ext 2704  ax-rep 4879  ax-sep 4889  ax-nul 4897  ax-pow 4948  ax-pr 5011  ax-un 7066  ax-inf2 8651  ax-cnex 10105  ax-resscn 10106  ax-1cn 10107  ax-icn 10108  ax-addcl 10109  ax-addrcl 10110  ax-mulcl 10111  ax-mulrcl 10112  ax-mulcom 10113  ax-addass 10114  ax-mulass 10115  ax-distr 10116  ax-i2m1 10117  ax-1ne0 10118  ax-1rid 10119  ax-rnegex 10120  ax-rrecex 10121  ax-cnre 10122  ax-pre-lttri 10123  ax-pre-lttrn 10124  ax-pre-ltadd 10125  ax-pre-mulgt0 10126  ax-pre-sup 10127  ax-addf 10128  ax-mulf 10129
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3or 1073  df-3an 1074  df-tru 1599  df-fal 1602  df-ex 1818  df-nf 1823  df-sb 2011  df-eu 2575  df-mo 2576  df-clab 2711  df-cleq 2717  df-clel 2720  df-nfc 2855  df-ne 2897  df-nel 3000  df-ral 3019  df-rex 3020  df-reu 3021  df-rmo 3022  df-rab 3023  df-v 3306  df-sbc 3542  df-csb 3640  df-dif 3683  df-un 3685  df-in 3687  df-ss 3694  df-pss 3696  df-nul 4024  df-if 4195  df-pw 4268  df-sn 4286  df-pr 4288  df-tp 4290  df-op 4292  df-uni 4545  df-int 4584  df-iun 4630  df-br 4761  df-opab 4821  df-mpt 4838  df-tr 4861  df-id 5128  df-eprel 5133  df-po 5139  df-so 5140  df-fr 5177  df-se 5178  df-we 5179  df-xp 5224  df-rel 5225  df-cnv 5226  df-co 5227  df-dm 5228  df-rn 5229  df-res 5230  df-ima 5231  df-pred 5793  df-ord 5839  df-on 5840  df-lim 5841  df-suc 5842  df-iota 5964  df-fun 6003  df-fn 6004  df-f 6005  df-f1 6006  df-fo 6007  df-f1o 6008  df-fv 6009  df-isom 6010  df-riota 6726  df-ov 6768  df-oprab 6769  df-mpt2 6770  df-om 7183  df-1st 7285  df-2nd 7286  df-wrecs 7527  df-recs 7588  df-rdg 7626  df-1o 7680  df-oadd 7684  df-er 7862  df-pm 7977  df-en 8073  df-dom 8074  df-sdom 8075  df-fin 8076  df-sup 8464  df-inf 8465  df-oi 8531  df-card 8878  df-pnf 10189  df-mnf 10190  df-xr 10191  df-ltxr 10192  df-le 10193  df-sub 10381  df-neg 10382  df-div 10798  df-nn 11134  df-2 11192  df-3 11193  df-n0 11406  df-z 11491  df-uz 11801  df-rp 11947  df-ico 12295  df-fz 12441  df-fzo 12581  df-fl 12708  df-seq 12917  df-exp 12976  df-fac 13176  df-bc 13205  df-hash 13233  df-shft 13927  df-cj 13959  df-re 13960  df-im 13961  df-sqrt 14095  df-abs 14096  df-limsup 14322  df-clim 14339  df-rlim 14340  df-sum 14537  df-ef 14918  df-sin 14920  df-cos 14921  df-tan 14922
This theorem is referenced by:  tanadd  15017  tanregt0  24405
  Copyright terms: Public domain W3C validator