Users' Mathboxes Mathbox for Alan Sare < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  sineq0ALT Structured version   Visualization version   GIF version

Theorem sineq0ALT 46179
Description: A complex number whose sine is zero is an integer multiple of π. The Virtual Deduction form of the proof is https://us.metamath.org/other/completeusersproof/sineq0altvd.html. The Metamath form of the proof is sineq0ALT 46179. The Virtual Deduction proof is based on Mario Carneiro's revision of Norm Megill's proof of sineq0 26909. The Virtual Deduction proof is verified by automatically transforming it into the Metamath form of the proof using completeusersproof, which is verified by the Metamath program. The proof of https://us.metamath.org/other/completeusersproof/sineq0altro.html 26909 is a form of the completed proof which preserves the Virtual Deduction proof's step numbers and their ordering. (Contributed by Alan Sare, 13-Jun-2018.) (Proof modification is discouraged.) (New usage is discouraged.)
Assertion
Ref Expression
sineq0ALT (𝐴 ∈ ℂ → ((sin‘𝐴) = 0 ↔ (𝐴 / π) ∈ ℤ))

Proof of Theorem sineq0ALT
StepHypRef Expression
1 pire 26840 . . . . 5 π ∈ ℝ
2 pipos 26844 . . . . 5 0 < π
31, 2elrpii 13163 . . . 4 π ∈ ℝ+
4 2ne0 12489 . . . . . 6 2 ≠ 0
54a1i 11 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 2 ≠ 0)
6 2cn 12458 . . . . . . 7 2 ∈ ℂ
7 2re 12457 . . . . . . . 8 2 ∈ ℝ
87a1i 11 . . . . . . 7 (2 ∈ ℂ → 2 ∈ ℝ)
96, 8ax-mp 5 . . . . . 6 2 ∈ ℝ
109a1i 11 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 2 ∈ ℝ)
11 id 23 . . . . . 6 (𝐴 ∈ ℂ → 𝐴 ∈ ℂ)
1211adantr 486 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 𝐴 ∈ ℂ)
136a1i 11 . . . . . . 7 (𝐴 ∈ ℂ → 2 ∈ ℂ)
1413, 11mulcld 11368 . . . . . 6 (𝐴 ∈ ℂ → (2 · 𝐴) ∈ ℂ)
15 ax-icn 11298 . . . . . . . . . . . . . . 15 i ∈ ℂ
1615a1i 11 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → i ∈ ℂ)
1713, 16, 11mul12d 11558 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (2 · (i · 𝐴)) = (i · (2 · 𝐴)))
1816, 11mulcld 11368 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → (i · 𝐴) ∈ ℂ)
19182timesd 12629 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (2 · (i · 𝐴)) = ((i · 𝐴) + (i · 𝐴)))
2017, 19eqtr3d 2800 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → (i · (2 · 𝐴)) = ((i · 𝐴) + (i · 𝐴)))
2120fveq2d 6920 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘(i · (2 · 𝐴))) = (exp‘((i · 𝐴) + (i · 𝐴))))
22 efadd 16304 . . . . . . . . . . . 12 (((i · 𝐴) ∈ ℂ ∧ (i · 𝐴) ∈ ℂ) → (exp‘((i · 𝐴) + (i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2318, 18, 22syl2anc 596 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + (i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2421, 23eqtrd 2798 . . . . . . . . . 10 (𝐴 ∈ ℂ → (exp‘(i · (2 · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2524adantr 486 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · (2 · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
26 sinval 16334 . . . . . . . . . . . . . . 15 (𝐴 ∈ ℂ → (sin‘𝐴) = (((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) / (2 · i)))
27 id 23 . . . . . . . . . . . . . . 15 ((sin‘𝐴) = 0 → (sin‘𝐴) = 0)
2826, 27sylan9req 2819 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) / (2 · i)) = 0)
29 efcl 16292 . . . . . . . . . . . . . . . . . 18 ((i · 𝐴) ∈ ℂ → (exp‘(i · 𝐴)) ∈ ℂ)
3018, 29syl 18 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (exp‘(i · 𝐴)) ∈ ℂ)
31 negicn 11597 . . . . . . . . . . . . . . . . . . . 20 -i ∈ ℂ
3231a1i 11 . . . . . . . . . . . . . . . . . . 19 (𝐴 ∈ ℂ → -i ∈ ℂ)
3332, 11mulcld 11368 . . . . . . . . . . . . . . . . . 18 (𝐴 ∈ ℂ → ( -i · 𝐴) ∈ ℂ)
34 efcl 16292 . . . . . . . . . . . . . . . . . 18 (( -i · 𝐴) ∈ ℂ → (exp‘( -i · 𝐴)) ∈ ℂ)
3533, 34syl 18 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (exp‘( -i · 𝐴)) ∈ ℂ)
3630, 35subcld 11708 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → ((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) ∈ ℂ)
37 2mulicn 12610 . . . . . . . . . . . . . . . . 17 (2 · i) ∈ ℂ
3837a1i 11 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → (2 · i) ∈ ℂ)
39 2muline0 12611 . . . . . . . . . . . . . . . . 17 (2 · i) ≠ 0
4039a1i 11 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → (2 · i) ≠ 0)
4136, 38, 40diveq0ad 12143 . . . . . . . . . . . . . . 15 (𝐴 ∈ ℂ → ((((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) / (2 · i)) = 0 ↔ ((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) = 0))
4241adantr 486 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) / (2 · i)) = 0 ↔ ((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) = 0))
4328, 42mpbid 235 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) = 0)
4430, 35subeq0ad 11716 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → (((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) = 0 ↔ (exp‘(i · 𝐴)) = (exp‘( -i · 𝐴))))
4544adantr 486 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (((exp‘(i · 𝐴)) − (exp‘( -i · 𝐴))) = 0 ↔ (exp‘(i · 𝐴)) = (exp‘( -i · 𝐴))))
4643, 45mpbid 235 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · 𝐴)) = (exp‘( -i · 𝐴)))
4746oveq2d 7467 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘( -i · 𝐴))))
48 efadd 16304 . . . . . . . . . . . . 13 (((i · 𝐴) ∈ ℂ ∧ ( -i · 𝐴) ∈ ℂ) → (exp‘((i · 𝐴) + ( -i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘( -i · 𝐴))))
4918, 33, 48syl2anc 596 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + ( -i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘( -i · 𝐴))))
5049adantr 486 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘((i · 𝐴) + ( -i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘( -i · 𝐴))))
5147, 50eqtr4d 2801 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = (exp‘((i · 𝐴) + ( -i · 𝐴))))
5216, 32, 11adddird 11373 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → ((i + -i) · 𝐴) = ((i · 𝐴) + ( -i · 𝐴)))
5315negidi 11666 . . . . . . . . . . . . . . 15 (i + -i) = 0
5453oveq1i 7461 . . . . . . . . . . . . . 14 ((i + -i) · 𝐴) = (0 · 𝐴)
5552, 54eqtr3di 2813 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → ((i · 𝐴) + ( -i · 𝐴)) = (0 · 𝐴))
5611mul02d 11547 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (0 · 𝐴) = 0)
5755, 56eqtrd 2798 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → ((i · 𝐴) + ( -i · 𝐴)) = 0)
5857fveq2d 6920 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + ( -i · 𝐴))) = (exp‘0))
5958adantr 486 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘((i · 𝐴) + ( -i · 𝐴))) = (exp‘0))
60 ef0 16301 . . . . . . . . . . 11 (exp‘0) = 1
6160a1i 11 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘0) = 1)
6251, 59, 613eqtrd 2802 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = 1)
6325, 62eqtrd 2798 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · (2 · 𝐴))) = 1)
6463fveq2d 6920 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(exp‘(i · (2 · 𝐴)))) = (abs‘1))
65 abs1 15507 . . . . . . 7 (abs‘1) = 1
6664, 65eqtrdi 2814 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(exp‘(i · (2 · 𝐴)))) = 1)
67 absefib 16410 . . . . . . . 8 ((2 · 𝐴) ∈ ℂ → ((2 · 𝐴) ∈ ℝ ↔ (abs‘(exp‘(i · (2 · 𝐴)))) = 1))
6867biimparc 485 . . . . . . 7 (((abs‘(exp‘(i · (2 · 𝐴)))) = 1 ∧ (2 · 𝐴) ∈ ℂ) → (2 · 𝐴) ∈ ℝ)
6968ancoms 464 . . . . . 6 (((2 · 𝐴) ∈ ℂ ∧ (abs‘(exp‘(i · (2 · 𝐴)))) = 1) → (2 · 𝐴) ∈ ℝ)
7014, 66, 69syl2an2r 698 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (2 · 𝐴) ∈ ℝ)
71 mulre 15331 . . . . . . 7 ((𝐴 ∈ ℂ ∧ 2 ∈ ℝ ∧ 2 ≠ 0) → (𝐴 ∈ ℝ ↔ (2 · 𝐴) ∈ ℝ))
72714animp1 45740 . . . . . 6 ((((𝐴 ∈ ℂ ∧ 2 ∈ ℝ) ∧ 2 ≠ 0) ∧ (2 · 𝐴) ∈ ℝ) → 𝐴 ∈ ℝ)
73724an31 45741 . . . . 5 ((((2 ≠ 0 ∧ 2 ∈ ℝ) ∧ 𝐴 ∈ ℂ) ∧ (2 · 𝐴) ∈ ℝ) → 𝐴 ∈ ℝ)
745, 10, 12, 70, 73syl1111anc 854 . . . 4 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 𝐴 ∈ ℝ)
753a1i 11 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℝ+)
7674, 75modcld 14055 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) ∈ ℝ)
7776recnd 11376 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) ∈ ℂ)
7877sincld 16342 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 mod π)) ∈ ℂ)
791a1i 11 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℝ)
80 0re 11349 . . . . . . . . . . . . . . . . . . . . . 22 0 ∈ ℝ
8180, 1, 2ltleii 11472 . . . . . . . . . . . . . . . . . . . . 21 0 ≤ π
82 gt0ne0 11821 . . . . . . . . . . . . . . . . . . . . . . 23 ((π ∈ ℝ ∧ 0 < π) → π ≠ 0)
83823adant3 1150 . . . . . . . . . . . . . . . . . . . . . 22 ((π ∈ ℝ ∧ 0 < π ∧ 0 ≤ π) → π ≠ 0)
84833com23 1144 . . . . . . . . . . . . . . . . . . . . 21 ((π ∈ ℝ ∧ 0 ≤ π ∧ 0 < π) → π ≠ 0)
851, 81, 2, 84mp3an 1491 . . . . . . . . . . . . . . . . . . . 20 π ≠ 0
8685a1i 11 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ≠ 0)
8774, 79, 86redivcld 12185 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 / π) ∈ ℝ)
8887flcld 13978 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (⌊‘(𝐴 / π)) ∈ ℤ)
8988znegcld 12845 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(⌊‘(𝐴 / π)) ∈ ℤ)
90 abssinper 26906 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ -(⌊‘(𝐴 / π)) ∈ ℤ) → (abs‘(sin‘(𝐴 + ( -(⌊‘(𝐴 / π)) · π)))) = (abs‘(sin‘𝐴)))
9190eqcomd 2769 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ -(⌊‘(𝐴 / π)) ∈ ℤ) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 + ( -(⌊‘(𝐴 / π)) · π)))))
9291ex 418 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → ( -(⌊‘(𝐴 / π)) ∈ ℤ → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 + ( -(⌊‘(𝐴 / π)) · π))))))
9392adantr 486 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ( -(⌊‘(𝐴 / π)) ∈ ℤ → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 + ( -(⌊‘(𝐴 / π)) · π))))))
9489, 93mpd 16 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 + ( -(⌊‘(𝐴 / π)) · π)))))
9588zcnd 12844 . . . . . . . . . . . . . . . . . . . . 21 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (⌊‘(𝐴 / π)) ∈ ℂ)
9695negcld 11695 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(⌊‘(𝐴 / π)) ∈ ℂ)
971recni 11362 . . . . . . . . . . . . . . . . . . . . 21 π ∈ ℂ
9897a1i 11 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℂ)
9996, 98mulcld 11368 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ( -(⌊‘(𝐴 / π)) · π) ∈ ℂ)
10098, 95mulcld 11368 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (π · (⌊‘(𝐴 / π))) ∈ ℂ)
101100negcld 11695 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(π · (⌊‘(𝐴 / π))) ∈ ℂ)
10295, 98mulneg1d 11808 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ( -(⌊‘(𝐴 / π)) · π) = -((⌊‘(𝐴 / π)) · π))
10395, 98mulcomd 11369 . . . . . . . . . . . . . . . . . . . . 21 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((⌊‘(𝐴 / π)) · π) = (π · (⌊‘(𝐴 / π))))
104103negeqd 11590 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -((⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))))
105102, 104eqtrd 2798 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ( -(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))))
106 oveq2 7459 . . . . . . . . . . . . . . . . . . . . 21 (( -(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))) → (𝐴 + ( -(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
107106ad3antrrr 743 . . . . . . . . . . . . . . . . . . . 20 ((((( -(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))) ∧ -(π · (⌊‘(𝐴 / π))) ∈ ℂ) ∧ ( -(⌊‘(𝐴 / π)) · π) ∈ ℂ) ∧ 𝐴 ∈ ℂ) → (𝐴 + ( -(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
1081074an4132 45742 . . . . . . . . . . . . . . . . . . 19 ((((𝐴 ∈ ℂ ∧ ( -(⌊‘(𝐴 / π)) · π) ∈ ℂ) ∧ -(π · (⌊‘(𝐴 / π))) ∈ ℂ) ∧ ( -(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π)))) → (𝐴 + ( -(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
10912, 99, 101, 105, 108syl1111anc 854 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + ( -(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
11012, 100negsubd 11714 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + -(π · (⌊‘(𝐴 / π)))) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
111109, 110eqtrd 2798 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + ( -(⌊‘(𝐴 / π)) · π)) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
112111fveq2d 6920 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 + ( -(⌊‘(𝐴 / π)) · π))) = (sin‘(𝐴 − (π · (⌊‘(𝐴 / π))))))
113112fveq2d 6920 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 + ( -(⌊‘(𝐴 / π)) · π)))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
11494, 113eqtrd 2798 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
115 modval 14051 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (𝐴 mod π) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
116115fveq2d 6920 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (sin‘(𝐴 mod π)) = (sin‘(𝐴 − (π · (⌊‘(𝐴 / π))))))
117116fveq2d 6920 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (abs‘(sin‘(𝐴 mod π))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
1183, 117mpan2 704 . . . . . . . . . . . . . . 15 (𝐴 ∈ ℝ → (abs‘(sin‘(𝐴 mod π))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
11974, 118syl 18 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 mod π))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
120114, 119eqtr4d 2801 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 mod π))))
12127fveq2d 6920 . . . . . . . . . . . . . . 15 ((sin‘𝐴) = 0 → (abs‘(sin‘𝐴)) = (abs‘0))
122 abs0 15495 . . . . . . . . . . . . . . 15 (abs‘0) = 0
123121, 122eqtrdi 2814 . . . . . . . . . . . . . 14 ((sin‘𝐴) = 0 → (abs‘(sin‘𝐴)) = 0)
124123adantl 487 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = 0)
125120, 124eqtr3d 2800 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 mod π))) = 0)
12678, 125abs00d 15660 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 mod π)) = 0)
127 notnotb 318 . . . . . . . . . . . . 13 ((sin‘(𝐴 mod π)) = 0 ↔ ¬ ¬ (sin‘(𝐴 mod π)) = 0)
128127bicomi 227 . . . . . . . . . . . 12 (¬ ¬ (sin‘(𝐴 mod π)) = 0 ↔ (sin‘(𝐴 mod π)) = 0)
129 ltne 11446 . . . . . . . . . . . . . . . 16 ((0 ∈ ℝ ∧ 0 < (sin‘(𝐴 mod π))) → (sin‘(𝐴 mod π)) ≠ 0)
130129neneqd 2964 . . . . . . . . . . . . . . 15 ((0 ∈ ℝ ∧ 0 < (sin‘(𝐴 mod π))) → ¬ (sin‘(𝐴 mod π)) = 0)
131130expcom 419 . . . . . . . . . . . . . 14 (0 < (sin‘(𝐴 mod π)) → (0 ∈ ℝ → ¬ (sin‘(𝐴 mod π)) = 0))
13280, 131mpi 21 . . . . . . . . . . . . 13 (0 < (sin‘(𝐴 mod π)) → ¬ (sin‘(𝐴 mod π)) = 0)
133132con3i 155 . . . . . . . . . . . 12 (¬ ¬ (sin‘(𝐴 mod π)) = 0 → ¬ 0 < (sin‘(𝐴 mod π)))
134128, 133sylbir 238 . . . . . . . . . . 11 ((sin‘(𝐴 mod π)) = 0 → ¬ 0 < (sin‘(𝐴 mod π)))
135126, 134syl 18 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ 0 < (sin‘(𝐴 mod π)))
136 sinq12gt0 26893 . . . . . . . . . 10 ((𝐴 mod π) ∈ (0(,)π) → 0 < (sin‘(𝐴 mod π)))
137135, 136nsyl 141 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ (𝐴 mod π) ∈ (0(,)π))
13880rexri 11406 . . . . . . . . . . 11 0 ∈ ℝ*
1391rexri 11406 . . . . . . . . . . 11 π ∈ ℝ*
140 elioo2 13557 . . . . . . . . . . 11 ((0 ∈ ℝ* ∧ π ∈ ℝ*) → ((𝐴 mod π) ∈ (0(,)π) ↔ ((𝐴 mod π) ∈ ℝ ∧ 0 < (𝐴 mod π) ∧ (𝐴 mod π) < π)))
141138, 139, 140mp2an 705 . . . . . . . . . 10 ((𝐴 mod π) ∈ (0(,)π) ↔ ((𝐴 mod π) ∈ ℝ ∧ 0 < (𝐴 mod π) ∧ (𝐴 mod π) < π))
142141notbii 323 . . . . . . . . 9 (¬ (𝐴 mod π) ∈ (0(,)π) ↔ ¬ ((𝐴 mod π) ∈ ℝ ∧ 0 < (𝐴 mod π) ∧ (𝐴 mod π) < π))
143137, 142sylib 221 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ ((𝐴 mod π) ∈ ℝ ∧ 0 < (𝐴 mod π) ∧ (𝐴 mod π) < π))
144 3anan12 1112 . . . . . . . . 9 (((𝐴 mod π) ∈ ℝ ∧ 0 < (𝐴 mod π) ∧ (𝐴 mod π) < π) ↔ (0 < (𝐴 mod π) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)))
145144notbii 323 . . . . . . . 8 (¬ ((𝐴 mod π) ∈ ℝ ∧ 0 < (𝐴 mod π) ∧ (𝐴 mod π) < π) ↔ ¬ (0 < (𝐴 mod π) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)))
146143, 145sylib 221 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ (0 < (𝐴 mod π) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)))
147 modlt 14060 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (𝐴 mod π) < π)
148147ancoms 464 . . . . . . . . 9 ((π ∈ ℝ+ ∧ 𝐴 ∈ ℝ) → (𝐴 mod π) < π)
1493, 74, 148sylancr 599 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) < π)
15076, 149jca 521 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π))
151 not12an2impnot1 45811 . . . . . . 7 ((¬ (0 < (𝐴 mod π) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)) → ¬ 0 < (𝐴 mod π))
152146, 150, 151syl2anc 596 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ 0 < (𝐴 mod π))
153 modge0 14059 . . . . . . . . 9 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → 0 ≤ (𝐴 mod π))
154153ancoms 464 . . . . . . . 8 ((π ∈ ℝ+ ∧ 𝐴 ∈ ℝ) → 0 ≤ (𝐴 mod π))
1553, 74, 154sylancr 599 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 0 ≤ (𝐴 mod π))
156 leloe 11435 . . . . . . . . 9 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ) → (0 ≤ (𝐴 mod π) ↔ (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π))))
157156biimp3a 1499 . . . . . . . 8 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ ∧ 0 ≤ (𝐴 mod π)) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
158157idiALT 45721 . . . . . . 7 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ ∧ 0 ≤ (𝐴 mod π)) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
15980, 76, 155, 158mp3an2i 1496 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
160 pm2.53 865 . . . . . . . 8 ((0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)) → (¬ 0 < (𝐴 mod π) → 0 = (𝐴 mod π)))
161160imp 412 . . . . . . 7 (((0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)) ∧ ¬ 0 < (𝐴 mod π)) → 0 = (𝐴 mod π))
162161ancoms 464 . . . . . 6 ((¬ 0 < (𝐴 mod π) ∧ (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π))) → 0 = (𝐴 mod π))
163152, 159, 162syl2anc 596 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 0 = (𝐴 mod π))
164163eqcomd 2769 . . . 4 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) = 0)
165 mod0 14056 . . . . . 6 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → ((𝐴 mod π) = 0 ↔ (𝐴 / π) ∈ ℤ))
166165biimp3a 1499 . . . . 5 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+ ∧ (𝐴 mod π) = 0) → (𝐴 / π) ∈ ℤ)
1671663com12 1141 . . . 4 ((π ∈ ℝ+ ∧ 𝐴 ∈ ℝ ∧ (𝐴 mod π) = 0) → (𝐴 / π) ∈ ℤ)
1683, 74, 164, 167mp3an2i 1496 . . 3 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 / π) ∈ ℤ)
169168ex 418 . 2 (𝐴 ∈ ℂ → ((sin‘𝐴) = 0 → (𝐴 / π) ∈ ℤ))
17097a1i 11 . . . . . 6 (𝐴 ∈ ℂ → π ∈ ℂ)
17185a1i 11 . . . . . 6 (𝐴 ∈ ℂ → π ≠ 0)
17211, 170, 171divcan1d 12134 . . . . 5 (𝐴 ∈ ℂ → ((𝐴 / π) · π) = 𝐴)
173172fveq2d 6920 . . . 4 (𝐴 ∈ ℂ → (sin‘((𝐴 / π) · π)) = (sin‘𝐴))
174 id 23 . . . . 5 ((𝐴 / π) ∈ ℤ → (𝐴 / π) ∈ ℤ)
175 sinkpi 26907 . . . . 5 ((𝐴 / π) ∈ ℤ → (sin‘((𝐴 / π) · π)) = 0)
176174, 175syl 18 . . . 4 ((𝐴 / π) ∈ ℤ → (sin‘((𝐴 / π) · π)) = 0)
177173, 176sylan9req 2819 . . 3 ((𝐴 ∈ ℂ ∧ (𝐴 / π) ∈ ℤ) → (sin‘𝐴) = 0)
178177ex 418 . 2 (𝐴 ∈ ℂ → ((𝐴 / π) ∈ ℤ → (sin‘𝐴) = 0))
179169, 178impbid 215 1 (𝐴 ∈ ℂ → ((sin‘𝐴) = 0 ↔ (𝐴 / π) ∈ ℤ))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   ∨ wo 861   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147   ≠ wne 2959   class class class wbr 5108  ‘cfv 6566  (class class class)co 7451  ℂcc 11237  ℝcr 11238  0cc0 11239  1c1 11240  ici 11241   + caddc 11242   · cmul 11244  ℝ*cxr 11381   < clt 11382   ≤ cle 11383   − cmin 11580   -cneg 11581   / cdiv 12013  2c2 12437  ℤcz 12733  ℝ+crp 13160  (,)cioo 13516  ⌊cfl 13970   mod cmo 14049  abscabs 15444  expce 16271  sincsin 16273  πcpi 16276
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5238  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398  ax-un 7783  ax-inf2 9679  ax-cnex 11295  ax-resscn 11296  ax-1cn 11297  ax-icn 11298  ax-addcl 11299  ax-addrcl 11300  ax-mulcl 11301  ax-mulrcl 11302  ax-mulcom 11303  ax-addass 11304  ax-mulass 11305  ax-distr 11306  ax-i2m1 11307  ax-1ne0 11308  ax-1rid 11309  ax-rnegex 11310  ax-rrecex 11311  ax-cnre 11312  ax-pre-lttri 11313  ax-pre-lttrn 11314  ax-pre-ltadd 11315  ax-pre-mulgt0 11316  ax-pre-sup 11317  ax-addf 11318
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-tp 4593  df-op 4841  df-uni 4873  df-int 4913  df-iun 4958  df-iin 4959  df-br 5109  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5553  df-eprel 5558  df-po 5566  df-so 5567  df-fr 5611  df-se 5612  df-we 5613  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-pred 6330  df-ord 6391  df-on 6392  df-lim 6393  df-suc 6394  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-isom 6575  df-riota 7408  df-ov 7454  df-oprab 7455  df-mpo 7456  df-of 7725  df-om 7912  df-1st 8035  df-2nd 8036  df-supp 8215  df-frecs 8337  df-wrecs 8368  df-recs 8417  df-rdg 8456  df-1o 8514  df-2o 8515  df-er 8755  df-map 8887  df-pm 8888  df-ixp 8964  df-en 9012  df-dom 9013  df-sdom 9014  df-fin 9015  df-fsupp 9392  df-fi 9440  df-sup 9471  df-inf 9472  df-oi 9541  df-card 10057  df-pnf 11384  df-mnf 11385  df-xr 11386  df-ltxr 11387  df-le 11388  df-sub 11582  df-neg 11583  df-div 12014  df-nn 12376  df-2 12445  df-3 12446  df-4 12447  df-5 12448  df-6 12449  df-7 12450  df-8 12451  df-9 12452  df-n0 12647  df-z 12734  df-dec 12855  df-uz 13006  df-q 13116  df-rp 13161  df-xneg 13281  df-xadd 13282  df-xmul 13283  df-ioo 13520  df-ioc 13521  df-ico 13522  df-icc 13523  df-fz 13680  df-fzo 13829  df-fl 13972  df-mod 14050  df-seq 14185  df-exp 14245  df-fac 14459  df-bc 14488  df-hash 14516  df-shft 15263  df-cj 15309  df-re 15310  df-im 15311  df-sqrt 15445  df-abs 15446  df-limsup 15682  df-clim 15699  df-rlim 15700  df-sum 15898  df-ef 16277  df-sin 16279  df-cos 16280  df-pi 16282  df-struct 17369  df-sets 17386  df-slot 17404  df-ndx 17416  df-base 17432  df-ress 17453  df-plusg 17486  df-mulr 17487  df-starv 17488  df-sca 17489  df-vsca 17490  df-ip 17491  df-tset 17492  df-ple 17493  df-ds 17495  df-unif 17496  df-hom 17497  df-cco 17498  df-euf 17499  df-rest 17643  df-topn 17644  df-0g 17662  df-gsum 17663  df-topgen 17664  df-pt 17665  df-prds 17668  df-xrs 17724  df-qtop 17729  df-imas 17730  df-xps 17732  df-mre 17806  df-mrc 17807  df-acs 17809  df-mgm 18866  df-sgrp 18958  df-mnd 18974  df-submnd 19029  df-mulg 19328  df-cntz 19582  df-cmn 20047  df-psmet 21721  df-xmet 21722  df-met 21723  df-bl 21724  df-mopn 21725  df-fbas 21726  df-fg 21727  df-cnfld 21730  df-top 23267  df-topon 23284  df-topsp 23306  df-bases 23319  df-cld 23392  df-ntr 23393  df-cls 23394  df-nei 23471  df-lp 23509  df-perf 23510  df-cn 23600  df-cnp 23601  df-haus 23688  df-tx 23936  df-hmeo 24129  df-fil 24220  df-fm 24312  df-flim 24313  df-flf 24314  df-xms 24694  df-ms 24695  df-tms 24696  df-cncf 25254  df-limc 26241  df-dv 26242
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator