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

Theorem sadasslem 16010
Description: Lemma for sadass 16011. (Contributed by Mario Carneiro, 9-Sep-2016.)
Hypotheses
Ref Expression
sadasslem.1 (𝜑𝐴 ⊆ ℕ0)
sadasslem.2 (𝜑𝐵 ⊆ ℕ0)
sadasslem.3 (𝜑𝐶 ⊆ ℕ0)
sadasslem.4 (𝜑𝑁 ∈ ℕ0)
Assertion
Ref Expression
sadasslem (𝜑 → (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) = ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))

Proof of Theorem sadasslem
Dummy variables 𝑐 𝑚 𝑛 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 inss1 4133 . . . . . . . . . . 11 (𝐴 ∩ (0..^𝑁)) ⊆ 𝐴
2 sadasslem.1 . . . . . . . . . . 11 (𝜑𝐴 ⊆ ℕ0)
31, 2sstrid 3902 . . . . . . . . . 10 (𝜑 → (𝐴 ∩ (0..^𝑁)) ⊆ ℕ0)
4 fzofi 13530 . . . . . . . . . . . 12 (0..^𝑁) ∈ Fin
54a1i 11 . . . . . . . . . . 11 (𝜑 → (0..^𝑁) ∈ Fin)
6 inss2 4134 . . . . . . . . . . 11 (𝐴 ∩ (0..^𝑁)) ⊆ (0..^𝑁)
7 ssfi 8840 . . . . . . . . . . 11 (((0..^𝑁) ∈ Fin ∧ (𝐴 ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → (𝐴 ∩ (0..^𝑁)) ∈ Fin)
85, 6, 7sylancl 589 . . . . . . . . . 10 (𝜑 → (𝐴 ∩ (0..^𝑁)) ∈ Fin)
9 elfpw 8967 . . . . . . . . . 10 ((𝐴 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ ((𝐴 ∩ (0..^𝑁)) ⊆ ℕ0 ∧ (𝐴 ∩ (0..^𝑁)) ∈ Fin))
103, 8, 9sylanbrc 586 . . . . . . . . 9 (𝜑 → (𝐴 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
11 bitsf1o 15985 . . . . . . . . . . 11 (bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin)
12 f1ocnv 6662 . . . . . . . . . . 11 ((bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin) → (bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)–1-1-onto→ℕ0)
13 f1of 6650 . . . . . . . . . . 11 ((bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)–1-1-onto→ℕ0(bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)⟶ℕ0)
1411, 12, 13mp2b 10 . . . . . . . . . 10 (bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)⟶ℕ0
1514ffvelrni 6892 . . . . . . . . 9 ((𝐴 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → ((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) ∈ ℕ0)
1610, 15syl 17 . . . . . . . 8 (𝜑 → ((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) ∈ ℕ0)
1716nn0cnd 12135 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) ∈ ℂ)
18 inss1 4133 . . . . . . . . . . 11 (𝐵 ∩ (0..^𝑁)) ⊆ 𝐵
19 sadasslem.2 . . . . . . . . . . 11 (𝜑𝐵 ⊆ ℕ0)
2018, 19sstrid 3902 . . . . . . . . . 10 (𝜑 → (𝐵 ∩ (0..^𝑁)) ⊆ ℕ0)
21 inss2 4134 . . . . . . . . . . 11 (𝐵 ∩ (0..^𝑁)) ⊆ (0..^𝑁)
22 ssfi 8840 . . . . . . . . . . 11 (((0..^𝑁) ∈ Fin ∧ (𝐵 ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → (𝐵 ∩ (0..^𝑁)) ∈ Fin)
235, 21, 22sylancl 589 . . . . . . . . . 10 (𝜑 → (𝐵 ∩ (0..^𝑁)) ∈ Fin)
24 elfpw 8967 . . . . . . . . . 10 ((𝐵 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ ((𝐵 ∩ (0..^𝑁)) ⊆ ℕ0 ∧ (𝐵 ∩ (0..^𝑁)) ∈ Fin))
2520, 23, 24sylanbrc 586 . . . . . . . . 9 (𝜑 → (𝐵 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
2614ffvelrni 6892 . . . . . . . . 9 ((𝐵 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) ∈ ℕ0)
2725, 26syl 17 . . . . . . . 8 (𝜑 → ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) ∈ ℕ0)
2827nn0cnd 12135 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) ∈ ℂ)
29 inss1 4133 . . . . . . . . . . 11 (𝐶 ∩ (0..^𝑁)) ⊆ 𝐶
30 sadasslem.3 . . . . . . . . . . 11 (𝜑𝐶 ⊆ ℕ0)
3129, 30sstrid 3902 . . . . . . . . . 10 (𝜑 → (𝐶 ∩ (0..^𝑁)) ⊆ ℕ0)
32 inss2 4134 . . . . . . . . . . 11 (𝐶 ∩ (0..^𝑁)) ⊆ (0..^𝑁)
33 ssfi 8840 . . . . . . . . . . 11 (((0..^𝑁) ∈ Fin ∧ (𝐶 ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → (𝐶 ∩ (0..^𝑁)) ∈ Fin)
345, 32, 33sylancl 589 . . . . . . . . . 10 (𝜑 → (𝐶 ∩ (0..^𝑁)) ∈ Fin)
35 elfpw 8967 . . . . . . . . . 10 ((𝐶 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ ((𝐶 ∩ (0..^𝑁)) ⊆ ℕ0 ∧ (𝐶 ∩ (0..^𝑁)) ∈ Fin))
3631, 34, 35sylanbrc 586 . . . . . . . . 9 (𝜑 → (𝐶 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
3714ffvelrni 6892 . . . . . . . . 9 ((𝐶 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))) ∈ ℕ0)
3836, 37syl 17 . . . . . . . 8 (𝜑 → ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))) ∈ ℕ0)
3938nn0cnd 12135 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))) ∈ ℂ)
4017, 28, 39addassd 10838 . . . . . 6 (𝜑 → ((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁)))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁)))) = (((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + (((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))))))
4140oveq1d 7217 . . . . 5 (𝜑 → (((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁)))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁)))) mod (2↑𝑁)) = ((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + (((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))))) mod (2↑𝑁)))
42 inss1 4133 . . . . . . . . . 10 ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ (𝐴 sadd 𝐵)
43 sadcl 16002 . . . . . . . . . . 11 ((𝐴 ⊆ ℕ0𝐵 ⊆ ℕ0) → (𝐴 sadd 𝐵) ⊆ ℕ0)
442, 19, 43syl2anc 587 . . . . . . . . . 10 (𝜑 → (𝐴 sadd 𝐵) ⊆ ℕ0)
4542, 44sstrid 3902 . . . . . . . . 9 (𝜑 → ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ ℕ0)
46 inss2 4134 . . . . . . . . . 10 ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ (0..^𝑁)
47 ssfi 8840 . . . . . . . . . 10 (((0..^𝑁) ∈ Fin ∧ ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ Fin)
485, 46, 47sylancl 589 . . . . . . . . 9 (𝜑 → ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ Fin)
49 elfpw 8967 . . . . . . . . 9 (((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ (((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ ℕ0 ∧ ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ Fin))
5045, 48, 49sylanbrc 586 . . . . . . . 8 (𝜑 → ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
5114ffvelrni 6892 . . . . . . . 8 (((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → ((bits ↾ ℕ0)‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) ∈ ℕ0)
5250, 51syl 17 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) ∈ ℕ0)
5352nn0red 12134 . . . . . 6 (𝜑 → ((bits ↾ ℕ0)‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) ∈ ℝ)
5416nn0red 12134 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) ∈ ℝ)
5527nn0red 12134 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) ∈ ℝ)
5654, 55readdcld 10845 . . . . . 6 (𝜑 → (((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁)))) ∈ ℝ)
5738nn0red 12134 . . . . . 6 (𝜑 → ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))) ∈ ℝ)
58 2rp 12574 . . . . . . . 8 2 ∈ ℝ+
5958a1i 11 . . . . . . 7 (𝜑 → 2 ∈ ℝ+)
60 sadasslem.4 . . . . . . . 8 (𝜑𝑁 ∈ ℕ0)
6160nn0zd 12263 . . . . . . 7 (𝜑𝑁 ∈ ℤ)
6259, 61rpexpcld 13797 . . . . . 6 (𝜑 → (2↑𝑁) ∈ ℝ+)
63 eqid 2734 . . . . . . 7 seq0((𝑐 ∈ 2o, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚𝐴, 𝑚𝐵, ∅ ∈ 𝑐), 1o, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1)))) = seq0((𝑐 ∈ 2o, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚𝐴, 𝑚𝐵, ∅ ∈ 𝑐), 1o, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1))))
64 eqid 2734 . . . . . . 7 (bits ↾ ℕ0) = (bits ↾ ℕ0)
652, 19, 63, 60, 64sadadd3 16001 . . . . . 6 (𝜑 → (((bits ↾ ℕ0)‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) mod (2↑𝑁)) = ((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁)))) mod (2↑𝑁)))
66 eqidd 2735 . . . . . 6 (𝜑 → (((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))) mod (2↑𝑁)) = (((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))) mod (2↑𝑁)))
6753, 56, 57, 57, 62, 65, 66modadd12d 13483 . . . . 5 (𝜑 → ((((bits ↾ ℕ0)‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁)))) mod (2↑𝑁)) = (((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁)))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁)))) mod (2↑𝑁)))
68 inss1 4133 . . . . . . . . . 10 ((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ⊆ (𝐵 sadd 𝐶)
69 sadcl 16002 . . . . . . . . . . 11 ((𝐵 ⊆ ℕ0𝐶 ⊆ ℕ0) → (𝐵 sadd 𝐶) ⊆ ℕ0)
7019, 30, 69syl2anc 587 . . . . . . . . . 10 (𝜑 → (𝐵 sadd 𝐶) ⊆ ℕ0)
7168, 70sstrid 3902 . . . . . . . . 9 (𝜑 → ((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ⊆ ℕ0)
72 inss2 4134 . . . . . . . . . 10 ((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ⊆ (0..^𝑁)
73 ssfi 8840 . . . . . . . . . 10 (((0..^𝑁) ∈ Fin ∧ ((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → ((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ∈ Fin)
745, 72, 73sylancl 589 . . . . . . . . 9 (𝜑 → ((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ∈ Fin)
75 elfpw 8967 . . . . . . . . 9 (((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ (((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ⊆ ℕ0 ∧ ((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ∈ Fin))
7671, 74, 75sylanbrc 586 . . . . . . . 8 (𝜑 → ((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
7714ffvelrni 6892 . . . . . . . 8 (((𝐵 sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → ((bits ↾ ℕ0)‘((𝐵 sadd 𝐶) ∩ (0..^𝑁))) ∈ ℕ0)
7876, 77syl 17 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘((𝐵 sadd 𝐶) ∩ (0..^𝑁))) ∈ ℕ0)
7978nn0red 12134 . . . . . 6 (𝜑 → ((bits ↾ ℕ0)‘((𝐵 sadd 𝐶) ∩ (0..^𝑁))) ∈ ℝ)
8055, 57readdcld 10845 . . . . . 6 (𝜑 → (((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁)))) ∈ ℝ)
81 eqidd 2735 . . . . . 6 (𝜑 → (((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) mod (2↑𝑁)) = (((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) mod (2↑𝑁)))
82 eqid 2734 . . . . . . 7 seq0((𝑐 ∈ 2o, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚𝐵, 𝑚𝐶, ∅ ∈ 𝑐), 1o, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1)))) = seq0((𝑐 ∈ 2o, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚𝐵, 𝑚𝐶, ∅ ∈ 𝑐), 1o, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1))))
8319, 30, 82, 60, 64sadadd3 16001 . . . . . 6 (𝜑 → (((bits ↾ ℕ0)‘((𝐵 sadd 𝐶) ∩ (0..^𝑁))) mod (2↑𝑁)) = ((((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁)))) mod (2↑𝑁)))
8454, 54, 79, 80, 62, 81, 83modadd12d 13483 . . . . 5 (𝜑 → ((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘((𝐵 sadd 𝐶) ∩ (0..^𝑁)))) mod (2↑𝑁)) = ((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + (((bits ↾ ℕ0)‘(𝐵 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁))))) mod (2↑𝑁)))
8541, 67, 843eqtr4d 2784 . . . 4 (𝜑 → ((((bits ↾ ℕ0)‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁)))) mod (2↑𝑁)) = ((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘((𝐵 sadd 𝐶) ∩ (0..^𝑁)))) mod (2↑𝑁)))
86 eqid 2734 . . . . 5 seq0((𝑐 ∈ 2o, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚 ∈ (𝐴 sadd 𝐵), 𝑚𝐶, ∅ ∈ 𝑐), 1o, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1)))) = seq0((𝑐 ∈ 2o, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚 ∈ (𝐴 sadd 𝐵), 𝑚𝐶, ∅ ∈ 𝑐), 1o, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1))))
8744, 30, 86, 60, 64sadadd3 16001 . . . 4 (𝜑 → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) mod (2↑𝑁)) = ((((bits ↾ ℕ0)‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘(𝐶 ∩ (0..^𝑁)))) mod (2↑𝑁)))
88 eqid 2734 . . . . 5 seq0((𝑐 ∈ 2o, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚𝐴, 𝑚 ∈ (𝐵 sadd 𝐶), ∅ ∈ 𝑐), 1o, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1)))) = seq0((𝑐 ∈ 2o, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚𝐴, 𝑚 ∈ (𝐵 sadd 𝐶), ∅ ∈ 𝑐), 1o, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1))))
892, 70, 88, 60, 64sadadd3 16001 . . . 4 (𝜑 → (((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) mod (2↑𝑁)) = ((((bits ↾ ℕ0)‘(𝐴 ∩ (0..^𝑁))) + ((bits ↾ ℕ0)‘((𝐵 sadd 𝐶) ∩ (0..^𝑁)))) mod (2↑𝑁)))
9085, 87, 893eqtr4d 2784 . . 3 (𝜑 → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) mod (2↑𝑁)) = (((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) mod (2↑𝑁)))
91 inss1 4133 . . . . . . . 8 (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ⊆ ((𝐴 sadd 𝐵) sadd 𝐶)
92 sadcl 16002 . . . . . . . . 9 (((𝐴 sadd 𝐵) ⊆ ℕ0𝐶 ⊆ ℕ0) → ((𝐴 sadd 𝐵) sadd 𝐶) ⊆ ℕ0)
9344, 30, 92syl2anc 587 . . . . . . . 8 (𝜑 → ((𝐴 sadd 𝐵) sadd 𝐶) ⊆ ℕ0)
9491, 93sstrid 3902 . . . . . . 7 (𝜑 → (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ⊆ ℕ0)
95 inss2 4134 . . . . . . . 8 (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ⊆ (0..^𝑁)
96 ssfi 8840 . . . . . . . 8 (((0..^𝑁) ∈ Fin ∧ (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ Fin)
975, 95, 96sylancl 589 . . . . . . 7 (𝜑 → (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ Fin)
98 elfpw 8967 . . . . . . 7 ((((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ ((((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ⊆ ℕ0 ∧ (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ Fin))
9994, 97, 98sylanbrc 586 . . . . . 6 (𝜑 → (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
10014ffvelrni 6892 . . . . . 6 ((((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ ℕ0)
10199, 100syl 17 . . . . 5 (𝜑 → ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ ℕ0)
102101nn0red 12134 . . . 4 (𝜑 → ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ ℝ)
103101nn0ge0d 12136 . . . 4 (𝜑 → 0 ≤ ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))))
104101fvresd 6726 . . . . . . . 8 (𝜑 → ((bits ↾ ℕ0)‘((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))) = (bits‘((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))))
105 f1ocnvfv2 7077 . . . . . . . . 9 (((bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin) ∧ (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin)) → ((bits ↾ ℕ0)‘((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))) = (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))
10611, 99, 105sylancr 590 . . . . . . . 8 (𝜑 → ((bits ↾ ℕ0)‘((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))) = (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))
107104, 106eqtr3d 2776 . . . . . . 7 (𝜑 → (bits‘((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))) = (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))
108107, 95eqsstrdi 3945 . . . . . 6 (𝜑 → (bits‘((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))) ⊆ (0..^𝑁))
109101nn0zd 12263 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ ℤ)
110 bitsfzo 15975 . . . . . . 7 ((((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ ℤ ∧ 𝑁 ∈ ℕ0) → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ (0..^(2↑𝑁)) ↔ (bits‘((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))) ⊆ (0..^𝑁)))
111109, 60, 110syl2anc 587 . . . . . 6 (𝜑 → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ (0..^(2↑𝑁)) ↔ (bits‘((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)))) ⊆ (0..^𝑁)))
112108, 111mpbird 260 . . . . 5 (𝜑 → ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ (0..^(2↑𝑁)))
113 elfzolt2 13235 . . . . 5 (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ (0..^(2↑𝑁)) → ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) < (2↑𝑁))
114112, 113syl 17 . . . 4 (𝜑 → ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) < (2↑𝑁))
115 modid 13452 . . . 4 (((((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∈ ℝ ∧ (2↑𝑁) ∈ ℝ+) ∧ (0 ≤ ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) ∧ ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) < (2↑𝑁))) → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) mod (2↑𝑁)) = ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))))
116102, 62, 103, 114, 115syl22anc 839 . . 3 (𝜑 → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) mod (2↑𝑁)) = ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))))
117 inss1 4133 . . . . . . . 8 ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ⊆ (𝐴 sadd (𝐵 sadd 𝐶))
118 sadcl 16002 . . . . . . . . 9 ((𝐴 ⊆ ℕ0 ∧ (𝐵 sadd 𝐶) ⊆ ℕ0) → (𝐴 sadd (𝐵 sadd 𝐶)) ⊆ ℕ0)
1192, 70, 118syl2anc 587 . . . . . . . 8 (𝜑 → (𝐴 sadd (𝐵 sadd 𝐶)) ⊆ ℕ0)
120117, 119sstrid 3902 . . . . . . 7 (𝜑 → ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ⊆ ℕ0)
121 inss2 4134 . . . . . . . 8 ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ⊆ (0..^𝑁)
122 ssfi 8840 . . . . . . . 8 (((0..^𝑁) ∈ Fin ∧ ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ Fin)
1235, 121, 122sylancl 589 . . . . . . 7 (𝜑 → ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ Fin)
124 elfpw 8967 . . . . . . 7 (((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ (((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ⊆ ℕ0 ∧ ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ Fin))
125120, 123, 124sylanbrc 586 . . . . . 6 (𝜑 → ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
12614ffvelrni 6892 . . . . . 6 (((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ ℕ0)
127125, 126syl 17 . . . . 5 (𝜑 → ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ ℕ0)
128127nn0red 12134 . . . 4 (𝜑 → ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ ℝ)
129 2nn 11886 . . . . . . 7 2 ∈ ℕ
130129a1i 11 . . . . . 6 (𝜑 → 2 ∈ ℕ)
131130, 60nnexpcld 13795 . . . . 5 (𝜑 → (2↑𝑁) ∈ ℕ)
132131nnrpd 12609 . . . 4 (𝜑 → (2↑𝑁) ∈ ℝ+)
133127nn0ge0d 12136 . . . 4 (𝜑 → 0 ≤ ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))))
134127fvresd 6726 . . . . . . . 8 (𝜑 → ((bits ↾ ℕ0)‘((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))) = (bits‘((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))))
135 f1ocnvfv2 7077 . . . . . . . . 9 (((bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin) ∧ ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin)) → ((bits ↾ ℕ0)‘((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))) = ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))
13611, 125, 135sylancr 590 . . . . . . . 8 (𝜑 → ((bits ↾ ℕ0)‘((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))) = ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))
137134, 136eqtr3d 2776 . . . . . . 7 (𝜑 → (bits‘((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))) = ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))
138137, 121eqsstrdi 3945 . . . . . 6 (𝜑 → (bits‘((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))) ⊆ (0..^𝑁))
139127nn0zd 12263 . . . . . . 7 (𝜑 → ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ ℤ)
140 bitsfzo 15975 . . . . . . 7 ((((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ ℤ ∧ 𝑁 ∈ ℕ0) → (((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ (0..^(2↑𝑁)) ↔ (bits‘((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))) ⊆ (0..^𝑁)))
141139, 60, 140syl2anc 587 . . . . . 6 (𝜑 → (((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ (0..^(2↑𝑁)) ↔ (bits‘((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))) ⊆ (0..^𝑁)))
142138, 141mpbird 260 . . . . 5 (𝜑 → ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ (0..^(2↑𝑁)))
143 elfzolt2 13235 . . . . 5 (((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ (0..^(2↑𝑁)) → ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) < (2↑𝑁))
144142, 143syl 17 . . . 4 (𝜑 → ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) < (2↑𝑁))
145 modid 13452 . . . 4 (((((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∈ ℝ ∧ (2↑𝑁) ∈ ℝ+) ∧ (0 ≤ ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ∧ ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) < (2↑𝑁))) → (((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) mod (2↑𝑁)) = ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))))
146128, 132, 133, 144, 145syl22anc 839 . . 3 (𝜑 → (((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) mod (2↑𝑁)) = ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))))
14790, 116, 1463eqtr3d 2782 . 2 (𝜑 → ((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) = ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))))
148 f1of1 6649 . . . . 5 ((bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)–1-1-onto→ℕ0(bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)–1-1→ℕ0)
14911, 12, 148mp2b 10 . . . 4 (bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)–1-1→ℕ0
150 f1fveq 7063 . . . 4 (((bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)–1-1→ℕ0 ∧ ((((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ∧ ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))) → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) = ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ↔ (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) = ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))))
151149, 150mpan 690 . . 3 (((((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ∧ ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin)) → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) = ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ↔ (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) = ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))))
15299, 125, 151syl2anc 587 . 2 (𝜑 → (((bits ↾ ℕ0)‘(((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁))) = ((bits ↾ ℕ0)‘((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))) ↔ (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) = ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁))))
153147, 152mpbid 235 1 (𝜑 → (((𝐴 sadd 𝐵) sadd 𝐶) ∩ (0..^𝑁)) = ((𝐴 sadd (𝐵 sadd 𝐶)) ∩ (0..^𝑁)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399   = wceq 1543  caddwcad 1613  wcel 2110  cin 3856  wss 3857  c0 4227  ifcif 4429  𝒫 cpw 4503   class class class wbr 5043  cmpt 5124  ccnv 5539  cres 5542  wf 6365  1-1wf1 6366  1-1-ontowf1o 6368  cfv 6369  (class class class)co 7202  cmpo 7204  1oc1o 8184  2oc2o 8185  Fincfn 8615  cr 10711  0cc0 10712  1c1 10713   + caddc 10715   < clt 10850  cle 10851  cmin 11045  cn 11813  2c2 11868  0cn0 12073  cz 12159  +crp 12569  ..^cfzo 13221   mod cmo 13425  seqcseq 13557  cexp 13618  bitscbits 15959   sadd csad 15960
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1803  ax-4 1817  ax-5 1918  ax-6 1976  ax-7 2016  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2158  ax-12 2175  ax-ext 2706  ax-rep 5168  ax-sep 5181  ax-nul 5188  ax-pow 5247  ax-pr 5311  ax-un 7512  ax-inf2 9245  ax-cnex 10768  ax-resscn 10769  ax-1cn 10770  ax-icn 10771  ax-addcl 10772  ax-addrcl 10773  ax-mulcl 10774  ax-mulrcl 10775  ax-mulcom 10776  ax-addass 10777  ax-mulass 10778  ax-distr 10779  ax-i2m1 10780  ax-1ne0 10781  ax-1rid 10782  ax-rnegex 10783  ax-rrecex 10784  ax-cnre 10785  ax-pre-lttri 10786  ax-pre-lttrn 10787  ax-pre-ltadd 10788  ax-pre-mulgt0 10789  ax-pre-sup 10790
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 848  df-3or 1090  df-3an 1091  df-xor 1508  df-tru 1546  df-fal 1556  df-had 1600  df-cad 1614  df-ex 1788  df-nf 1792  df-sb 2071  df-mo 2537  df-eu 2566  df-clab 2713  df-cleq 2726  df-clel 2812  df-nfc 2882  df-ne 2936  df-nel 3040  df-ral 3059  df-rex 3060  df-reu 3061  df-rmo 3062  df-rab 3063  df-v 3403  df-sbc 3688  df-csb 3803  df-dif 3860  df-un 3862  df-in 3864  df-ss 3874  df-pss 3876  df-nul 4228  df-if 4430  df-pw 4505  df-sn 4532  df-pr 4534  df-tp 4536  df-op 4538  df-uni 4810  df-int 4850  df-iun 4896  df-disj 5009  df-br 5044  df-opab 5106  df-mpt 5125  df-tr 5151  df-id 5444  df-eprel 5449  df-po 5457  df-so 5458  df-fr 5498  df-se 5499  df-we 5500  df-xp 5546  df-rel 5547  df-cnv 5548  df-co 5549  df-dm 5550  df-rn 5551  df-res 5552  df-ima 5553  df-pred 6149  df-ord 6205  df-on 6206  df-lim 6207  df-suc 6208  df-iota 6327  df-fun 6371  df-fn 6372  df-f 6373  df-f1 6374  df-fo 6375  df-f1o 6376  df-fv 6377  df-isom 6378  df-riota 7159  df-ov 7205  df-oprab 7206  df-mpo 7207  df-om 7634  df-1st 7750  df-2nd 7751  df-wrecs 8036  df-recs 8097  df-rdg 8135  df-1o 8191  df-2o 8192  df-oadd 8195  df-er 8380  df-map 8499  df-pm 8500  df-en 8616  df-dom 8617  df-sdom 8618  df-fin 8619  df-sup 9047  df-inf 9048  df-oi 9115  df-dju 9500  df-card 9538  df-pnf 10852  df-mnf 10853  df-xr 10854  df-ltxr 10855  df-le 10856  df-sub 11047  df-neg 11048  df-div 11473  df-nn 11814  df-2 11876  df-3 11877  df-n0 12074  df-xnn0 12146  df-z 12160  df-uz 12422  df-rp 12570  df-fz 13079  df-fzo 13222  df-fl 13350  df-mod 13426  df-seq 13558  df-exp 13619  df-hash 13880  df-cj 14645  df-re 14646  df-im 14647  df-sqrt 14781  df-abs 14782  df-clim 15032  df-sum 15233  df-dvds 15797  df-bits 15962  df-sad 15991
This theorem is referenced by:  sadass  16011
  Copyright terms: Public domain W3C validator