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 45759
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 45759. The Virtual Deduction proof is based on Mario Carneiro's revision of Norm Megill's proof of sineq0 26761. 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 26761 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 26692 . . . . 5 π ∈ ℝ
2 pipos 26696 . . . . 5 0 < π
31, 2elrpii 13045 . . . 4 π ∈ ℝ+
4 2ne0 12371 . . . . . 6 2 ≠ 0
54a1i 11 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 2 ≠ 0)
6 2cn 12340 . . . . . . 7 2 ∈ ℂ
7 2re 12339 . . . . . . . 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 11253 . . . . . 6 (𝐴 ∈ ℂ → (2 · 𝐴) ∈ ℂ)
15 ax-icn 11183 . . . . . . . . . . . . . . 15 i ∈ ℂ
1615a1i 11 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → i ∈ ℂ)
1713, 16, 11mul12d 11443 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (2 · (i · 𝐴)) = (i · (2 · 𝐴)))
1816, 11mulcld 11253 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → (i · 𝐴) ∈ ℂ)
19182timesd 12511 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (2 · (i · 𝐴)) = ((i · 𝐴) + (i · 𝐴)))
2017, 19eqtr3d 2797 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → (i · (2 · 𝐴)) = ((i · 𝐴) + (i · 𝐴)))
2120fveq2d 6882 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘(i · (2 · 𝐴))) = (exp‘((i · 𝐴) + (i · 𝐴))))
22 efadd 16180 . . . . . . . . . . . 12 (((i · 𝐴) ∈ ℂ ∧ (i · 𝐴) ∈ ℂ) → (exp‘((i · 𝐴) + (i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2318, 18, 22syl2anc 596 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + (i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2421, 23eqtrd 2795 . . . . . . . . . 10 (𝐴 ∈ ℂ → (exp‘(i · (2 · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2524adantr 486 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · (2 · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
26 sinval 16210 . . . . . . . . . . . . . . 15 (𝐴 ∈ ℂ → (sin‘𝐴) = (((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) / (2 · i)))
27 id 23 . . . . . . . . . . . . . . 15 ((sin‘𝐴) = 0 → (sin‘𝐴) = 0)
2826, 27sylan9req 2816 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) / (2 · i)) = 0)
29 efcl 16168 . . . . . . . . . . . . . . . . . 18 ((i · 𝐴) ∈ ℂ → (exp‘(i · 𝐴)) ∈ ℂ)
3018, 29syl 18 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (exp‘(i · 𝐴)) ∈ ℂ)
31 negicn 11482 . . . . . . . . . . . . . . . . . . . 20 -i ∈ ℂ
3231a1i 11 . . . . . . . . . . . . . . . . . . 19 (𝐴 ∈ ℂ → -i ∈ ℂ)
3332, 11mulcld 11253 . . . . . . . . . . . . . . . . . 18 (𝐴 ∈ ℂ → (-i · 𝐴) ∈ ℂ)
34 efcl 16168 . . . . . . . . . . . . . . . . . 18 ((-i · 𝐴) ∈ ℂ → (exp‘(-i · 𝐴)) ∈ ℂ)
3533, 34syl 18 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (exp‘(-i · 𝐴)) ∈ ℂ)
3630, 35subcld 11593 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → ((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) ∈ ℂ)
37 2mulicn 12492 . . . . . . . . . . . . . . . . 17 (2 · i) ∈ ℂ
3837a1i 11 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → (2 · i) ∈ ℂ)
39 2muline0 12493 . . . . . . . . . . . . . . . . 17 (2 · i) ≠ 0
4039a1i 11 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → (2 · i) ≠ 0)
4136, 38, 40diveq0ad 12025 . . . . . . . . . . . . . . 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 11601 . . . . . . . . . . . . . 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 7429 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(-i · 𝐴))))
48 efadd 16180 . . . . . . . . . . . . 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 2798 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = (exp‘((i · 𝐴) + (-i · 𝐴))))
5216, 32, 11adddird 11258 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → ((i + -i) · 𝐴) = ((i · 𝐴) + (-i · 𝐴)))
5315negidi 11551 . . . . . . . . . . . . . . 15 (i + -i) = 0
5453oveq1i 7423 . . . . . . . . . . . . . 14 ((i + -i) · 𝐴) = (0 · 𝐴)
5552, 54eqtr3di 2810 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → ((i · 𝐴) + (-i · 𝐴)) = (0 · 𝐴))
5611mul02d 11432 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (0 · 𝐴) = 0)
5755, 56eqtrd 2795 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → ((i · 𝐴) + (-i · 𝐴)) = 0)
5857fveq2d 6882 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + (-i · 𝐴))) = (exp‘0))
5958adantr 486 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘((i · 𝐴) + (-i · 𝐴))) = (exp‘0))
60 ef0 16177 . . . . . . . . . . 11 (exp‘0) = 1
6160a1i 11 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘0) = 1)
6251, 59, 613eqtrd 2799 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = 1)
6325, 62eqtrd 2795 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · (2 · 𝐴))) = 1)
6463fveq2d 6882 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(exp‘(i · (2 · 𝐴)))) = (abs‘1))
65 abs1 15384 . . . . . . 7 (abs‘1) = 1
6664, 65eqtrdi 2811 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(exp‘(i · (2 · 𝐴)))) = 1)
67 absefib 16286 . . . . . . . 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 15208 . . . . . . 7 ((𝐴 ∈ ℂ ∧ 2 ∈ ℝ ∧ 2 ≠ 0) → (𝐴 ∈ ℝ ↔ (2 · 𝐴) ∈ ℝ))
72714animp1 45320 . . . . . 6 ((((𝐴 ∈ ℂ ∧ 2 ∈ ℝ) ∧ 2 ≠ 0) ∧ (2 · 𝐴) ∈ ℝ) → 𝐴 ∈ ℝ)
73724an31 45321 . . . . 5 ((((2 ≠ 0 ∧ 2 ∈ ℝ) ∧ 𝐴 ∈ ℂ) ∧ (2 · 𝐴) ∈ ℝ) → 𝐴 ∈ ℝ)
745, 10, 12, 70, 73syl1111anc 854 . . . 4 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 𝐴 ∈ ℝ)
753a1i 11 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℝ+)
7674, 75modcld 13936 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) ∈ ℝ)
7776recnd 11261 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) ∈ ℂ)
7877sincld 16218 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 mod π)) ∈ ℂ)
791a1i 11 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℝ)
80 0re 11234 . . . . . . . . . . . . . . . . . . . . . 22 0 ∈ ℝ
8180, 1, 2ltleii 11357 . . . . . . . . . . . . . . . . . . . . 21 0 ≤ π
82 gt0ne0 11703 . . . . . . . . . . . . . . . . . . . . . . 23 ((π ∈ ℝ ∧ 0 < π) → π ≠ 0)
83823adant3 1150 . . . . . . . . . . . . . . . . . . . . . 22 ((π ∈ ℝ ∧ 0 < π ∧ 0 ≤ π) → π ≠ 0)
84833com23 1144 . . . . . . . . . . . . . . . . . . . . 21 ((π ∈ ℝ ∧ 0 ≤ π ∧ 0 < π) → π ≠ 0)
851, 81, 2, 84mp3an 1490 . . . . . . . . . . . . . . . . . . . 20 π ≠ 0
8685a1i 11 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ≠ 0)
8774, 79, 86redivcld 12067 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 / π) ∈ ℝ)
8887flcld 13859 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (⌊‘(𝐴 / π)) ∈ ℤ)
8988znegcld 12727 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(⌊‘(𝐴 / π)) ∈ ℤ)
90 abssinper 26758 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ -(⌊‘(𝐴 / π)) ∈ ℤ) → (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π)))) = (abs‘(sin‘𝐴)))
9190eqcomd 2766 . . . . . . . . . . . . . . . . . 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 12726 . . . . . . . . . . . . . . . . . . . . 21 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (⌊‘(𝐴 / π)) ∈ ℂ)
9695negcld 11580 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(⌊‘(𝐴 / π)) ∈ ℂ)
971recni 11247 . . . . . . . . . . . . . . . . . . . . 21 π ∈ ℂ
9897a1i 11 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℂ)
9996, 98mulcld 11253 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) ∈ ℂ)
10098, 95mulcld 11253 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (π · (⌊‘(𝐴 / π))) ∈ ℂ)
101100negcld 11580 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(π · (⌊‘(𝐴 / π))) ∈ ℂ)
10295, 98mulneg1d 11691 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) = -((⌊‘(𝐴 / π)) · π))
10395, 98mulcomd 11254 . . . . . . . . . . . . . . . . . . . . 21 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((⌊‘(𝐴 / π)) · π) = (π · (⌊‘(𝐴 / π))))
104103negeqd 11475 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -((⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))))
105102, 104eqtrd 2795 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))))
106 oveq2 7421 . . . . . . . . . . . . . . . . . . . . 21 ((-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
107106ad3antrrr 743 . . . . . . . . . . . . . . . . . . . 20 (((((-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))) ∧ -(π · (⌊‘(𝐴 / π))) ∈ ℂ) ∧ (-(⌊‘(𝐴 / π)) · π) ∈ ℂ) ∧ 𝐴 ∈ ℂ) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
1081074an4132 45322 . . . . . . . . . . . . . . . . . . 19 ((((𝐴 ∈ ℂ ∧ (-(⌊‘(𝐴 / π)) · π) ∈ ℂ) ∧ -(π · (⌊‘(𝐴 / π))) ∈ ℂ) ∧ (-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π)))) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
10912, 99, 101, 105, 108syl1111anc 854 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
11012, 100negsubd 11599 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + -(π · (⌊‘(𝐴 / π)))) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
111109, 110eqtrd 2795 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
112111fveq2d 6882 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π))) = (sin‘(𝐴 − (π · (⌊‘(𝐴 / π))))))
113112fveq2d 6882 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π)))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
11494, 113eqtrd 2795 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
115 modval 13932 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (𝐴 mod π) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
116115fveq2d 6882 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (sin‘(𝐴 mod π)) = (sin‘(𝐴 − (π · (⌊‘(𝐴 / π))))))
117116fveq2d 6882 . . . . . . . . . . . . . . . 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 2798 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 mod π))))
12127fveq2d 6882 . . . . . . . . . . . . . . 15 ((sin‘𝐴) = 0 → (abs‘(sin‘𝐴)) = (abs‘0))
122 abs0 15372 . . . . . . . . . . . . . . 15 (abs‘0) = 0
123121, 122eqtrdi 2811 . . . . . . . . . . . . . 14 ((sin‘𝐴) = 0 → (abs‘(sin‘𝐴)) = 0)
124123adantl 487 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = 0)
125120, 124eqtr3d 2797 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 mod π))) = 0)
12678, 125abs00d 15536 . . . . . . . . . . 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 11331 . . . . . . . . . . . . . . . 16 ((0 ∈ ℝ ∧ 0 < (sin‘(𝐴 mod π))) → (sin‘(𝐴 mod π)) ≠ 0)
130129neneqd 2960 . . . . . . . . . . . . . . 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 26745 . . . . . . . . . 10 ((𝐴 mod π) ∈ (0(,)π) → 0 < (sin‘(𝐴 mod π)))
137135, 136nsyl 141 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ (𝐴 mod π) ∈ (0(,)π))
13880rexri 11291 . . . . . . . . . . 11 0 ∈ ℝ*
1391rexri 11291 . . . . . . . . . . 11 π ∈ ℝ*
140 elioo2 13439 . . . . . . . . . . 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 13941 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (𝐴 mod π) < π)
148147ancoms 464 . . . . . . . . 9 ((π ∈ ℝ+𝐴 ∈ ℝ) → (𝐴 mod π) < π)
1493, 74, 148sylancr 599 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) < π)
15076, 149jca 521 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π))
151 not12an2impnot1 45391 . . . . . . 7 ((¬ (0 < (𝐴 mod π) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)) → ¬ 0 < (𝐴 mod π))
152146, 150, 151syl2anc 596 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ 0 < (𝐴 mod π))
153 modge0 13940 . . . . . . . . 9 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → 0 ≤ (𝐴 mod π))
154153ancoms 464 . . . . . . . 8 ((π ∈ ℝ+𝐴 ∈ ℝ) → 0 ≤ (𝐴 mod π))
1553, 74, 154sylancr 599 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 0 ≤ (𝐴 mod π))
156 leloe 11320 . . . . . . . . 9 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ) → (0 ≤ (𝐴 mod π) ↔ (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π))))
157156biimp3a 1498 . . . . . . . 8 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ ∧ 0 ≤ (𝐴 mod π)) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
158157idiALT 45301 . . . . . . 7 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ ∧ 0 ≤ (𝐴 mod π)) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
15980, 76, 155, 158mp3an2i 1495 . . . . . 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 2766 . . . 4 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) = 0)
165 mod0 13937 . . . . . 6 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → ((𝐴 mod π) = 0 ↔ (𝐴 / π) ∈ ℤ))
166165biimp3a 1498 . . . . 5 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+ ∧ (𝐴 mod π) = 0) → (𝐴 / π) ∈ ℤ)
1671663com12 1141 . . . 4 ((π ∈ ℝ+𝐴 ∈ ℝ ∧ (𝐴 mod π) = 0) → (𝐴 / π) ∈ ℤ)
1683, 74, 164, 167mp3an2i 1495 . . 3 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 / π) ∈ ℤ)
169168ex 418 . 2 (𝐴 ∈ ℂ → ((sin‘𝐴) = 0 → (𝐴 / π) ∈ ℤ))
17097a1i 11 . . . . . 6 (𝐴 ∈ ℂ → π ∈ ℂ)
17185a1i 11 . . . . . 6 (𝐴 ∈ ℂ → π ≠ 0)
17211, 170, 171divcan1d 12016 . . . . 5 (𝐴 ∈ ℂ → ((𝐴 / π) · π) = 𝐴)
173172fveq2d 6882 . . . 4 (𝐴 ∈ ℂ → (sin‘((𝐴 / π) · π)) = (sin‘𝐴))
174 id 23 . . . . 5 ((𝐴 / π) ∈ ℤ → (𝐴 / π) ∈ ℤ)
175 sinkpi 26759 . . . . 5 ((𝐴 / π) ∈ ℤ → (sin‘((𝐴 / π) · π)) = 0)
176174, 175syl 18 . . . 4 ((𝐴 / π) ∈ ℤ → (sin‘((𝐴 / π) · π)) = 0)
177173, 176sylan9req 2816 . . 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 2145  wne 2955   class class class wbr 5103  cfv 6533  (class class class)co 7413  cc 11122  cr 11123  0cc0 11124  1c1 11125  ici 11126   + caddc 11127   · cmul 11129  *cxr 11266   < clt 11267  cle 11268  cmin 11465  -cneg 11466   / cdiv 11895  2c2 12319  cz 12615  +crp 13042  (,)cioo 13398  cfl 13851   mod cmo 13930  abscabs 15321  expce 16147  sincsin 16149  πcpi 16152
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 7736  ax-inf2 9620  ax-cnex 11180  ax-resscn 11181  ax-1cn 11182  ax-icn 11183  ax-addcl 11184  ax-addrcl 11185  ax-mulcl 11186  ax-mulrcl 11187  ax-mulcom 11188  ax-addass 11189  ax-mulass 11190  ax-distr 11191  ax-i2m1 11192  ax-1ne0 11193  ax-1rid 11194  ax-rnegex 11195  ax-rrecex 11196  ax-cnre 11197  ax-pre-lttri 11198  ax-pre-lttrn 11199  ax-pre-ltadd 11200  ax-pre-mulgt0 11201  ax-pre-sup 11202  ax-addf 11203
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 7370  df-ov 7416  df-oprab 7417  df-mpo 7418  df-of 7678  df-om 7863  df-1st 7986  df-2nd 7987  df-supp 8159  df-frecs 8280  df-wrecs 8311  df-recs 8360  df-rdg 8399  df-1o 8455  df-2o 8456  df-er 8696  df-map 8828  df-pm 8829  df-ixp 8905  df-en 8953  df-dom 8954  df-sdom 8955  df-fin 8956  df-fsupp 9332  df-fi 9381  df-sup 9412  df-inf 9413  df-oi 9482  df-card 9944  df-pnf 11269  df-mnf 11270  df-xr 11271  df-ltxr 11272  df-le 11273  df-sub 11467  df-neg 11468  df-div 11896  df-nn 12258  df-2 12327  df-3 12328  df-4 12329  df-5 12330  df-6 12331  df-7 12332  df-8 12333  df-9 12334  df-n0 12529  df-z 12616  df-dec 12737  df-uz 12888  df-q 12998  df-rp 13043  df-xneg 13163  df-xadd 13164  df-xmul 13165  df-ioo 13402  df-ioc 13403  df-ico 13404  df-icc 13405  df-fz 13562  df-fzo 13710  df-fl 13853  df-mod 13931  df-seq 14066  df-exp 14126  df-fac 14338  df-bc 14367  df-hash 14395  df-shft 15140  df-cj 15186  df-re 15187  df-im 15188  df-sqrt 15322  df-abs 15323  df-limsup 15558  df-clim 15575  df-rlim 15576  df-sum 15774  df-ef 16153  df-sin 16155  df-cos 16156  df-pi 16158  df-struct 17239  df-sets 17256  df-slot 17274  df-ndx 17286  df-base 17302  df-ress 17323  df-plusg 17355  df-mulr 17356  df-starv 17357  df-sca 17358  df-vsca 17359  df-ip 17360  df-tset 17361  df-ple 17362  df-ds 17364  df-unif 17365  df-hom 17366  df-cco 17367  df-rest 17507  df-topn 17508  df-0g 17526  df-gsum 17527  df-topgen 17528  df-pt 17529  df-prds 17532  df-xrs 17588  df-qtop 17593  df-imas 17594  df-xps 17596  df-mre 17670  df-mrc 17671  df-acs 17673  df-mgm 18730  df-sgrp 18821  df-mnd 18837  df-submnd 18892  df-mulg 19191  df-cntz 19444  df-cmn 19909  df-psmet 21577  df-xmet 21578  df-met 21579  df-bl 21580  df-mopn 21581  df-fbas 21582  df-fg 21583  df-cnfld 21586  df-top 23119  df-topon 23136  df-topsp 23158  df-bases 23171  df-cld 23244  df-ntr 23245  df-cls 23246  df-nei 23323  df-lp 23361  df-perf 23362  df-cn 23452  df-cnp 23453  df-haus 23540  df-tx 23788  df-hmeo 23981  df-fil 24072  df-fm 24164  df-flim 24165  df-flf 24166  df-xms 24546  df-ms 24547  df-tms 24548  df-cncf 25106  df-limc 26093  df-dv 26094
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator