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 42061
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 42061. The Virtual Deduction proof is based on Mario Carneiro's revision of Norm Megill's proof of sineq0 25229. 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 25229 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 25164 . . . . 5 π ∈ ℝ
2 pipos 25166 . . . . 5 0 < π
31, 2elrpii 12446 . . . 4 π ∈ ℝ+
4 2ne0 11791 . . . . . 6 2 ≠ 0
54a1i 11 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 2 ≠ 0)
6 2cn 11762 . . . . . . 7 2 ∈ ℂ
7 2re 11761 . . . . . . . 8 2 ∈ ℝ
87a1i 11 . . . . . . 7 (2 ∈ ℂ → 2 ∈ ℝ)
96, 8ax-mp 5 . . . . . 6 2 ∈ ℝ
109a1i 11 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 2 ∈ ℝ)
11 id 22 . . . . . 6 (𝐴 ∈ ℂ → 𝐴 ∈ ℂ)
1211adantr 484 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 𝐴 ∈ ℂ)
136a1i 11 . . . . . . 7 (𝐴 ∈ ℂ → 2 ∈ ℂ)
1413, 11mulcld 10712 . . . . . 6 (𝐴 ∈ ℂ → (2 · 𝐴) ∈ ℂ)
15 ax-icn 10647 . . . . . . . . . . . . . . 15 i ∈ ℂ
1615a1i 11 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → i ∈ ℂ)
1713, 16, 11mul12d 10900 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (2 · (i · 𝐴)) = (i · (2 · 𝐴)))
1816, 11mulcld 10712 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → (i · 𝐴) ∈ ℂ)
19182timesd 11930 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (2 · (i · 𝐴)) = ((i · 𝐴) + (i · 𝐴)))
2017, 19eqtr3d 2795 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → (i · (2 · 𝐴)) = ((i · 𝐴) + (i · 𝐴)))
2120fveq2d 6667 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘(i · (2 · 𝐴))) = (exp‘((i · 𝐴) + (i · 𝐴))))
22 efadd 15508 . . . . . . . . . . . 12 (((i · 𝐴) ∈ ℂ ∧ (i · 𝐴) ∈ ℂ) → (exp‘((i · 𝐴) + (i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2318, 18, 22syl2anc 587 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + (i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2421, 23eqtrd 2793 . . . . . . . . . 10 (𝐴 ∈ ℂ → (exp‘(i · (2 · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2524adantr 484 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · (2 · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
26 sinval 15536 . . . . . . . . . . . . . . 15 (𝐴 ∈ ℂ → (sin‘𝐴) = (((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) / (2 · i)))
27 id 22 . . . . . . . . . . . . . . 15 ((sin‘𝐴) = 0 → (sin‘𝐴) = 0)
2826, 27sylan9req 2814 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) / (2 · i)) = 0)
29 efcl 15497 . . . . . . . . . . . . . . . . . 18 ((i · 𝐴) ∈ ℂ → (exp‘(i · 𝐴)) ∈ ℂ)
3018, 29syl 17 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (exp‘(i · 𝐴)) ∈ ℂ)
31 negicn 10938 . . . . . . . . . . . . . . . . . . . 20 -i ∈ ℂ
3231a1i 11 . . . . . . . . . . . . . . . . . . 19 (𝐴 ∈ ℂ → -i ∈ ℂ)
3332, 11mulcld 10712 . . . . . . . . . . . . . . . . . 18 (𝐴 ∈ ℂ → (-i · 𝐴) ∈ ℂ)
34 efcl 15497 . . . . . . . . . . . . . . . . . 18 ((-i · 𝐴) ∈ ℂ → (exp‘(-i · 𝐴)) ∈ ℂ)
3533, 34syl 17 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (exp‘(-i · 𝐴)) ∈ ℂ)
3630, 35subcld 11048 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → ((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) ∈ ℂ)
37 2mulicn 11910 . . . . . . . . . . . . . . . . 17 (2 · i) ∈ ℂ
3837a1i 11 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → (2 · i) ∈ ℂ)
39 2muline0 11911 . . . . . . . . . . . . . . . . 17 (2 · i) ≠ 0
4039a1i 11 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → (2 · i) ≠ 0)
4136, 38, 40diveq0ad 11477 . . . . . . . . . . . . . . 15 (𝐴 ∈ ℂ → ((((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) / (2 · i)) = 0 ↔ ((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) = 0))
4241adantr 484 . . . . . . . . . . . . . 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 11058 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → (((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) = 0 ↔ (exp‘(i · 𝐴)) = (exp‘(-i · 𝐴))))
4544adantr 484 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) = 0 ↔ (exp‘(i · 𝐴)) = (exp‘(-i · 𝐴))))
4643, 45mpbid 235 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · 𝐴)) = (exp‘(-i · 𝐴)))
4746oveq2d 7172 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(-i · 𝐴))))
48 efadd 15508 . . . . . . . . . . . . 13 (((i · 𝐴) ∈ ℂ ∧ (-i · 𝐴) ∈ ℂ) → (exp‘((i · 𝐴) + (-i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(-i · 𝐴))))
4918, 33, 48syl2anc 587 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + (-i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(-i · 𝐴))))
5049adantr 484 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘((i · 𝐴) + (-i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(-i · 𝐴))))
5147, 50eqtr4d 2796 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = (exp‘((i · 𝐴) + (-i · 𝐴))))
5215negidi 11006 . . . . . . . . . . . . . . 15 (i + -i) = 0
5352oveq1i 7166 . . . . . . . . . . . . . 14 ((i + -i) · 𝐴) = (0 · 𝐴)
5416, 32, 11adddird 10717 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → ((i + -i) · 𝐴) = ((i · 𝐴) + (-i · 𝐴)))
5553, 54syl5reqr 2808 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → ((i · 𝐴) + (-i · 𝐴)) = (0 · 𝐴))
5611mul02d 10889 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (0 · 𝐴) = 0)
5755, 56eqtrd 2793 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → ((i · 𝐴) + (-i · 𝐴)) = 0)
5857fveq2d 6667 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + (-i · 𝐴))) = (exp‘0))
5958adantr 484 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘((i · 𝐴) + (-i · 𝐴))) = (exp‘0))
60 ef0 15505 . . . . . . . . . . 11 (exp‘0) = 1
6160a1i 11 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘0) = 1)
6251, 59, 613eqtrd 2797 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = 1)
6325, 62eqtrd 2793 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · (2 · 𝐴))) = 1)
6463fveq2d 6667 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(exp‘(i · (2 · 𝐴)))) = (abs‘1))
65 abs1 14718 . . . . . . 7 (abs‘1) = 1
6664, 65eqtrdi 2809 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(exp‘(i · (2 · 𝐴)))) = 1)
67 absefib 15612 . . . . . . . 8 ((2 · 𝐴) ∈ ℂ → ((2 · 𝐴) ∈ ℝ ↔ (abs‘(exp‘(i · (2 · 𝐴)))) = 1))
6867biimparc 483 . . . . . . 7 (((abs‘(exp‘(i · (2 · 𝐴)))) = 1 ∧ (2 · 𝐴) ∈ ℂ) → (2 · 𝐴) ∈ ℝ)
6968ancoms 462 . . . . . 6 (((2 · 𝐴) ∈ ℂ ∧ (abs‘(exp‘(i · (2 · 𝐴)))) = 1) → (2 · 𝐴) ∈ ℝ)
7014, 66, 69syl2an2r 684 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (2 · 𝐴) ∈ ℝ)
71 mulre 14541 . . . . . . 7 ((𝐴 ∈ ℂ ∧ 2 ∈ ℝ ∧ 2 ≠ 0) → (𝐴 ∈ ℝ ↔ (2 · 𝐴) ∈ ℝ))
72714animp1 41621 . . . . . 6 ((((𝐴 ∈ ℂ ∧ 2 ∈ ℝ) ∧ 2 ≠ 0) ∧ (2 · 𝐴) ∈ ℝ) → 𝐴 ∈ ℝ)
73724an31 41622 . . . . 5 ((((2 ≠ 0 ∧ 2 ∈ ℝ) ∧ 𝐴 ∈ ℂ) ∧ (2 · 𝐴) ∈ ℝ) → 𝐴 ∈ ℝ)
745, 10, 12, 70, 73syl1111anc 838 . . . 4 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 𝐴 ∈ ℝ)
753a1i 11 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℝ+)
7674, 75modcld 13305 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) ∈ ℝ)
7776recnd 10720 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) ∈ ℂ)
7877sincld 15544 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 mod π)) ∈ ℂ)
791a1i 11 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℝ)
80 0re 10694 . . . . . . . . . . . . . . . . . . . . . 22 0 ∈ ℝ
8180, 1, 2ltleii 10814 . . . . . . . . . . . . . . . . . . . . 21 0 ≤ π
82 gt0ne0 11156 . . . . . . . . . . . . . . . . . . . . . . 23 ((π ∈ ℝ ∧ 0 < π) → π ≠ 0)
83823adant3 1129 . . . . . . . . . . . . . . . . . . . . . 22 ((π ∈ ℝ ∧ 0 < π ∧ 0 ≤ π) → π ≠ 0)
84833com23 1123 . . . . . . . . . . . . . . . . . . . . 21 ((π ∈ ℝ ∧ 0 ≤ π ∧ 0 < π) → π ≠ 0)
851, 81, 2, 84mp3an 1458 . . . . . . . . . . . . . . . . . . . 20 π ≠ 0
8685a1i 11 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ≠ 0)
8774, 79, 86redivcld 11519 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 / π) ∈ ℝ)
8887flcld 13230 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (⌊‘(𝐴 / π)) ∈ ℤ)
8988znegcld 12141 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(⌊‘(𝐴 / π)) ∈ ℤ)
90 abssinper 25226 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ -(⌊‘(𝐴 / π)) ∈ ℤ) → (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π)))) = (abs‘(sin‘𝐴)))
9190eqcomd 2764 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ -(⌊‘(𝐴 / π)) ∈ ℤ) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π)))))
9291ex 416 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (-(⌊‘(𝐴 / π)) ∈ ℤ → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π))))))
9392adantr 484 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) ∈ ℤ → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π))))))
9489, 93mpd 15 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π)))))
9588zcnd 12140 . . . . . . . . . . . . . . . . . . . . 21 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (⌊‘(𝐴 / π)) ∈ ℂ)
9695negcld 11035 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(⌊‘(𝐴 / π)) ∈ ℂ)
971recni 10706 . . . . . . . . . . . . . . . . . . . . 21 π ∈ ℂ
9897a1i 11 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℂ)
9996, 98mulcld 10712 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) ∈ ℂ)
10098, 95mulcld 10712 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (π · (⌊‘(𝐴 / π))) ∈ ℂ)
101100negcld 11035 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(π · (⌊‘(𝐴 / π))) ∈ ℂ)
10295, 98mulneg1d 11144 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) = -((⌊‘(𝐴 / π)) · π))
10395, 98mulcomd 10713 . . . . . . . . . . . . . . . . . . . . 21 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((⌊‘(𝐴 / π)) · π) = (π · (⌊‘(𝐴 / π))))
104103negeqd 10931 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -((⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))))
105102, 104eqtrd 2793 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))))
106 oveq2 7164 . . . . . . . . . . . . . . . . . . . . 21 ((-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
107106ad3antrrr 729 . . . . . . . . . . . . . . . . . . . 20 (((((-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))) ∧ -(π · (⌊‘(𝐴 / π))) ∈ ℂ) ∧ (-(⌊‘(𝐴 / π)) · π) ∈ ℂ) ∧ 𝐴 ∈ ℂ) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
1081074an4132 41623 . . . . . . . . . . . . . . . . . . 19 ((((𝐴 ∈ ℂ ∧ (-(⌊‘(𝐴 / π)) · π) ∈ ℂ) ∧ -(π · (⌊‘(𝐴 / π))) ∈ ℂ) ∧ (-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π)))) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
10912, 99, 101, 105, 108syl1111anc 838 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
11012, 100negsubd 11054 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + -(π · (⌊‘(𝐴 / π)))) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
111109, 110eqtrd 2793 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
112111fveq2d 6667 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π))) = (sin‘(𝐴 − (π · (⌊‘(𝐴 / π))))))
113112fveq2d 6667 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π)))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
11494, 113eqtrd 2793 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
115 modval 13301 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (𝐴 mod π) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
116115fveq2d 6667 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (sin‘(𝐴 mod π)) = (sin‘(𝐴 − (π · (⌊‘(𝐴 / π))))))
117116fveq2d 6667 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (abs‘(sin‘(𝐴 mod π))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
1183, 117mpan2 690 . . . . . . . . . . . . . . 15 (𝐴 ∈ ℝ → (abs‘(sin‘(𝐴 mod π))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
11974, 118syl 17 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 mod π))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
120114, 119eqtr4d 2796 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 mod π))))
12127fveq2d 6667 . . . . . . . . . . . . . . 15 ((sin‘𝐴) = 0 → (abs‘(sin‘𝐴)) = (abs‘0))
122 abs0 14706 . . . . . . . . . . . . . . 15 (abs‘0) = 0
123121, 122eqtrdi 2809 . . . . . . . . . . . . . 14 ((sin‘𝐴) = 0 → (abs‘(sin‘𝐴)) = 0)
124123adantl 485 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = 0)
125120, 124eqtr3d 2795 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 mod π))) = 0)
12678, 125abs00d 14867 . . . . . . . . . . 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 10788 . . . . . . . . . . . . . . . 16 ((0 ∈ ℝ ∧ 0 < (sin‘(𝐴 mod π))) → (sin‘(𝐴 mod π)) ≠ 0)
130129neneqd 2956 . . . . . . . . . . . . . . 15 ((0 ∈ ℝ ∧ 0 < (sin‘(𝐴 mod π))) → ¬ (sin‘(𝐴 mod π)) = 0)
131130expcom 417 . . . . . . . . . . . . . 14 (0 < (sin‘(𝐴 mod π)) → (0 ∈ ℝ → ¬ (sin‘(𝐴 mod π)) = 0))
13280, 131mpi 20 . . . . . . . . . . . . 13 (0 < (sin‘(𝐴 mod π)) → ¬ (sin‘(𝐴 mod π)) = 0)
133132con3i 157 . . . . . . . . . . . 12 (¬ ¬ (sin‘(𝐴 mod π)) = 0 → ¬ 0 < (sin‘(𝐴 mod π)))
134128, 133sylbir 238 . . . . . . . . . . 11 ((sin‘(𝐴 mod π)) = 0 → ¬ 0 < (sin‘(𝐴 mod π)))
135126, 134syl 17 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ 0 < (sin‘(𝐴 mod π)))
136 sinq12gt0 25213 . . . . . . . . . 10 ((𝐴 mod π) ∈ (0(,)π) → 0 < (sin‘(𝐴 mod π)))
137135, 136nsyl 142 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ (𝐴 mod π) ∈ (0(,)π))
13880rexri 10750 . . . . . . . . . . 11 0 ∈ ℝ*
1391rexri 10750 . . . . . . . . . . 11 π ∈ ℝ*
140 elioo2 12833 . . . . . . . . . . 11 ((0 ∈ ℝ* ∧ π ∈ ℝ*) → ((𝐴 mod π) ∈ (0(,)π) ↔ ((𝐴 mod π) ∈ ℝ ∧ 0 < (𝐴 mod π) ∧ (𝐴 mod π) < π)))
141138, 139, 140mp2an 691 . . . . . . . . . 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 1093 . . . . . . . . 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 13310 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (𝐴 mod π) < π)
148147ancoms 462 . . . . . . . . 9 ((π ∈ ℝ+𝐴 ∈ ℝ) → (𝐴 mod π) < π)
1493, 74, 148sylancr 590 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) < π)
15076, 149jca 515 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π))
151 not12an2impnot1 41692 . . . . . . 7 ((¬ (0 < (𝐴 mod π) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)) → ¬ 0 < (𝐴 mod π))
152146, 150, 151syl2anc 587 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ 0 < (𝐴 mod π))
153 modge0 13309 . . . . . . . . 9 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → 0 ≤ (𝐴 mod π))
154153ancoms 462 . . . . . . . 8 ((π ∈ ℝ+𝐴 ∈ ℝ) → 0 ≤ (𝐴 mod π))
1553, 74, 154sylancr 590 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 0 ≤ (𝐴 mod π))
156 leloe 10778 . . . . . . . . 9 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ) → (0 ≤ (𝐴 mod π) ↔ (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π))))
157156biimp3a 1466 . . . . . . . 8 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ ∧ 0 ≤ (𝐴 mod π)) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
158157idiALT 41601 . . . . . . 7 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ ∧ 0 ≤ (𝐴 mod π)) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
15980, 76, 155, 158mp3an2i 1463 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
160 pm2.53 848 . . . . . . . 8 ((0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)) → (¬ 0 < (𝐴 mod π) → 0 = (𝐴 mod π)))
161160imp 410 . . . . . . 7 (((0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)) ∧ ¬ 0 < (𝐴 mod π)) → 0 = (𝐴 mod π))
162161ancoms 462 . . . . . 6 ((¬ 0 < (𝐴 mod π) ∧ (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π))) → 0 = (𝐴 mod π))
163152, 159, 162syl2anc 587 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 0 = (𝐴 mod π))
164163eqcomd 2764 . . . 4 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) = 0)
165 mod0 13306 . . . . . 6 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → ((𝐴 mod π) = 0 ↔ (𝐴 / π) ∈ ℤ))
166165biimp3a 1466 . . . . 5 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+ ∧ (𝐴 mod π) = 0) → (𝐴 / π) ∈ ℤ)
1671663com12 1120 . . . 4 ((π ∈ ℝ+𝐴 ∈ ℝ ∧ (𝐴 mod π) = 0) → (𝐴 / π) ∈ ℤ)
1683, 74, 164, 167mp3an2i 1463 . . 3 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 / π) ∈ ℤ)
169168ex 416 . 2 (𝐴 ∈ ℂ → ((sin‘𝐴) = 0 → (𝐴 / π) ∈ ℤ))
17097a1i 11 . . . . . 6 (𝐴 ∈ ℂ → π ∈ ℂ)
17185a1i 11 . . . . . 6 (𝐴 ∈ ℂ → π ≠ 0)
17211, 170, 171divcan1d 11468 . . . . 5 (𝐴 ∈ ℂ → ((𝐴 / π) · π) = 𝐴)
173172fveq2d 6667 . . . 4 (𝐴 ∈ ℂ → (sin‘((𝐴 / π) · π)) = (sin‘𝐴))
174 id 22 . . . . 5 ((𝐴 / π) ∈ ℤ → (𝐴 / π) ∈ ℤ)
175 sinkpi 25227 . . . . 5 ((𝐴 / π) ∈ ℤ → (sin‘((𝐴 / π) · π)) = 0)
176174, 175syl 17 . . . 4 ((𝐴 / π) ∈ ℤ → (sin‘((𝐴 / π) · π)) = 0)
177173, 176sylan9req 2814 . . 3 ((𝐴 ∈ ℂ ∧ (𝐴 / π) ∈ ℤ) → (sin‘𝐴) = 0)
178177ex 416 . 2 (𝐴 ∈ ℂ → ((𝐴 / π) ∈ ℤ → (sin‘𝐴) = 0))
179169, 178impbid 215 1 (𝐴 ∈ ℂ → ((sin‘𝐴) = 0 ↔ (𝐴 / π) ∈ ℤ))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 209  wa 399  wo 844  w3a 1084   = wceq 1538  wcel 2111  wne 2951   class class class wbr 5036  cfv 6340  (class class class)co 7156  cc 10586  cr 10587  0cc0 10588  1c1 10589  ici 10590   + caddc 10591   · cmul 10593  *cxr 10725   < clt 10726  cle 10727  cmin 10921  -cneg 10922   / cdiv 11348  2c2 11742  cz 12033  +crp 12443  (,)cioo 12792  cfl 13222   mod cmo 13299  abscabs 14654  expce 15476  sincsin 15478  πcpi 15481
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2729  ax-rep 5160  ax-sep 5173  ax-nul 5180  ax-pow 5238  ax-pr 5302  ax-un 7465  ax-inf2 9150  ax-cnex 10644  ax-resscn 10645  ax-1cn 10646  ax-icn 10647  ax-addcl 10648  ax-addrcl 10649  ax-mulcl 10650  ax-mulrcl 10651  ax-mulcom 10652  ax-addass 10653  ax-mulass 10654  ax-distr 10655  ax-i2m1 10656  ax-1ne0 10657  ax-1rid 10658  ax-rnegex 10659  ax-rrecex 10660  ax-cnre 10661  ax-pre-lttri 10662  ax-pre-lttrn 10663  ax-pre-ltadd 10664  ax-pre-mulgt0 10665  ax-pre-sup 10666  ax-addf 10667  ax-mulf 10668
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-fal 1551  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2557  df-eu 2588  df-clab 2736  df-cleq 2750  df-clel 2830  df-nfc 2901  df-ne 2952  df-nel 3056  df-ral 3075  df-rex 3076  df-reu 3077  df-rmo 3078  df-rab 3079  df-v 3411  df-sbc 3699  df-csb 3808  df-dif 3863  df-un 3865  df-in 3867  df-ss 3877  df-pss 3879  df-nul 4228  df-if 4424  df-pw 4499  df-sn 4526  df-pr 4528  df-tp 4530  df-op 4532  df-uni 4802  df-int 4842  df-iun 4888  df-iin 4889  df-br 5037  df-opab 5099  df-mpt 5117  df-tr 5143  df-id 5434  df-eprel 5439  df-po 5447  df-so 5448  df-fr 5487  df-se 5488  df-we 5489  df-xp 5534  df-rel 5535  df-cnv 5536  df-co 5537  df-dm 5538  df-rn 5539  df-res 5540  df-ima 5541  df-pred 6131  df-ord 6177  df-on 6178  df-lim 6179  df-suc 6180  df-iota 6299  df-fun 6342  df-fn 6343  df-f 6344  df-f1 6345  df-fo 6346  df-f1o 6347  df-fv 6348  df-isom 6349  df-riota 7114  df-ov 7159  df-oprab 7160  df-mpo 7161  df-of 7411  df-om 7586  df-1st 7699  df-2nd 7700  df-supp 7842  df-wrecs 7963  df-recs 8024  df-rdg 8062  df-1o 8118  df-2o 8119  df-er 8305  df-map 8424  df-pm 8425  df-ixp 8493  df-en 8541  df-dom 8542  df-sdom 8543  df-fin 8544  df-fsupp 8880  df-fi 8921  df-sup 8952  df-inf 8953  df-oi 9020  df-card 9414  df-pnf 10728  df-mnf 10729  df-xr 10730  df-ltxr 10731  df-le 10732  df-sub 10923  df-neg 10924  df-div 11349  df-nn 11688  df-2 11750  df-3 11751  df-4 11752  df-5 11753  df-6 11754  df-7 11755  df-8 11756  df-9 11757  df-n0 11948  df-z 12034  df-dec 12151  df-uz 12296  df-q 12402  df-rp 12444  df-xneg 12561  df-xadd 12562  df-xmul 12563  df-ioo 12796  df-ioc 12797  df-ico 12798  df-icc 12799  df-fz 12953  df-fzo 13096  df-fl 13224  df-mod 13300  df-seq 13432  df-exp 13493  df-fac 13697  df-bc 13726  df-hash 13754  df-shft 14487  df-cj 14519  df-re 14520  df-im 14521  df-sqrt 14655  df-abs 14656  df-limsup 14889  df-clim 14906  df-rlim 14907  df-sum 15104  df-ef 15482  df-sin 15484  df-cos 15485  df-pi 15487  df-struct 16557  df-ndx 16558  df-slot 16559  df-base 16561  df-sets 16562  df-ress 16563  df-plusg 16650  df-mulr 16651  df-starv 16652  df-sca 16653  df-vsca 16654  df-ip 16655  df-tset 16656  df-ple 16657  df-ds 16659  df-unif 16660  df-hom 16661  df-cco 16662  df-rest 16768  df-topn 16769  df-0g 16787  df-gsum 16788  df-topgen 16789  df-pt 16790  df-prds 16793  df-xrs 16847  df-qtop 16852  df-imas 16853  df-xps 16855  df-mre 16929  df-mrc 16930  df-acs 16932  df-mgm 17932  df-sgrp 17981  df-mnd 17992  df-submnd 18037  df-mulg 18306  df-cntz 18528  df-cmn 18989  df-psmet 20172  df-xmet 20173  df-met 20174  df-bl 20175  df-mopn 20176  df-fbas 20177  df-fg 20178  df-cnfld 20181  df-top 21608  df-topon 21625  df-topsp 21647  df-bases 21660  df-cld 21733  df-ntr 21734  df-cls 21735  df-nei 21812  df-lp 21850  df-perf 21851  df-cn 21941  df-cnp 21942  df-haus 22029  df-tx 22276  df-hmeo 22469  df-fil 22560  df-fm 22652  df-flim 22653  df-flf 22654  df-xms 23036  df-ms 23037  df-tms 23038  df-cncf 23593  df-limc 24579  df-dv 24580
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator