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

Theorem smumul 16512
Description: For sequences that correspond to valid integers, the sequence multiplication function produces the sequence for the product. This is effectively a proof of the correctness of the multiplication process, implemented in terms of logic gates for df-sad 16470, whose correctness is verified in sadadd 16486.

Outside this range, the sequences cannot be representing integers, but the smul function still "works". This extended function is best interpreted in terms of the ring structure of the 2-adic integers. (Contributed by Mario Carneiro, 22-Sep-2016.)

Assertion
Ref Expression
smumul ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → ((bits‘𝐴) smul (bits‘𝐵)) = (bits‘(𝐴 · 𝐵)))

Proof of Theorem smumul
Dummy variable 𝑘 is distinct from all other variables.
StepHypRef Expression
1 bitsss 16445 . . . . . 6 (bits‘𝐴) ⊆ ℕ0
2 bitsss 16445 . . . . . 6 (bits‘𝐵) ⊆ ℕ0
3 smucl 16503 . . . . . 6 (((bits‘𝐴) ⊆ ℕ0 ∧ (bits‘𝐵) ⊆ ℕ0) → ((bits‘𝐴) smul (bits‘𝐵)) ⊆ ℕ0)
41, 2, 3mp2an 692 . . . . 5 ((bits‘𝐴) smul (bits‘𝐵)) ⊆ ℕ0
54sseli 3954 . . . 4 (𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) → 𝑘 ∈ ℕ0)
65a1i 11 . . 3 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) → 𝑘 ∈ ℕ0))
7 bitsss 16445 . . . . 5 (bits‘(𝐴 · 𝐵)) ⊆ ℕ0
87sseli 3954 . . . 4 (𝑘 ∈ (bits‘(𝐴 · 𝐵)) → 𝑘 ∈ ℕ0)
98a1i 11 . . 3 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝑘 ∈ (bits‘(𝐴 · 𝐵)) → 𝑘 ∈ ℕ0))
10 simpll 766 . . . . . . . . . . . 12 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 𝐴 ∈ ℤ)
11 simplr 768 . . . . . . . . . . . 12 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 𝐵 ∈ ℤ)
12 simpr 484 . . . . . . . . . . . . 13 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 𝑘 ∈ ℕ0)
13 1nn0 12517 . . . . . . . . . . . . . 14 1 ∈ ℕ0
1413a1i 11 . . . . . . . . . . . . 13 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 1 ∈ ℕ0)
1512, 14nn0addcld 12566 . . . . . . . . . . . 12 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝑘 + 1) ∈ ℕ0)
1610, 11, 15smumullem 16511 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (((bits‘𝐴) ∩ (0..^(𝑘 + 1))) smul (bits‘𝐵)) = (bits‘((𝐴 mod (2↑(𝑘 + 1))) · 𝐵)))
1716ineq1d 4194 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → ((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) = ((bits‘((𝐴 mod (2↑(𝑘 + 1))) · 𝐵)) ∩ (0..^(𝑘 + 1))))
18 2nn 12313 . . . . . . . . . . . . . . . 16 2 ∈ ℕ
1918a1i 11 . . . . . . . . . . . . . . 15 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 2 ∈ ℕ)
2019, 15nnexpcld 14263 . . . . . . . . . . . . . 14 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (2↑(𝑘 + 1)) ∈ ℕ)
2110, 20zmodcld 13909 . . . . . . . . . . . . 13 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝐴 mod (2↑(𝑘 + 1))) ∈ ℕ0)
2221nn0zd 12614 . . . . . . . . . . . 12 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝐴 mod (2↑(𝑘 + 1))) ∈ ℤ)
2322, 11zmulcld 12703 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → ((𝐴 mod (2↑(𝑘 + 1))) · 𝐵) ∈ ℤ)
24 bitsmod 16455 . . . . . . . . . . 11 ((((𝐴 mod (2↑(𝑘 + 1))) · 𝐵) ∈ ℤ ∧ (𝑘 + 1) ∈ ℕ0) → (bits‘(((𝐴 mod (2↑(𝑘 + 1))) · 𝐵) mod (2↑(𝑘 + 1)))) = ((bits‘((𝐴 mod (2↑(𝑘 + 1))) · 𝐵)) ∩ (0..^(𝑘 + 1))))
2523, 15, 24syl2anc 584 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (bits‘(((𝐴 mod (2↑(𝑘 + 1))) · 𝐵) mod (2↑(𝑘 + 1)))) = ((bits‘((𝐴 mod (2↑(𝑘 + 1))) · 𝐵)) ∩ (0..^(𝑘 + 1))))
2617, 25eqtr4d 2773 . . . . . . . . 9 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → ((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) = (bits‘(((𝐴 mod (2↑(𝑘 + 1))) · 𝐵) mod (2↑(𝑘 + 1)))))
27 inass 4203 . . . . . . . . . . . . 13 (((bits‘𝐴) ∩ (0..^(𝑘 + 1))) ∩ (0..^(𝑘 + 1))) = ((bits‘𝐴) ∩ ((0..^(𝑘 + 1)) ∩ (0..^(𝑘 + 1))))
28 inidm 4202 . . . . . . . . . . . . . 14 ((0..^(𝑘 + 1)) ∩ (0..^(𝑘 + 1))) = (0..^(𝑘 + 1))
2928ineq2i 4192 . . . . . . . . . . . . 13 ((bits‘𝐴) ∩ ((0..^(𝑘 + 1)) ∩ (0..^(𝑘 + 1)))) = ((bits‘𝐴) ∩ (0..^(𝑘 + 1)))
3027, 29eqtri 2758 . . . . . . . . . . . 12 (((bits‘𝐴) ∩ (0..^(𝑘 + 1))) ∩ (0..^(𝑘 + 1))) = ((bits‘𝐴) ∩ (0..^(𝑘 + 1)))
3130oveq1i 7415 . . . . . . . . . . 11 ((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) ∩ (0..^(𝑘 + 1))) smul ((bits‘𝐵) ∩ (0..^(𝑘 + 1)))) = (((bits‘𝐴) ∩ (0..^(𝑘 + 1))) smul ((bits‘𝐵) ∩ (0..^(𝑘 + 1))))
3231ineq1i 4191 . . . . . . . . . 10 (((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) ∩ (0..^(𝑘 + 1))) smul ((bits‘𝐵) ∩ (0..^(𝑘 + 1)))) ∩ (0..^(𝑘 + 1))) = ((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) smul ((bits‘𝐵) ∩ (0..^(𝑘 + 1)))) ∩ (0..^(𝑘 + 1)))
33 inss1 4212 . . . . . . . . . . . 12 ((bits‘𝐴) ∩ (0..^(𝑘 + 1))) ⊆ (bits‘𝐴)
341a1i 11 . . . . . . . . . . . 12 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (bits‘𝐴) ⊆ ℕ0)
3533, 34sstrid 3970 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → ((bits‘𝐴) ∩ (0..^(𝑘 + 1))) ⊆ ℕ0)
362a1i 11 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (bits‘𝐵) ⊆ ℕ0)
3735, 36, 15smueq 16510 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → ((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) = (((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) ∩ (0..^(𝑘 + 1))) smul ((bits‘𝐵) ∩ (0..^(𝑘 + 1)))) ∩ (0..^(𝑘 + 1))))
3834, 36, 15smueq 16510 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (((bits‘𝐴) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) = ((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) smul ((bits‘𝐵) ∩ (0..^(𝑘 + 1)))) ∩ (0..^(𝑘 + 1))))
3932, 37, 383eqtr4a 2796 . . . . . . . . 9 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → ((((bits‘𝐴) ∩ (0..^(𝑘 + 1))) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) = (((bits‘𝐴) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))))
4020nnrpd 13049 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (2↑(𝑘 + 1)) ∈ ℝ+)
4110zred 12697 . . . . . . . . . . . 12 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 𝐴 ∈ ℝ)
42 modabs2 13922 . . . . . . . . . . . 12 ((𝐴 ∈ ℝ ∧ (2↑(𝑘 + 1)) ∈ ℝ+) → ((𝐴 mod (2↑(𝑘 + 1))) mod (2↑(𝑘 + 1))) = (𝐴 mod (2↑(𝑘 + 1))))
4341, 40, 42syl2anc 584 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → ((𝐴 mod (2↑(𝑘 + 1))) mod (2↑(𝑘 + 1))) = (𝐴 mod (2↑(𝑘 + 1))))
44 eqidd 2736 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝐵 mod (2↑(𝑘 + 1))) = (𝐵 mod (2↑(𝑘 + 1))))
4522, 10, 11, 11, 40, 43, 44modmul12d 13943 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (((𝐴 mod (2↑(𝑘 + 1))) · 𝐵) mod (2↑(𝑘 + 1))) = ((𝐴 · 𝐵) mod (2↑(𝑘 + 1))))
4645fveq2d 6880 . . . . . . . . 9 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (bits‘(((𝐴 mod (2↑(𝑘 + 1))) · 𝐵) mod (2↑(𝑘 + 1)))) = (bits‘((𝐴 · 𝐵) mod (2↑(𝑘 + 1)))))
4726, 39, 463eqtr3d 2778 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (((bits‘𝐴) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) = (bits‘((𝐴 · 𝐵) mod (2↑(𝑘 + 1)))))
4810, 11zmulcld 12703 . . . . . . . . 9 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝐴 · 𝐵) ∈ ℤ)
49 bitsmod 16455 . . . . . . . . 9 (((𝐴 · 𝐵) ∈ ℤ ∧ (𝑘 + 1) ∈ ℕ0) → (bits‘((𝐴 · 𝐵) mod (2↑(𝑘 + 1)))) = ((bits‘(𝐴 · 𝐵)) ∩ (0..^(𝑘 + 1))))
5048, 15, 49syl2anc 584 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (bits‘((𝐴 · 𝐵) mod (2↑(𝑘 + 1)))) = ((bits‘(𝐴 · 𝐵)) ∩ (0..^(𝑘 + 1))))
5147, 50eqtrd 2770 . . . . . . 7 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (((bits‘𝐴) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) = ((bits‘(𝐴 · 𝐵)) ∩ (0..^(𝑘 + 1))))
5251eleq2d 2820 . . . . . 6 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝑘 ∈ (((bits‘𝐴) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) ↔ 𝑘 ∈ ((bits‘(𝐴 · 𝐵)) ∩ (0..^(𝑘 + 1)))))
53 elin 3942 . . . . . 6 (𝑘 ∈ (((bits‘𝐴) smul (bits‘𝐵)) ∩ (0..^(𝑘 + 1))) ↔ (𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) ∧ 𝑘 ∈ (0..^(𝑘 + 1))))
54 elin 3942 . . . . . 6 (𝑘 ∈ ((bits‘(𝐴 · 𝐵)) ∩ (0..^(𝑘 + 1))) ↔ (𝑘 ∈ (bits‘(𝐴 · 𝐵)) ∧ 𝑘 ∈ (0..^(𝑘 + 1))))
5552, 53, 543bitr3g 313 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → ((𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) ∧ 𝑘 ∈ (0..^(𝑘 + 1))) ↔ (𝑘 ∈ (bits‘(𝐴 · 𝐵)) ∧ 𝑘 ∈ (0..^(𝑘 + 1)))))
56 nn0uz 12894 . . . . . . . . 9 0 = (ℤ‘0)
5712, 56eleqtrdi 2844 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 𝑘 ∈ (ℤ‘0))
58 eluzfz2b 13550 . . . . . . . 8 (𝑘 ∈ (ℤ‘0) ↔ 𝑘 ∈ (0...𝑘))
5957, 58sylib 218 . . . . . . 7 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 𝑘 ∈ (0...𝑘))
6012nn0zd 12614 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 𝑘 ∈ ℤ)
61 fzval3 13750 . . . . . . . 8 (𝑘 ∈ ℤ → (0...𝑘) = (0..^(𝑘 + 1)))
6260, 61syl 17 . . . . . . 7 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (0...𝑘) = (0..^(𝑘 + 1)))
6359, 62eleqtrd 2836 . . . . . 6 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → 𝑘 ∈ (0..^(𝑘 + 1)))
6463biantrud 531 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) ↔ (𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) ∧ 𝑘 ∈ (0..^(𝑘 + 1)))))
6563biantrud 531 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝑘 ∈ (bits‘(𝐴 · 𝐵)) ↔ (𝑘 ∈ (bits‘(𝐴 · 𝐵)) ∧ 𝑘 ∈ (0..^(𝑘 + 1)))))
6655, 64, 653bitr4d 311 . . . 4 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ 𝑘 ∈ ℕ0) → (𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) ↔ 𝑘 ∈ (bits‘(𝐴 · 𝐵))))
6766ex 412 . . 3 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝑘 ∈ ℕ0 → (𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) ↔ 𝑘 ∈ (bits‘(𝐴 · 𝐵)))))
686, 9, 67pm5.21ndd 379 . 2 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝑘 ∈ ((bits‘𝐴) smul (bits‘𝐵)) ↔ 𝑘 ∈ (bits‘(𝐴 · 𝐵))))
6968eqrdv 2733 1 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → ((bits‘𝐴) smul (bits‘𝐵)) = (bits‘(𝐴 · 𝐵)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395   = wceq 1540  wcel 2108  cin 3925  wss 3926  cfv 6531  (class class class)co 7405  cr 11128  0cc0 11129  1c1 11130   + caddc 11132   · cmul 11134  cn 12240  2c2 12295  0cn0 12501  cz 12588  cuz 12852  +crp 13008  ...cfz 13524  ..^cfzo 13671   mod cmo 13886  cexp 14079  bitscbits 16438   smul csmu 16440
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-11 2157  ax-12 2177  ax-ext 2707  ax-rep 5249  ax-sep 5266  ax-nul 5276  ax-pow 5335  ax-pr 5402  ax-un 7729  ax-inf2 9655  ax-cnex 11185  ax-resscn 11186  ax-1cn 11187  ax-icn 11188  ax-addcl 11189  ax-addrcl 11190  ax-mulcl 11191  ax-mulrcl 11192  ax-mulcom 11193  ax-addass 11194  ax-mulass 11195  ax-distr 11196  ax-i2m1 11197  ax-1ne0 11198  ax-1rid 11199  ax-rnegex 11200  ax-rrecex 11201  ax-cnre 11202  ax-pre-lttri 11203  ax-pre-lttrn 11204  ax-pre-ltadd 11205  ax-pre-mulgt0 11206  ax-pre-sup 11207
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-xor 1512  df-tru 1543  df-fal 1553  df-had 1594  df-cad 1607  df-ex 1780  df-nf 1784  df-sb 2065  df-mo 2539  df-eu 2568  df-clab 2714  df-cleq 2727  df-clel 2809  df-nfc 2885  df-ne 2933  df-nel 3037  df-ral 3052  df-rex 3061  df-rmo 3359  df-reu 3360  df-rab 3416  df-v 3461  df-sbc 3766  df-csb 3875  df-dif 3929  df-un 3931  df-in 3933  df-ss 3943  df-pss 3946  df-nul 4309  df-if 4501  df-pw 4577  df-sn 4602  df-pr 4604  df-op 4608  df-uni 4884  df-int 4923  df-iun 4969  df-disj 5087  df-br 5120  df-opab 5182  df-mpt 5202  df-tr 5230  df-id 5548  df-eprel 5553  df-po 5561  df-so 5562  df-fr 5606  df-se 5607  df-we 5608  df-xp 5660  df-rel 5661  df-cnv 5662  df-co 5663  df-dm 5664  df-rn 5665  df-res 5666  df-ima 5667  df-pred 6290  df-ord 6355  df-on 6356  df-lim 6357  df-suc 6358  df-iota 6484  df-fun 6533  df-fn 6534  df-f 6535  df-f1 6536  df-fo 6537  df-f1o 6538  df-fv 6539  df-isom 6540  df-riota 7362  df-ov 7408  df-oprab 7409  df-mpo 7410  df-om 7862  df-1st 7988  df-2nd 7989  df-frecs 8280  df-wrecs 8311  df-recs 8385  df-rdg 8424  df-1o 8480  df-2o 8481  df-oadd 8484  df-er 8719  df-map 8842  df-pm 8843  df-en 8960  df-dom 8961  df-sdom 8962  df-fin 8963  df-sup 9454  df-inf 9455  df-oi 9524  df-dju 9915  df-card 9953  df-pnf 11271  df-mnf 11272  df-xr 11273  df-ltxr 11274  df-le 11275  df-sub 11468  df-neg 11469  df-div 11895  df-nn 12241  df-2 12303  df-3 12304  df-n0 12502  df-xnn0 12575  df-z 12589  df-uz 12853  df-rp 13009  df-fz 13525  df-fzo 13672  df-fl 13809  df-mod 13887  df-seq 14020  df-exp 14080  df-hash 14349  df-cj 15118  df-re 15119  df-im 15120  df-sqrt 15254  df-abs 15255  df-clim 15504  df-sum 15703  df-dvds 16273  df-bits 16441  df-sad 16470  df-smu 16495
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator