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

Theorem 2sqlem2 27654
Description: Lemma for 2sq 27666. (Contributed by Mario Carneiro, 19-Jun-2015.)
Hypothesis
Ref Expression
2sq.1 𝑆 = ran (𝑤 ∈ ℤ[i] ↦ ((abs‘𝑤)↑2))
Assertion
Ref Expression
2sqlem2 (𝐴𝑆 ↔ ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ 𝐴 = ((𝑥↑2) + (𝑦↑2)))
Distinct variable groups:   𝑥,𝑤,𝑦   𝑥,𝐴,𝑦   𝑥,𝑆,𝑦
Allowed substitution hints:   𝐴(𝑤)   𝑆(𝑤)

Proof of Theorem 2sqlem2
Dummy variable 𝑧 is distinct from all other variables.
StepHypRef Expression
1 2sq.1 . . . 4 𝑆 = ran (𝑤 ∈ ℤ[i] ↦ ((abs‘𝑤)↑2))
212sqlem1 27653 . . 3 (𝐴𝑆 ↔ ∃𝑧 ∈ ℤ[i] 𝐴 = ((abs‘𝑧)↑2))
3 elgz 17023 . . . . . . 7 (𝑧 ∈ ℤ[i] ↔ (𝑧 ∈ ℂ ∧ (ℜ‘𝑧) ∈ ℤ ∧ (ℑ‘𝑧) ∈ ℤ))
43simp2bi 1164 . . . . . 6 (𝑧 ∈ ℤ[i] → (ℜ‘𝑧) ∈ ℤ)
53simp3bi 1165 . . . . . 6 (𝑧 ∈ ℤ[i] → (ℑ‘𝑧) ∈ ℤ)
6 gzcn 17024 . . . . . . 7 (𝑧 ∈ ℤ[i] → 𝑧 ∈ ℂ)
76absvalsq2d 15533 . . . . . 6 (𝑧 ∈ ℤ[i] → ((abs‘𝑧)↑2) = (((ℜ‘𝑧)↑2) + ((ℑ‘𝑧)↑2)))
8 oveq1 7420 . . . . . . . . 9 (𝑥 = (ℜ‘𝑧) → (𝑥↑2) = ((ℜ‘𝑧)↑2))
98oveq1d 7428 . . . . . . . 8 (𝑥 = (ℜ‘𝑧) → ((𝑥↑2) + (𝑦↑2)) = (((ℜ‘𝑧)↑2) + (𝑦↑2)))
109eqeq2d 2771 . . . . . . 7 (𝑥 = (ℜ‘𝑧) → (((abs‘𝑧)↑2) = ((𝑥↑2) + (𝑦↑2)) ↔ ((abs‘𝑧)↑2) = (((ℜ‘𝑧)↑2) + (𝑦↑2))))
11 oveq1 7420 . . . . . . . . 9 (𝑦 = (ℑ‘𝑧) → (𝑦↑2) = ((ℑ‘𝑧)↑2))
1211oveq2d 7429 . . . . . . . 8 (𝑦 = (ℑ‘𝑧) → (((ℜ‘𝑧)↑2) + (𝑦↑2)) = (((ℜ‘𝑧)↑2) + ((ℑ‘𝑧)↑2)))
1312eqeq2d 2771 . . . . . . 7 (𝑦 = (ℑ‘𝑧) → (((abs‘𝑧)↑2) = (((ℜ‘𝑧)↑2) + (𝑦↑2)) ↔ ((abs‘𝑧)↑2) = (((ℜ‘𝑧)↑2) + ((ℑ‘𝑧)↑2))))
1410, 13rspc2ev 3589 . . . . . 6 (((ℜ‘𝑧) ∈ ℤ ∧ (ℑ‘𝑧) ∈ ℤ ∧ ((abs‘𝑧)↑2) = (((ℜ‘𝑧)↑2) + ((ℑ‘𝑧)↑2))) → ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ ((abs‘𝑧)↑2) = ((𝑥↑2) + (𝑦↑2)))
154, 5, 7, 14syl3anc 1398 . . . . 5 (𝑧 ∈ ℤ[i] → ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ ((abs‘𝑧)↑2) = ((𝑥↑2) + (𝑦↑2)))
16 eqeq1 2764 . . . . . 6 (𝐴 = ((abs‘𝑧)↑2) → (𝐴 = ((𝑥↑2) + (𝑦↑2)) ↔ ((abs‘𝑧)↑2) = ((𝑥↑2) + (𝑦↑2))))
17162rexbidv 3227 . . . . 5 (𝐴 = ((abs‘𝑧)↑2) → (∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ 𝐴 = ((𝑥↑2) + (𝑦↑2)) ↔ ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ ((abs‘𝑧)↑2) = ((𝑥↑2) + (𝑦↑2))))
1815, 17syl5ibrcom 250 . . . 4 (𝑧 ∈ ℤ[i] → (𝐴 = ((abs‘𝑧)↑2) → ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ 𝐴 = ((𝑥↑2) + (𝑦↑2))))
1918rexlimiv 3156 . . 3 (∃𝑧 ∈ ℤ[i] 𝐴 = ((abs‘𝑧)↑2) → ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ 𝐴 = ((𝑥↑2) + (𝑦↑2)))
202, 19sylbi 220 . 2 (𝐴𝑆 → ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ 𝐴 = ((𝑥↑2) + (𝑦↑2)))
21 gzreim 17031 . . . . . 6 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (𝑥 + (i · 𝑦)) ∈ ℤ[i])
22 zcn 12620 . . . . . . . . 9 (𝑥 ∈ ℤ → 𝑥 ∈ ℂ)
23 ax-icn 11183 . . . . . . . . . 10 i ∈ ℂ
24 zcn 12620 . . . . . . . . . 10 (𝑦 ∈ ℤ → 𝑦 ∈ ℂ)
25 mulcl 11208 . . . . . . . . . 10 ((i ∈ ℂ ∧ 𝑦 ∈ ℂ) → (i · 𝑦) ∈ ℂ)
2623, 24, 25sylancr 599 . . . . . . . . 9 (𝑦 ∈ ℤ → (i · 𝑦) ∈ ℂ)
27 addcl 11206 . . . . . . . . 9 ((𝑥 ∈ ℂ ∧ (i · 𝑦) ∈ ℂ) → (𝑥 + (i · 𝑦)) ∈ ℂ)
2822, 26, 27syl2an 608 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (𝑥 + (i · 𝑦)) ∈ ℂ)
2928absvalsq2d 15533 . . . . . . 7 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((abs‘(𝑥 + (i · 𝑦)))↑2) = (((ℜ‘(𝑥 + (i · 𝑦)))↑2) + ((ℑ‘(𝑥 + (i · 𝑦)))↑2)))
30 zre 12619 . . . . . . . . . 10 (𝑥 ∈ ℤ → 𝑥 ∈ ℝ)
31 zre 12619 . . . . . . . . . 10 (𝑦 ∈ ℤ → 𝑦 ∈ ℝ)
32 crre 15201 . . . . . . . . . 10 ((𝑥 ∈ ℝ ∧ 𝑦 ∈ ℝ) → (ℜ‘(𝑥 + (i · 𝑦))) = 𝑥)
3330, 31, 32syl2an 608 . . . . . . . . 9 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (ℜ‘(𝑥 + (i · 𝑦))) = 𝑥)
3433oveq1d 7428 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((ℜ‘(𝑥 + (i · 𝑦)))↑2) = (𝑥↑2))
35 crim 15202 . . . . . . . . . 10 ((𝑥 ∈ ℝ ∧ 𝑦 ∈ ℝ) → (ℑ‘(𝑥 + (i · 𝑦))) = 𝑦)
3630, 31, 35syl2an 608 . . . . . . . . 9 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (ℑ‘(𝑥 + (i · 𝑦))) = 𝑦)
3736oveq1d 7428 . . . . . . . 8 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((ℑ‘(𝑥 + (i · 𝑦)))↑2) = (𝑦↑2))
3834, 37oveq12d 7431 . . . . . . 7 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (((ℜ‘(𝑥 + (i · 𝑦)))↑2) + ((ℑ‘(𝑥 + (i · 𝑦)))↑2)) = ((𝑥↑2) + (𝑦↑2)))
3929, 38eqtr2d 2796 . . . . . 6 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((𝑥↑2) + (𝑦↑2)) = ((abs‘(𝑥 + (i · 𝑦)))↑2))
40 fveq2 6878 . . . . . . . 8 (𝑧 = (𝑥 + (i · 𝑦)) → (abs‘𝑧) = (abs‘(𝑥 + (i · 𝑦))))
4140oveq1d 7428 . . . . . . 7 (𝑧 = (𝑥 + (i · 𝑦)) → ((abs‘𝑧)↑2) = ((abs‘(𝑥 + (i · 𝑦)))↑2))
4241rspceeqv 3599 . . . . . 6 (((𝑥 + (i · 𝑦)) ∈ ℤ[i] ∧ ((𝑥↑2) + (𝑦↑2)) = ((abs‘(𝑥 + (i · 𝑦)))↑2)) → ∃𝑧 ∈ ℤ[i] ((𝑥↑2) + (𝑦↑2)) = ((abs‘𝑧)↑2))
4321, 39, 42syl2anc 596 . . . . 5 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ∃𝑧 ∈ ℤ[i] ((𝑥↑2) + (𝑦↑2)) = ((abs‘𝑧)↑2))
4412sqlem1 27653 . . . . 5 (((𝑥↑2) + (𝑦↑2)) ∈ 𝑆 ↔ ∃𝑧 ∈ ℤ[i] ((𝑥↑2) + (𝑦↑2)) = ((abs‘𝑧)↑2))
4543, 44sylibr 237 . . . 4 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → ((𝑥↑2) + (𝑦↑2)) ∈ 𝑆)
46 eleq1 2848 . . . 4 (𝐴 = ((𝑥↑2) + (𝑦↑2)) → (𝐴𝑆 ↔ ((𝑥↑2) + (𝑦↑2)) ∈ 𝑆))
4745, 46syl5ibrcom 250 . . 3 ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℤ) → (𝐴 = ((𝑥↑2) + (𝑦↑2)) → 𝐴𝑆))
4847rexlimivv 3204 . 2 (∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ 𝐴 = ((𝑥↑2) + (𝑦↑2)) → 𝐴𝑆)
4920, 48impbii 212 1 (𝐴𝑆 ↔ ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ 𝐴 = ((𝑥↑2) + (𝑦↑2)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wb 209  wa 401   = wceq 1570  wcel 2145  wrex 3086  cmpt 5186  ran crn 5656  cfv 6533  (class class class)co 7413  cc 11122  cr 11123  ici 11126   + caddc 11127   · cmul 11129  2c2 12319  cz 12615  cexp 14125  cre 15184  cim 15185  abscabs 15321  ℤ[i]cgz 17021
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-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7736  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
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-op 4591  df-uni 4868  df-iun 4953  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-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-riota 7370  df-ov 7416  df-oprab 7417  df-mpo 7418  df-om 7863  df-2nd 7987  df-frecs 8280  df-wrecs 8311  df-recs 8360  df-rdg 8399  df-er 8696  df-en 8953  df-dom 8954  df-sdom 8955  df-sup 9412  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-n0 12529  df-z 12616  df-uz 12888  df-rp 13043  df-seq 14066  df-exp 14126  df-cj 15186  df-re 15187  df-im 15188  df-sqrt 15322  df-abs 15323  df-gz 17022
This theorem is used by:  2sqlem5  27658  2sqlem7  27660  2sq  27666
  Copyright terms: Public domain W3C validator