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

Theorem tanatan 27159
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 27121 . . 3 (𝐴 ∈ dom arctan → (arctan‘𝐴) ∈ ℂ)
2 2efiatan 27158 . . . . . 6 (𝐴 ∈ dom arctan → (exp‘(2 · (i · (arctan‘𝐴)))) = (((2 · i) / (𝐴 + i)) − 1))
32oveq1d 7429 . . . . 5 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) + 1) = ((((2 · i) / (𝐴 + i)) − 1) + 1))
4 2mulicn 12495 . . . . . . . 8 (2 · i) ∈ ℂ
54a1i 11 . . . . . . 7 (𝐴 ∈ dom arctan → (2 · i) ∈ ℂ)
6 atandm 27116 . . . . . . . . 9 (𝐴 ∈ dom arctan ↔ (𝐴 ∈ ℂ ∧ 𝐴 ≠ -i ∧ 𝐴 ≠ i))
76simp1bi 1163 . . . . . . . 8 (𝐴 ∈ dom arctan → 𝐴 ∈ ℂ)
8 ax-icn 11186 . . . . . . . 8 i ∈ ℂ
9 addcl 11209 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ i ∈ ℂ) → (𝐴 + i) ∈ ℂ)
107, 8, 9sylancl 598 . . . . . . 7 (𝐴 ∈ dom arctan → (𝐴 + i) ∈ ℂ)
11 subneg 11534 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ i ∈ ℂ) → (𝐴 − -i) = (𝐴 + i))
127, 8, 11sylancl 598 . . . . . . . 8 (𝐴 ∈ dom arctan → (𝐴 − -i) = (𝐴 + i))
136simp2bi 1164 . . . . . . . . 9 (𝐴 ∈ dom arctan → 𝐴 ≠ -i)
148negcli 11553 . . . . . . . . . 10 -i ∈ ℂ
15 subeq0 11511 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ -i ∈ ℂ) → ((𝐴 − -i) = 0 ↔ 𝐴 = -i))
1615necon3bid 2999 . . . . . . . . . 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 3023 . . . . . . 7 (𝐴 ∈ dom arctan → (𝐴 + i) ≠ 0)
205, 10, 19divcld 12018 . . . . . 6 (𝐴 ∈ dom arctan → ((2 · i) / (𝐴 + i)) ∈ ℂ)
21 ax-1cn 11185 . . . . . 6 1 ∈ ℂ
22 npcan 11493 . . . . . 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 2795 . . . 4 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) + 1) = ((2 · i) / (𝐴 + i)))
25 2muline0 12496 . . . . . 6 (2 · i) ≠ 0
2625a1i 11 . . . . 5 (𝐴 ∈ dom arctan → (2 · i) ≠ 0)
275, 10, 26, 19divne0d 12034 . . . 4 (𝐴 ∈ dom arctan → ((2 · i) / (𝐴 + i)) ≠ 0)
2824, 27eqnetrd 3022 . . 3 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) + 1) ≠ 0)
29 tanval3 16225 . . 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 7429 . . . . . 6 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) − 1) = ((((2 · i) / (𝐴 + i)) − 1) − 1))
3221a1i 11 . . . . . . . 8 (𝐴 ∈ dom arctan → 1 ∈ ℂ)
3320, 32, 32subsub4d 11627 . . . . . . 7 (𝐴 ∈ dom arctan → ((((2 · i) / (𝐴 + i)) − 1) − 1) = (((2 · i) / (𝐴 + i)) − (1 + 1)))
34 df-2 12330 . . . . . . . 8 2 = (1 + 1)
3534oveq2i 7425 . . . . . . 7 (((2 · i) / (𝐴 + i)) − 2) = (((2 · i) / (𝐴 + i)) − (1 + 1))
3633, 35eqtr4di 2813 . . . . . 6 (𝐴 ∈ dom arctan → ((((2 · i) / (𝐴 + i)) − 1) − 1) = (((2 · i) / (𝐴 + i)) − 2))
3731, 36eqtrd 2795 . . . . 5 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) − 1) = (((2 · i) / (𝐴 + i)) − 2))
38 2cn 12343 . . . . . . . 8 2 ∈ ℂ
39 mulcl 11211 . . . . . . . 8 ((2 ∈ ℂ ∧ (𝐴 + i) ∈ ℂ) → (2 · (𝐴 + i)) ∈ ℂ)
4038, 10, 39sylancr 599 . . . . . . 7 (𝐴 ∈ dom arctan → (2 · (𝐴 + i)) ∈ ℂ)
415, 40, 10, 19divsubdird 12057 . . . . . 6 (𝐴 ∈ dom arctan → (((2 · i) − (2 · (𝐴 + i))) / (𝐴 + i)) = (((2 · i) / (𝐴 + i)) − ((2 · (𝐴 + i)) / (𝐴 + i))))
42 mulneg12 11679 . . . . . . . . 9 ((2 ∈ ℂ ∧ 𝐴 ∈ ℂ) → (-2 · 𝐴) = (2 · -𝐴))
4338, 7, 42sylancr 599 . . . . . . . 8 (𝐴 ∈ dom arctan → (-2 · 𝐴) = (2 · -𝐴))
44 negsub 11533 . . . . . . . . . . . 12 ((i ∈ ℂ ∧ 𝐴 ∈ ℂ) → (i + -𝐴) = (i − 𝐴))
458, 7, 44sylancr 599 . . . . . . . . . . 11 (𝐴 ∈ dom arctan → (i + -𝐴) = (i − 𝐴))
4645oveq1d 7429 . . . . . . . . . 10 (𝐴 ∈ dom arctan → ((i + -𝐴) − i) = ((i − 𝐴) − i))
477negcld 11583 . . . . . . . . . . 11 (𝐴 ∈ dom arctan → -𝐴 ∈ ℂ)
48 pncan2 11491 . . . . . . . . . . 11 ((i ∈ ℂ ∧ -𝐴 ∈ ℂ) → ((i + -𝐴) − i) = -𝐴)
498, 47, 48sylancr 599 . . . . . . . . . 10 (𝐴 ∈ dom arctan → ((i + -𝐴) − i) = -𝐴)
508a1i 11 . . . . . . . . . . 11 (𝐴 ∈ dom arctan → i ∈ ℂ)
5150, 7, 50subsub4d 11627 . . . . . . . . . 10 (𝐴 ∈ dom arctan → ((i − 𝐴) − i) = (i − (𝐴 + i)))
5246, 49, 513eqtr3rd 2804 . . . . . . . . 9 (𝐴 ∈ dom arctan → (i − (𝐴 + i)) = -𝐴)
5352oveq2d 7430 . . . . . . . 8 (𝐴 ∈ dom arctan → (2 · (i − (𝐴 + i))) = (2 · -𝐴))
5438a1i 11 . . . . . . . . 9 (𝐴 ∈ dom arctan → 2 ∈ ℂ)
5554, 50, 10subdid 11697 . . . . . . . 8 (𝐴 ∈ dom arctan → (2 · (i − (𝐴 + i))) = ((2 · i) − (2 · (𝐴 + i))))
5643, 53, 553eqtr2rd 2802 . . . . . . 7 (𝐴 ∈ dom arctan → ((2 · i) − (2 · (𝐴 + i))) = (-2 · 𝐴))
5756oveq1d 7429 . . . . . 6 (𝐴 ∈ dom arctan → (((2 · i) − (2 · (𝐴 + i))) / (𝐴 + i)) = ((-2 · 𝐴) / (𝐴 + i)))
5854, 10, 19divcan4d 12024 . . . . . . 7 (𝐴 ∈ dom arctan → ((2 · (𝐴 + i)) / (𝐴 + i)) = 2)
5958oveq2d 7430 . . . . . 6 (𝐴 ∈ dom arctan → (((2 · i) / (𝐴 + i)) − ((2 · (𝐴 + i)) / (𝐴 + i))) = (((2 · i) / (𝐴 + i)) − 2))
6041, 57, 593eqtr3d 2803 . . . . 5 (𝐴 ∈ dom arctan → ((-2 · 𝐴) / (𝐴 + i)) = (((2 · i) / (𝐴 + i)) − 2))
6137, 60eqtr4d 2798 . . . 4 (𝐴 ∈ dom arctan → ((exp‘(2 · (i · (arctan‘𝐴)))) − 1) = ((-2 · 𝐴) / (𝐴 + i)))
6224oveq2d 7430 . . . . 5 (𝐴 ∈ dom arctan → (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1)) = (i · ((2 · i) / (𝐴 + i))))
638, 38, 8mul12i 11432 . . . . . . . 8 (i · (2 · i)) = (2 · (i · i))
64 ixi 11870 . . . . . . . . 9 (i · i) = -1
6564oveq2i 7425 . . . . . . . 8 (2 · (i · i)) = (2 · -1)
6621negcli 11553 . . . . . . . . 9 -1 ∈ ℂ
6738mulm1i 11686 . . . . . . . . 9 (-1 · 2) = -2
6866, 38, 67mulcomli 11245 . . . . . . . 8 (2 · -1) = -2
6963, 65, 683eqtri 2787 . . . . . . 7 (i · (2 · i)) = -2
7069oveq1i 7424 . . . . . 6 ((i · (2 · i)) / (𝐴 + i)) = (-2 / (𝐴 + i))
7150, 5, 10, 19divassd 12053 . . . . . 6 (𝐴 ∈ dom arctan → ((i · (2 · i)) / (𝐴 + i)) = (i · ((2 · i) / (𝐴 + i))))
7270, 71eqtr3id 2809 . . . . 5 (𝐴 ∈ dom arctan → (-2 / (𝐴 + i)) = (i · ((2 · i) / (𝐴 + i))))
7362, 72eqtr4d 2798 . . . 4 (𝐴 ∈ dom arctan → (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1)) = (-2 / (𝐴 + i)))
7461, 73oveq12d 7432 . . 3 (𝐴 ∈ dom arctan → (((exp‘(2 · (i · (arctan‘𝐴)))) − 1) / (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1))) = (((-2 · 𝐴) / (𝐴 + i)) / (-2 / (𝐴 + i))))
7538negcli 11553 . . . . . 6 -2 ∈ ℂ
76 mulcl 11211 . . . . . 6 ((-2 ∈ ℂ ∧ 𝐴 ∈ ℂ) → (-2 · 𝐴) ∈ ℂ)
7775, 7, 76sylancr 599 . . . . 5 (𝐴 ∈ dom arctan → (-2 · 𝐴) ∈ ℂ)
7875a1i 11 . . . . 5 (𝐴 ∈ dom arctan → -2 ∈ ℂ)
79 2ne0 12374 . . . . . . 7 2 ≠ 0
8038, 79negne0i 11560 . . . . . 6 -2 ≠ 0
8180a1i 11 . . . . 5 (𝐴 ∈ dom arctan → -2 ≠ 0)
8277, 78, 10, 81, 19divcan7d 12046 . . . 4 (𝐴 ∈ dom arctan → (((-2 · 𝐴) / (𝐴 + i)) / (-2 / (𝐴 + i))) = ((-2 · 𝐴) / -2))
837, 78, 81divcan3d 12023 . . . 4 (𝐴 ∈ dom arctan → ((-2 · 𝐴) / -2) = 𝐴)
8482, 83eqtrd 2795 . . 3 (𝐴 ∈ dom arctan → (((-2 · 𝐴) / (𝐴 + i)) / (-2 / (𝐴 + i))) = 𝐴)
8574, 84eqtrd 2795 . 2 (𝐴 ∈ dom arctan → (((exp‘(2 · (i · (arctan‘𝐴)))) − 1) / (i · ((exp‘(2 · (i · (arctan‘𝐴)))) + 1))) = 𝐴)
8630, 85eqtrd 2795 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 2145  wne 2955  dom cdm 5655  cfv 6533  (class class class)co 7414  cc 11125  0cc0 11127  1c1 11128  ici 11129   + caddc 11130   · cmul 11132  cmin 11468  -cneg 11469   / cdiv 11898  2c2 12322  expce 16150  tanctan 16154  arctancatan 27104
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5232  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7737  ax-inf2 9623  ax-cnex 11183  ax-resscn 11184  ax-1cn 11185  ax-icn 11186  ax-addcl 11187  ax-addrcl 11188  ax-mulcl 11189  ax-mulrcl 11190  ax-mulcom 11191  ax-addass 11192  ax-mulass 11193  ax-distr 11194  ax-i2m1 11195  ax-1ne0 11196  ax-1rid 11197  ax-rnegex 11198  ax-rrecex 11199  ax-cnre 11200  ax-pre-lttri 11201  ax-pre-lttrn 11202  ax-pre-ltadd 11203  ax-pre-mulgt0 11204  ax-pre-sup 11205  ax-addf 11206
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 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-tp 4589  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-iin 4954  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-se 5609  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6299  df-ord 6360  df-on 6361  df-lim 6362  df-suc 6363  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-isom 6542  df-riota 7371  df-ov 7417  df-oprab 7418  df-mpo 7419  df-of 7679  df-om 7864  df-1st 7987  df-2nd 7988  df-supp 8160  df-frecs 8281  df-wrecs 8312  df-recs 8361  df-rdg 8400  df-1o 8458  df-2o 8459  df-er 8699  df-map 8831  df-pm 8832  df-ixp 8908  df-en 8956  df-dom 8957  df-sdom 8958  df-fin 8959  df-fsupp 9335  df-fi 9384  df-sup 9415  df-inf 9416  df-oi 9485  df-card 9947  df-pnf 11272  df-mnf 11273  df-xr 11274  df-ltxr 11275  df-le 11276  df-sub 11470  df-neg 11471  df-div 11899  df-nn 12261  df-2 12330  df-3 12331  df-4 12332  df-5 12333  df-6 12334  df-7 12335  df-8 12336  df-9 12337  df-n0 12532  df-z 12619  df-dec 12740  df-uz 12891  df-q 13001  df-rp 13046  df-xneg 13166  df-xadd 13167  df-xmul 13168  df-ioo 13405  df-ioc 13406  df-ico 13407  df-icc 13408  df-fz 13565  df-fzo 13713  df-fl 13856  df-mod 13934  df-seq 14069  df-exp 14129  df-fac 14341  df-bc 14370  df-hash 14398  df-shft 15143  df-cj 15189  df-re 15190  df-im 15191  df-sqrt 15325  df-abs 15326  df-limsup 15561  df-clim 15578  df-rlim 15579  df-sum 15777  df-ef 16156  df-sin 16158  df-cos 16159  df-tan 16160  df-pi 16161  df-struct 17242  df-sets 17259  df-slot 17277  df-ndx 17289  df-base 17305  df-ress 17326  df-plusg 17358  df-mulr 17359  df-starv 17360  df-sca 17361  df-vsca 17362  df-ip 17363  df-tset 17364  df-ple 17365  df-ds 17367  df-unif 17368  df-hom 17369  df-cco 17370  df-rest 17510  df-topn 17511  df-0g 17529  df-gsum 17530  df-topgen 17531  df-pt 17532  df-prds 17535  df-xrs 17591  df-qtop 17596  df-imas 17597  df-xps 17599  df-mre 17673  df-mrc 17674  df-acs 17676  df-mgm 18733  df-sgrp 18824  df-mnd 18840  df-submnd 18895  df-mulg 19194  df-cntz 19447  df-cmn 19912  df-psmet 21580  df-xmet 21581  df-met 21582  df-bl 21583  df-mopn 21584  df-fbas 21585  df-fg 21586  df-cnfld 21589  df-top 23122  df-topon 23139  df-topsp 23161  df-bases 23174  df-cld 23247  df-ntr 23248  df-cls 23249  df-nei 23326  df-lp 23364  df-perf 23365  df-cn 23455  df-cnp 23456  df-haus 23543  df-tx 23791  df-hmeo 23984  df-fil 24075  df-fm 24167  df-flim 24168  df-flf 24169  df-xms 24549  df-ms 24550  df-tms 24551  df-cncf 25109  df-limc 26096  df-dv 26097  df-log 26796  df-atan 27107
This theorem is used by:  atantanb  27164  atanord  27167
  Copyright terms: Public domain W3C validator