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 45703
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 45703. The Virtual Deduction proof is based on Mario Carneiro's revision of Norm Megill's proof of sineq0 26740. 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 26740 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 26670 . . . . 5 π ∈ ℝ
2 pipos 26674 . . . . 5 0 < π
31, 2elrpii 13035 . . . 4 π ∈ ℝ+
4 2ne0 12362 . . . . . 6 2 ≠ 0
54a1i 11 . . . . 5 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 2 ≠ 0)
6 2cn 12331 . . . . . . 7 2 ∈ ℂ
7 2re 12330 . . . . . . . 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 11244 . . . . . 6 (𝐴 ∈ ℂ → (2 · 𝐴) ∈ ℂ)
15 ax-icn 11174 . . . . . . . . . . . . . . 15 i ∈ ℂ
1615a1i 11 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → i ∈ ℂ)
1713, 16, 11mul12d 11434 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (2 · (i · 𝐴)) = (i · (2 · 𝐴)))
1816, 11mulcld 11244 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → (i · 𝐴) ∈ ℂ)
19182timesd 12502 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (2 · (i · 𝐴)) = ((i · 𝐴) + (i · 𝐴)))
2017, 19eqtr3d 2802 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → (i · (2 · 𝐴)) = ((i · 𝐴) + (i · 𝐴)))
2120fveq2d 6889 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘(i · (2 · 𝐴))) = (exp‘((i · 𝐴) + (i · 𝐴))))
22 efadd 16170 . . . . . . . . . . . 12 (((i · 𝐴) ∈ ℂ ∧ (i · 𝐴) ∈ ℂ) → (exp‘((i · 𝐴) + (i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2318, 18, 22syl2anc 596 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + (i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2421, 23eqtrd 2800 . . . . . . . . . 10 (𝐴 ∈ ℂ → (exp‘(i · (2 · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
2524adantr 486 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · (2 · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))))
26 sinval 16200 . . . . . . . . . . . . . . 15 (𝐴 ∈ ℂ → (sin‘𝐴) = (((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) / (2 · i)))
27 id 23 . . . . . . . . . . . . . . 15 ((sin‘𝐴) = 0 → (sin‘𝐴) = 0)
2826, 27sylan9req 2821 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) / (2 · i)) = 0)
29 efcl 16158 . . . . . . . . . . . . . . . . . 18 ((i · 𝐴) ∈ ℂ → (exp‘(i · 𝐴)) ∈ ℂ)
3018, 29syl 18 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (exp‘(i · 𝐴)) ∈ ℂ)
31 negicn 11473 . . . . . . . . . . . . . . . . . . . 20 -i ∈ ℂ
3231a1i 11 . . . . . . . . . . . . . . . . . . 19 (𝐴 ∈ ℂ → -i ∈ ℂ)
3332, 11mulcld 11244 . . . . . . . . . . . . . . . . . 18 (𝐴 ∈ ℂ → (-i · 𝐴) ∈ ℂ)
34 efcl 16158 . . . . . . . . . . . . . . . . . 18 ((-i · 𝐴) ∈ ℂ → (exp‘(-i · 𝐴)) ∈ ℂ)
3533, 34syl 18 . . . . . . . . . . . . . . . . 17 (𝐴 ∈ ℂ → (exp‘(-i · 𝐴)) ∈ ℂ)
3630, 35subcld 11584 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → ((exp‘(i · 𝐴)) − (exp‘(-i · 𝐴))) ∈ ℂ)
37 2mulicn 12483 . . . . . . . . . . . . . . . . 17 (2 · i) ∈ ℂ
3837a1i 11 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → (2 · i) ∈ ℂ)
39 2muline0 12484 . . . . . . . . . . . . . . . . 17 (2 · i) ≠ 0
4039a1i 11 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℂ → (2 · i) ≠ 0)
4136, 38, 40diveq0ad 12016 . . . . . . . . . . . . . . 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 11594 . . . . . . . . . . . . . 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 7435 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = ((exp‘(i · 𝐴)) · (exp‘(-i · 𝐴))))
48 efadd 16170 . . . . . . . . . . . . 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 2803 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = (exp‘((i · 𝐴) + (-i · 𝐴))))
5216, 32, 11adddird 11249 . . . . . . . . . . . . . 14 (𝐴 ∈ ℂ → ((i + -i) · 𝐴) = ((i · 𝐴) + (-i · 𝐴)))
5315negidi 11542 . . . . . . . . . . . . . . 15 (i + -i) = 0
5453oveq1i 7429 . . . . . . . . . . . . . 14 ((i + -i) · 𝐴) = (0 · 𝐴)
5552, 54eqtr3di 2815 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → ((i · 𝐴) + (-i · 𝐴)) = (0 · 𝐴))
5611mul02d 11423 . . . . . . . . . . . . 13 (𝐴 ∈ ℂ → (0 · 𝐴) = 0)
5755, 56eqtrd 2800 . . . . . . . . . . . 12 (𝐴 ∈ ℂ → ((i · 𝐴) + (-i · 𝐴)) = 0)
5857fveq2d 6889 . . . . . . . . . . 11 (𝐴 ∈ ℂ → (exp‘((i · 𝐴) + (-i · 𝐴))) = (exp‘0))
5958adantr 486 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘((i · 𝐴) + (-i · 𝐴))) = (exp‘0))
60 ef0 16167 . . . . . . . . . . 11 (exp‘0) = 1
6160a1i 11 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘0) = 1)
6251, 59, 613eqtrd 2804 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((exp‘(i · 𝐴)) · (exp‘(i · 𝐴))) = 1)
6325, 62eqtrd 2800 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (exp‘(i · (2 · 𝐴))) = 1)
6463fveq2d 6889 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(exp‘(i · (2 · 𝐴)))) = (abs‘1))
65 abs1 15372 . . . . . . 7 (abs‘1) = 1
6664, 65eqtrdi 2816 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(exp‘(i · (2 · 𝐴)))) = 1)
67 absefib 16276 . . . . . . . 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 15196 . . . . . . 7 ((𝐴 ∈ ℂ ∧ 2 ∈ ℝ ∧ 2 ≠ 0) → (𝐴 ∈ ℝ ↔ (2 · 𝐴) ∈ ℝ))
72714animp1 45264 . . . . . 6 ((((𝐴 ∈ ℂ ∧ 2 ∈ ℝ) ∧ 2 ≠ 0) ∧ (2 · 𝐴) ∈ ℝ) → 𝐴 ∈ ℝ)
73724an31 45265 . . . . 5 ((((2 ≠ 0 ∧ 2 ∈ ℝ) ∧ 𝐴 ∈ ℂ) ∧ (2 · 𝐴) ∈ ℝ) → 𝐴 ∈ ℝ)
745, 10, 12, 70, 73syl1111anc 854 . . . 4 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 𝐴 ∈ ℝ)
753a1i 11 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℝ+)
7674, 75modcld 13926 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) ∈ ℝ)
7776recnd 11252 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) ∈ ℂ)
7877sincld 16208 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 mod π)) ∈ ℂ)
791a1i 11 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℝ)
80 0re 11225 . . . . . . . . . . . . . . . . . . . . . 22 0 ∈ ℝ
8180, 1, 2ltleii 11348 . . . . . . . . . . . . . . . . . . . . 21 0 ≤ π
82 gt0ne0 11694 . . . . . . . . . . . . . . . . . . . . . . 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 12058 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 / π) ∈ ℝ)
8887flcld 13849 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (⌊‘(𝐴 / π)) ∈ ℤ)
8988znegcld 12718 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(⌊‘(𝐴 / π)) ∈ ℤ)
90 abssinper 26737 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ -(⌊‘(𝐴 / π)) ∈ ℤ) → (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π)))) = (abs‘(sin‘𝐴)))
9190eqcomd 2771 . . . . . . . . . . . . . . . . . 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 12717 . . . . . . . . . . . . . . . . . . . . 21 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (⌊‘(𝐴 / π)) ∈ ℂ)
9695negcld 11571 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(⌊‘(𝐴 / π)) ∈ ℂ)
971recni 11238 . . . . . . . . . . . . . . . . . . . . 21 π ∈ ℂ
9897a1i 11 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → π ∈ ℂ)
9996, 98mulcld 11244 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) ∈ ℂ)
10098, 95mulcld 11244 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (π · (⌊‘(𝐴 / π))) ∈ ℂ)
101100negcld 11571 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -(π · (⌊‘(𝐴 / π))) ∈ ℂ)
10295, 98mulneg1d 11682 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) = -((⌊‘(𝐴 / π)) · π))
10395, 98mulcomd 11245 . . . . . . . . . . . . . . . . . . . . 21 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((⌊‘(𝐴 / π)) · π) = (π · (⌊‘(𝐴 / π))))
104103negeqd 11466 . . . . . . . . . . . . . . . . . . . 20 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → -((⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))))
105102, 104eqtrd 2800 . . . . . . . . . . . . . . . . . . 19 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))))
106 oveq2 7427 . . . . . . . . . . . . . . . . . . . . 21 ((-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
107106ad3antrrr 743 . . . . . . . . . . . . . . . . . . . 20 (((((-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π))) ∧ -(π · (⌊‘(𝐴 / π))) ∈ ℂ) ∧ (-(⌊‘(𝐴 / π)) · π) ∈ ℂ) ∧ 𝐴 ∈ ℂ) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
1081074an4132 45266 . . . . . . . . . . . . . . . . . . 19 ((((𝐴 ∈ ℂ ∧ (-(⌊‘(𝐴 / π)) · π) ∈ ℂ) ∧ -(π · (⌊‘(𝐴 / π))) ∈ ℂ) ∧ (-(⌊‘(𝐴 / π)) · π) = -(π · (⌊‘(𝐴 / π)))) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
10912, 99, 101, 105, 108syl1111anc 854 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 + -(π · (⌊‘(𝐴 / π)))))
11012, 100negsubd 11590 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + -(π · (⌊‘(𝐴 / π)))) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
111109, 110eqtrd 2800 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 + (-(⌊‘(𝐴 / π)) · π)) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
112111fveq2d 6889 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π))) = (sin‘(𝐴 − (π · (⌊‘(𝐴 / π))))))
113112fveq2d 6889 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 + (-(⌊‘(𝐴 / π)) · π)))) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
11494, 113eqtrd 2800 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 − (π · (⌊‘(𝐴 / π)))))))
115 modval 13922 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (𝐴 mod π) = (𝐴 − (π · (⌊‘(𝐴 / π)))))
116115fveq2d 6889 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (sin‘(𝐴 mod π)) = (sin‘(𝐴 − (π · (⌊‘(𝐴 / π))))))
117116fveq2d 6889 . . . . . . . . . . . . . . . 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 2803 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = (abs‘(sin‘(𝐴 mod π))))
12127fveq2d 6889 . . . . . . . . . . . . . . 15 ((sin‘𝐴) = 0 → (abs‘(sin‘𝐴)) = (abs‘0))
122 abs0 15360 . . . . . . . . . . . . . . 15 (abs‘0) = 0
123121, 122eqtrdi 2816 . . . . . . . . . . . . . 14 ((sin‘𝐴) = 0 → (abs‘(sin‘𝐴)) = 0)
124123adantl 487 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘𝐴)) = 0)
125120, 124eqtr3d 2802 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (abs‘(sin‘(𝐴 mod π))) = 0)
12678, 125abs00d 15524 . . . . . . . . . . 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 11322 . . . . . . . . . . . . . . . 16 ((0 ∈ ℝ ∧ 0 < (sin‘(𝐴 mod π))) → (sin‘(𝐴 mod π)) ≠ 0)
130129neneqd 2965 . . . . . . . . . . . . . . 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 26723 . . . . . . . . . 10 ((𝐴 mod π) ∈ (0(,)π) → 0 < (sin‘(𝐴 mod π)))
137135, 136nsyl 141 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ (𝐴 mod π) ∈ (0(,)π))
13880rexri 11282 . . . . . . . . . . 11 0 ∈ ℝ*
1391rexri 11282 . . . . . . . . . . 11 π ∈ ℝ*
140 elioo2 13429 . . . . . . . . . . 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 13931 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → (𝐴 mod π) < π)
148147ancoms 464 . . . . . . . . 9 ((π ∈ ℝ+𝐴 ∈ ℝ) → (𝐴 mod π) < π)
1493, 74, 148sylancr 599 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) < π)
15076, 149jca 521 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π))
151 not12an2impnot1 45335 . . . . . . 7 ((¬ (0 < (𝐴 mod π) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)) ∧ ((𝐴 mod π) ∈ ℝ ∧ (𝐴 mod π) < π)) → ¬ 0 < (𝐴 mod π))
152146, 150, 151syl2anc 596 . . . . . 6 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → ¬ 0 < (𝐴 mod π))
153 modge0 13930 . . . . . . . . 9 ((𝐴 ∈ ℝ ∧ π ∈ ℝ+) → 0 ≤ (𝐴 mod π))
154153ancoms 464 . . . . . . . 8 ((π ∈ ℝ+𝐴 ∈ ℝ) → 0 ≤ (𝐴 mod π))
1553, 74, 154sylancr 599 . . . . . . 7 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → 0 ≤ (𝐴 mod π))
156 leloe 11311 . . . . . . . . 9 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ) → (0 ≤ (𝐴 mod π) ↔ (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π))))
157156biimp3a 1498 . . . . . . . 8 ((0 ∈ ℝ ∧ (𝐴 mod π) ∈ ℝ ∧ 0 ≤ (𝐴 mod π)) → (0 < (𝐴 mod π) ∨ 0 = (𝐴 mod π)))
158157idiALT 45245 . . . . . . 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 2771 . . . 4 ((𝐴 ∈ ℂ ∧ (sin‘𝐴) = 0) → (𝐴 mod π) = 0)
165 mod0 13927 . . . . . 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 12007 . . . . 5 (𝐴 ∈ ℂ → ((𝐴 / π) · π) = 𝐴)
173172fveq2d 6889 . . . 4 (𝐴 ∈ ℂ → (sin‘((𝐴 / π) · π)) = (sin‘𝐴))
174 id 23 . . . . 5 ((𝐴 / π) ∈ ℤ → (𝐴 / π) ∈ ℤ)
175 sinkpi 26738 . . . . 5 ((𝐴 / π) ∈ ℤ → (sin‘((𝐴 / π) · π)) = 0)
176174, 175syl 18 . . . 4 ((𝐴 / π) ∈ ℤ → (sin‘((𝐴 / π) · π)) = 0)
177173, 176sylan9req 2821 . . 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 2146  wne 2960   class class class wbr 5111  cfv 6540  (class class class)co 7419  cc 11113  cr 11114  0cc0 11115  1c1 11116  ici 11117   + caddc 11118   · cmul 11120  *cxr 11257   < clt 11258  cle 11259  cmin 11456  -cneg 11457   / cdiv 11886  2c2 12310  cz 12606  +crp 13032  (,)cioo 13388  cfl 13841   mod cmo 13920  abscabs 15309  expce 16137  sincsin 16139  πcpi 16142
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 11171  ax-resscn 11172  ax-1cn 11173  ax-icn 11174  ax-addcl 11175  ax-addrcl 11176  ax-mulcl 11177  ax-mulrcl 11178  ax-mulcom 11179  ax-addass 11180  ax-mulass 11181  ax-distr 11182  ax-i2m1 11183  ax-1ne0 11184  ax-1rid 11185  ax-rnegex 11186  ax-rrecex 11187  ax-cnre 11188  ax-pre-lttri 11189  ax-pre-lttrn 11190  ax-pre-ltadd 11191  ax-pre-mulgt0 11192  ax-pre-sup 11193  ax-addf 11194
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 11260  df-mnf 11261  df-xr 11262  df-ltxr 11263  df-le 11264  df-sub 11458  df-neg 11459  df-div 11887  df-nn 12249  df-2 12318  df-3 12319  df-4 12320  df-5 12321  df-6 12322  df-7 12323  df-8 12324  df-9 12325  df-n0 12520  df-z 12607  df-dec 12728  df-uz 12879  df-q 12989  df-rp 13033  df-xneg 13153  df-xadd 13154  df-xmul 13155  df-ioo 13392  df-ioc 13393  df-ico 13394  df-icc 13395  df-fz 13552  df-fzo 13700  df-fl 13843  df-mod 13921  df-seq 14056  df-exp 14116  df-fac 14328  df-bc 14357  df-hash 14385  df-shft 15128  df-cj 15174  df-re 15175  df-im 15176  df-sqrt 15310  df-abs 15311  df-limsup 15546  df-clim 15563  df-rlim 15564  df-sum 15762  df-ef 16143  df-sin 16145  df-cos 16146  df-pi 16148  df-struct 17229  df-sets 17246  df-slot 17264  df-ndx 17276  df-base 17292  df-ress 17313  df-plusg 17345  df-mulr 17346  df-starv 17347  df-sca 17348  df-vsca 17349  df-ip 17350  df-tset 17351  df-ple 17352  df-ds 17354  df-unif 17355  df-hom 17356  df-cco 17357  df-rest 17497  df-topn 17498  df-0g 17516  df-gsum 17517  df-topgen 17518  df-pt 17519  df-prds 17522  df-xrs 17578  df-qtop 17583  df-imas 17584  df-xps 17586  df-mre 17660  df-mrc 17661  df-acs 17663  df-mgm 18720  df-sgrp 18809  df-mnd 18825  df-submnd 18879  df-mulg 19178  df-cntz 19431  df-cmn 19896  df-psmet 21564  df-xmet 21565  df-met 21566  df-bl 21567  df-mopn 21568  df-fbas 21569  df-fg 21570  df-cnfld 21573  df-top 23101  df-topon 23118  df-topsp 23140  df-bases 23153  df-cld 23226  df-ntr 23227  df-cls 23228  df-nei 23305  df-lp 23343  df-perf 23344  df-cn 23434  df-cnp 23435  df-haus 23522  df-tx 23770  df-hmeo 23963  df-fil 24054  df-fm 24146  df-flim 24147  df-flf 24148  df-xms 24528  df-ms 24529  df-tms 24530  df-cncf 25088  df-limc 26076  df-dv 26077
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator