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

Theorem tanatan 27137
Description: The arctangent function is an inverse to tan. (Contributed by Mario Carneiro, 2-Apr-2015.)
Assertion
Ref Expression
tanatan (𝐴 ∈ dom arctan → (tan‘(arctan‘𝐴)) = 𝐴)

Proof of Theorem tanatan
StepHypRef Expression
1 atancl 27099 . . 3 (𝐴 ∈ dom arctan → (arctan‘𝐴) ∈ ℂ)
2 2efiatan 27136 . . . . . 6 (𝐴 ∈ dom arctan → (exp‘(2 · (i · (arctan‘𝐴)))) = (((2 · i) / (𝐴 + i)) − 1))
32oveq1d 7434 . . . . 5 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) + 1) = ((((2 · i) / (𝐴 + i)) − 1) + 1))
4 2mulicn 12485 . . . . . . . 8 (2 · i) ∈ ℂ
54a1i 11 . . . . . . 7 (𝐴 ∈ dom arctan → (2 · i) ∈ ℂ)
6 atandm 27094 . . . . . . . . 9 (𝐴 ∈ dom arctan ↔ (𝐴 ∈ ℂ ∧ 𝐴 ≠ -i ∧ 𝐴 ≠ i))
76simp1bi 1163 . . . . . . . 8 (𝐴 ∈ dom arctan → 𝐴 ∈ ℂ)
8 ax-icn 11176 . . . . . . . 8 i ∈ ℂ
9 addcl 11199 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ i ∈ ℂ) → (𝐴 + i) ∈ ℂ)
107, 8, 9sylancl 598 . . . . . . 7 (𝐴 ∈ dom arctan → (𝐴 + i) ∈ ℂ)
11 subneg 11524 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ i ∈ ℂ) → (𝐴 − -i) = (𝐴 + i))
127, 8, 11sylancl 598 . . . . . . . 8 (𝐴 ∈ dom arctan → (𝐴 − -i) = (𝐴 + i))
136simp2bi 1164 . . . . . . . . 9 (𝐴 ∈ dom arctan → 𝐴 ≠ -i)
148negcli 11543 . . . . . . . . . 10 -i ∈ ℂ
15 subeq0 11501 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ -i ∈ ℂ) → ((𝐴 − -i) = 0 ↔ 𝐴 = -i))
1615necon3bid 3004 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ -i ∈ ℂ) → ((𝐴 − -i) ≠ 0 ↔ 𝐴 ≠ -i))
177, 14, 16sylancl 598 . . . . . . . . 9 (𝐴 ∈ dom arctan → ((𝐴 − -i) ≠ 0 ↔ 𝐴 ≠ -i))
1813, 17mpbird 260 . . . . . . . 8 (𝐴 ∈ dom arctan → (𝐴 − -i) ≠ 0)
1912, 18eqnetrrd 3028 . . . . . . 7 (𝐴 ∈ dom arctan → (𝐴 + i) ≠ 0)
205, 10, 19divcld 12008 . . . . . 6 (𝐴 ∈ dom arctan → ((2 · i) / (𝐴 + i)) ∈ ℂ)
21 ax-1cn 11175 . . . . . 6 1 ∈ ℂ
22 npcan 11483 . . . . . 6 ((((2 · i) / (𝐴 + i)) ∈ ℂ ∧ 1 ∈ ℂ) → ((((2 · i) / (𝐴 + i)) − 1) + 1) = ((2 · i) / (𝐴 + i)))
2320, 21, 22sylancl 598 . . . . 5 (𝐴 ∈ dom arctan → ((((2 · i) / (𝐴 + i)) − 1) + 1) = ((2 · i) / (𝐴 + i)))
243, 23eqtrd 2800 . . . 4 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) + 1) = ((2 · i) / (𝐴 + i)))
25 2muline0 12486 . . . . . 6 (2 · i) ≠ 0
2625a1i 11 . . . . 5 (𝐴 ∈ dom arctan → (2 · i) ≠ 0)
275, 10, 26, 19divne0d 12024 . . . 4 (𝐴 ∈ dom arctan → ((2 · i) / (𝐴 + i)) ≠ 0)
2824, 27eqnetrd 3027 . . 3 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) + 1) ≠ 0)
29 tanval3 16214 . . 3 (((arctan‘𝐴) ∈ ℂ ∧ ((exp‘(2 · (i · (arctan‘𝐴)))) + 1) ≠ 0) → (tan‘(arctan‘𝐴)) = (((exp‘(2 · (i · (arctan‘𝐴)))) − 1) / (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1))))
301, 28, 29syl2anc 596 . 2 (𝐴 ∈ dom arctan → (tan‘(arctan‘𝐴)) = (((exp‘(2 · (i · (arctan‘𝐴)))) − 1) / (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1))))
312oveq1d 7434 . . . . . 6 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) − 1) = ((((2 · i) / (𝐴 + i)) − 1) − 1))
3221a1i 11 . . . . . . . 8 (𝐴 ∈ dom arctan → 1 ∈ ℂ)
3320, 32, 32subsub4d 11617 . . . . . . 7 (𝐴 ∈ dom arctan → ((((2 · i) / (𝐴 + i)) − 1) − 1) = (((2 · i) / (𝐴 + i)) − (1 + 1)))
34 df-2 12320 . . . . . . . 8 2 = (1 + 1)
3534oveq2i 7430 . . . . . . 7 (((2 · i) / (𝐴 + i)) − 2) = (((2 · i) / (𝐴 + i)) − (1 + 1))
3633, 35eqtr4di 2818 . . . . . 6 (𝐴 ∈ dom arctan → ((((2 · i) / (𝐴 + i)) − 1) − 1) = (((2 · i) / (𝐴 + i)) − 2))
3731, 36eqtrd 2800 . . . . 5 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) − 1) = (((2 · i) / (𝐴 + i)) − 2))
38 2cn 12333 . . . . . . . 8 2 ∈ ℂ
39 mulcl 11201 . . . . . . . 8 ((2 ∈ ℂ ∧ (𝐴 + i) ∈ ℂ) → (2 · (𝐴 + i)) ∈ ℂ)
4038, 10, 39sylancr 599 . . . . . . 7 (𝐴 ∈ dom arctan → (2 · (𝐴 + i)) ∈ ℂ)
415, 40, 10, 19divsubdird 12047 . . . . . 6 (𝐴 ∈ dom arctan → (((2 · i) − (2 · (𝐴 + i))) / (𝐴 + i)) = (((2 · i) / (𝐴 + i)) − ((2 · (𝐴 + i)) / (𝐴 + i))))
42 mulneg12 11669 . . . . . . . . 9 ((2 ∈ ℂ ∧ 𝐴 ∈ ℂ) → (-2 · 𝐴) = (2 · -𝐴))
4338, 7, 42sylancr 599 . . . . . . . 8 (𝐴 ∈ dom arctan → (-2 · 𝐴) = (2 · -𝐴))
44 negsub 11523 . . . . . . . . . . . 12 ((i ∈ ℂ ∧ 𝐴 ∈ ℂ) → (i + -𝐴) = (i − 𝐴))
458, 7, 44sylancr 599 . . . . . . . . . . 11 (𝐴 ∈ dom arctan → (i + -𝐴) = (i − 𝐴))
4645oveq1d 7434 . . . . . . . . . 10 (𝐴 ∈ dom arctan → ((i + -𝐴) − i) = ((i − 𝐴) − i))
477negcld 11573 . . . . . . . . . . 11 (𝐴 ∈ dom arctan → -𝐴 ∈ ℂ)
48 pncan2 11481 . . . . . . . . . . 11 ((i ∈ ℂ ∧ -𝐴 ∈ ℂ) → ((i + -𝐴) − i) = -𝐴)
498, 47, 48sylancr 599 . . . . . . . . . 10 (𝐴 ∈ dom arctan → ((i + -𝐴) − i) = -𝐴)
508a1i 11 . . . . . . . . . . 11 (𝐴 ∈ dom arctan → i ∈ ℂ)
5150, 7, 50subsub4d 11617 . . . . . . . . . 10 (𝐴 ∈ dom arctan → ((i − 𝐴) − i) = (i − (𝐴 + i)))
5246, 49, 513eqtr3rd 2809 . . . . . . . . 9 (𝐴 ∈ dom arctan → (i − (𝐴 + i)) = -𝐴)
5352oveq2d 7435 . . . . . . . 8 (𝐴 ∈ dom arctan → (2 · (i − (𝐴 + i))) = (2 · -𝐴))
5438a1i 11 . . . . . . . . 9 (𝐴 ∈ dom arctan → 2 ∈ ℂ)
5554, 50, 10subdid 11687 . . . . . . . 8 (𝐴 ∈ dom arctan → (2 · (i − (𝐴 + i))) = ((2 · i) − (2 · (𝐴 + i))))
5643, 53, 553eqtr2rd 2807 . . . . . . 7 (𝐴 ∈ dom arctan → ((2 · i) − (2 · (𝐴 + i))) = (-2 · 𝐴))
5756oveq1d 7434 . . . . . 6 (𝐴 ∈ dom arctan → (((2 · i) − (2 · (𝐴 + i))) / (𝐴 + i)) = ((-2 · 𝐴) / (𝐴 + i)))
5854, 10, 19divcan4d 12014 . . . . . . 7 (𝐴 ∈ dom arctan → ((2 · (𝐴 + i)) / (𝐴 + i)) = 2)
5958oveq2d 7435 . . . . . 6 (𝐴 ∈ dom arctan → (((2 · i) / (𝐴 + i)) − ((2 · (𝐴 + i)) / (𝐴 + i))) = (((2 · i) / (𝐴 + i)) − 2))
6041, 57, 593eqtr3d 2808 . . . . 5 (𝐴 ∈ dom arctan → ((-2 · 𝐴) / (𝐴 + i)) = (((2 · i) / (𝐴 + i)) − 2))
6137, 60eqtr4d 2803 . . . 4 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) − 1) = ((-2 · 𝐴) / (𝐴 + i)))
6224oveq2d 7435 . . . . 5 (𝐴 ∈ dom arctan → (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1)) = (i · ((2 · i) / (𝐴 + i))))
638, 38, 8mul12i 11422 . . . . . . . 8 (i · (2 · i)) = (2 · (i · i))
64 ixi 11860 . . . . . . . . 9 (i · i) = -1
6564oveq2i 7430 . . . . . . . 8 (2 · (i · i)) = (2 · -1)
6621negcli 11543 . . . . . . . . 9 -1 ∈ ℂ
6738mulm1i 11676 . . . . . . . . 9 (-1 · 2) = -2
6866, 38, 67mulcomli 11235 . . . . . . . 8 (2 · -1) = -2
6963, 65, 683eqtri 2792 . . . . . . 7 (i · (2 · i)) = -2
7069oveq1i 7429 . . . . . 6 ((i · (2 · i)) / (𝐴 + i)) = (-2 / (𝐴 + i))
7150, 5, 10, 19divassd 12043 . . . . . 6 (𝐴 ∈ dom arctan → ((i · (2 · i)) / (𝐴 + i)) = (i · ((2 · i) / (𝐴 + i))))
7270, 71eqtr3id 2814 . . . . 5 (𝐴 ∈ dom arctan → (-2 / (𝐴 + i)) = (i · ((2 · i) / (𝐴 + i))))
7362, 72eqtr4d 2803 . . . 4 (𝐴 ∈ dom arctan → (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1)) = (-2 / (𝐴 + i)))
7461, 73oveq12d 7437 . . 3 (𝐴 ∈ dom arctan → (((exp‘(2 · (i · (arctan‘𝐴)))) − 1) / (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1))) = (((-2 · 𝐴) / (𝐴 + i)) / (-2 / (𝐴 + i))))
7538negcli 11543 . . . . . 6 -2 ∈ ℂ
76 mulcl 11201 . . . . . 6 ((-2 ∈ ℂ ∧ 𝐴 ∈ ℂ) → (-2 · 𝐴) ∈ ℂ)
7775, 7, 76sylancr 599 . . . . 5 (𝐴 ∈ dom arctan → (-2 · 𝐴) ∈ ℂ)
7875a1i 11 . . . . 5 (𝐴 ∈ dom arctan → -2 ∈ ℂ)
79 2ne0 12364 . . . . . . 7 2 ≠ 0
8038, 79negne0i 11550 . . . . . 6 -2 ≠ 0
8180a1i 11 . . . . 5 (𝐴 ∈ dom arctan → -2 ≠ 0)
8277, 78, 10, 81, 19divcan7d 12036 . . . 4 (𝐴 ∈ dom arctan → (((-2 · 𝐴) / (𝐴 + i)) / (-2 / (𝐴 + i))) = ((-2 · 𝐴) / -2))
837, 78, 81divcan3d 12013 . . . 4 (𝐴 ∈ dom arctan → ((-2 · 𝐴) / -2) = 𝐴)
8482, 83eqtrd 2800 . . 3 (𝐴 ∈ dom arctan → (((-2 · 𝐴) / (𝐴 + i)) / (-2 / (𝐴 + i))) = 𝐴)
8574, 84eqtrd 2800 . 2 (𝐴 ∈ dom arctan → (((exp‘(2 · (i · (arctan‘𝐴)))) − 1) / (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1))) = 𝐴)
8630, 85eqtrd 2800 1 (𝐴 ∈ dom arctan → (tan‘(arctan‘𝐴)) = 𝐴)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401   = wceq 1570  wcel 2146  wne 2960  dom cdm 5663  cfv 6540  (class class class)co 7419  cc 11115  0cc0 11117  1c1 11118  ici 11119   + caddc 11120   · cmul 11122  cmin 11458  -cneg 11459   / cdiv 11888  2c2 12312  expce 16139  tanctan 16143  arctancatan 27082
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pow 5338  ax-pr 5406  ax-un 7742  ax-inf2 9617  ax-cnex 11173  ax-resscn 11174  ax-1cn 11175  ax-icn 11176  ax-addcl 11177  ax-addrcl 11178  ax-mulcl 11179  ax-mulrcl 11180  ax-mulcom 11181  ax-addass 11182  ax-mulass 11183  ax-distr 11184  ax-i2m1 11185  ax-1ne0 11186  ax-1rid 11187  ax-rnegex 11188  ax-rrecex 11189  ax-cnre 11190  ax-pre-lttri 11191  ax-pre-lttrn 11192  ax-pre-ltadd 11193  ax-pre-mulgt0 11194  ax-pre-sup 11195  ax-addf 11196
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-nel 3067  df-ral 3082  df-rex 3092  df-rmo 3371  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-tp 4596  df-op 4598  df-uni 4875  df-int 4915  df-iun 4960  df-iin 4961  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-se 5617  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-pred 6306  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-isom 6549  df-riota 7376  df-ov 7422  df-oprab 7423  df-mpo 7424  df-of 7684  df-om 7869  df-1st 7992  df-2nd 7993  df-supp 8163  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-1o 8459  df-2o 8460  df-er 8700  df-map 8832  df-pm 8833  df-ixp 8902  df-en 8950  df-dom 8951  df-sdom 8952  df-fin 8953  df-fsupp 9329  df-fi 9378  df-sup 9409  df-inf 9410  df-oi 9479  df-card 9941  df-pnf 11262  df-mnf 11263  df-xr 11264  df-ltxr 11265  df-le 11266  df-sub 11460  df-neg 11461  df-div 11889  df-nn 12251  df-2 12320  df-3 12321  df-4 12322  df-5 12323  df-6 12324  df-7 12325  df-8 12326  df-9 12327  df-n0 12522  df-z 12609  df-dec 12730  df-uz 12881  df-q 12991  df-rp 13035  df-xneg 13155  df-xadd 13156  df-xmul 13157  df-ioo 13394  df-ioc 13395  df-ico 13396  df-icc 13397  df-fz 13554  df-fzo 13702  df-fl 13845  df-mod 13923  df-seq 14058  df-exp 14118  df-fac 14330  df-bc 14359  df-hash 14387  df-shft 15130  df-cj 15176  df-re 15177  df-im 15178  df-sqrt 15312  df-abs 15313  df-limsup 15548  df-clim 15565  df-rlim 15566  df-sum 15764  df-ef 16145  df-sin 16147  df-cos 16148  df-tan 16149  df-pi 16150  df-struct 17231  df-sets 17248  df-slot 17266  df-ndx 17278  df-base 17294  df-ress 17315  df-plusg 17347  df-mulr 17348  df-starv 17349  df-sca 17350  df-vsca 17351  df-ip 17352  df-tset 17353  df-ple 17354  df-ds 17356  df-unif 17357  df-hom 17358  df-cco 17359  df-rest 17499  df-topn 17500  df-0g 17518  df-gsum 17519  df-topgen 17520  df-pt 17521  df-prds 17524  df-xrs 17580  df-qtop 17585  df-imas 17586  df-xps 17588  df-mre 17662  df-mrc 17663  df-acs 17665  df-mgm 18722  df-sgrp 18811  df-mnd 18827  df-submnd 18881  df-mulg 19180  df-cntz 19433  df-cmn 19898  df-psmet 21566  df-xmet 21567  df-met 21568  df-bl 21569  df-mopn 21570  df-fbas 21571  df-fg 21572  df-cnfld 21575  df-top 23103  df-topon 23120  df-topsp 23142  df-bases 23155  df-cld 23228  df-ntr 23229  df-cls 23230  df-nei 23307  df-lp 23345  df-perf 23346  df-cn 23436  df-cnp 23437  df-haus 23524  df-tx 23772  df-hmeo 23965  df-fil 24056  df-fm 24148  df-flim 24149  df-flf 24150  df-xms 24530  df-ms 24531  df-tms 24532  df-cncf 25090  df-limc 26078  df-dv 26079  df-log 26774  df-atan 27085
This theorem is used by:  atantanb  27142  atanord  27145
  Copyright terms: Public domain W3C validator