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

Theorem sadadd2lem 15124
Description: Lemma for sadadd2 15125. (Contributed by Mario Carneiro, 9-Sep-2016.)
Hypotheses
Ref Expression
sadval.a (𝜑𝐴 ⊆ ℕ0)
sadval.b (𝜑𝐵 ⊆ ℕ0)
sadval.c 𝐶 = seq0((𝑐 ∈ 2𝑜, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚𝐴, 𝑚𝐵, ∅ ∈ 𝑐), 1𝑜, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1))))
sadcp1.n (𝜑𝑁 ∈ ℕ0)
sadcadd.k 𝐾 = (bits ↾ ℕ0)
sadadd2lem.1 (𝜑 → ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)) = ((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))))
Assertion
Ref Expression
sadadd2lem (𝜑 → ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^(𝑁 + 1)))) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)) = ((𝐾‘(𝐴 ∩ (0..^(𝑁 + 1)))) + (𝐾‘(𝐵 ∩ (0..^(𝑁 + 1))))))
Distinct variable groups:   𝑚,𝑐,𝑛   𝐴,𝑐,𝑚   𝐵,𝑐,𝑚   𝑛,𝑁
Allowed substitution hints:   𝜑(𝑚,𝑛,𝑐)   𝐴(𝑛)   𝐵(𝑛)   𝐶(𝑚,𝑛,𝑐)   𝐾(𝑚,𝑛,𝑐)   𝑁(𝑚,𝑐)

Proof of Theorem sadadd2lem
Dummy variable 𝑘 is distinct from all other variables.
StepHypRef Expression
1 inss1 3817 . . . . . . . . 9 ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ (𝐴 sadd 𝐵)
2 sadval.a . . . . . . . . . . 11 (𝜑𝐴 ⊆ ℕ0)
3 sadval.b . . . . . . . . . . 11 (𝜑𝐵 ⊆ ℕ0)
4 sadval.c . . . . . . . . . . 11 𝐶 = seq0((𝑐 ∈ 2𝑜, 𝑚 ∈ ℕ0 ↦ if(cadd(𝑚𝐴, 𝑚𝐵, ∅ ∈ 𝑐), 1𝑜, ∅)), (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ∅, (𝑛 − 1))))
52, 3, 4sadfval 15117 . . . . . . . . . 10 (𝜑 → (𝐴 sadd 𝐵) = {𝑘 ∈ ℕ0 ∣ hadd(𝑘𝐴, 𝑘𝐵, ∅ ∈ (𝐶𝑘))})
6 ssrab2 3672 . . . . . . . . . 10 {𝑘 ∈ ℕ0 ∣ hadd(𝑘𝐴, 𝑘𝐵, ∅ ∈ (𝐶𝑘))} ⊆ ℕ0
75, 6syl6eqss 3640 . . . . . . . . 9 (𝜑 → (𝐴 sadd 𝐵) ⊆ ℕ0)
81, 7syl5ss 3599 . . . . . . . 8 (𝜑 → ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ ℕ0)
9 fzofi 12729 . . . . . . . . . 10 (0..^𝑁) ∈ Fin
109a1i 11 . . . . . . . . 9 (𝜑 → (0..^𝑁) ∈ Fin)
11 inss2 3818 . . . . . . . . 9 ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ (0..^𝑁)
12 ssfi 8140 . . . . . . . . 9 (((0..^𝑁) ∈ Fin ∧ ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ Fin)
1310, 11, 12sylancl 693 . . . . . . . 8 (𝜑 → ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ Fin)
14 elfpw 8228 . . . . . . . 8 (((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ (((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ⊆ ℕ0 ∧ ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ Fin))
158, 13, 14sylanbrc 697 . . . . . . 7 (𝜑 → ((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
16 bitsf1o 15110 . . . . . . . . . 10 (bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin)
17 f1ocnv 6116 . . . . . . . . . 10 ((bits ↾ ℕ0):ℕ01-1-onto→(𝒫 ℕ0 ∩ Fin) → (bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)–1-1-onto→ℕ0)
18 f1of 6104 . . . . . . . . . 10 ((bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)–1-1-onto→ℕ0(bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)⟶ℕ0)
1916, 17, 18mp2b 10 . . . . . . . . 9 (bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)⟶ℕ0
20 sadcadd.k . . . . . . . . . 10 𝐾 = (bits ↾ ℕ0)
2120feq1i 6003 . . . . . . . . 9 (𝐾:(𝒫 ℕ0 ∩ Fin)⟶ℕ0(bits ↾ ℕ0):(𝒫 ℕ0 ∩ Fin)⟶ℕ0)
2219, 21mpbir 221 . . . . . . . 8 𝐾:(𝒫 ℕ0 ∩ Fin)⟶ℕ0
2322ffvelrni 6324 . . . . . . 7 (((𝐴 sadd 𝐵) ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → (𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) ∈ ℕ0)
2415, 23syl 17 . . . . . 6 (𝜑 → (𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) ∈ ℕ0)
2524nn0cnd 11313 . . . . 5 (𝜑 → (𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) ∈ ℂ)
26 2nn0 11269 . . . . . . . . . 10 2 ∈ ℕ0
2726a1i 11 . . . . . . . . 9 (𝜑 → 2 ∈ ℕ0)
28 sadcp1.n . . . . . . . . 9 (𝜑𝑁 ∈ ℕ0)
2927, 28nn0expcld 12987 . . . . . . . 8 (𝜑 → (2↑𝑁) ∈ ℕ0)
30 0nn0 11267 . . . . . . . 8 0 ∈ ℕ0
31 ifcl 4108 . . . . . . . 8 (((2↑𝑁) ∈ ℕ0 ∧ 0 ∈ ℕ0) → if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) ∈ ℕ0)
3229, 30, 31sylancl 693 . . . . . . 7 (𝜑 → if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) ∈ ℕ0)
3332nn0cnd 11313 . . . . . 6 (𝜑 → if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) ∈ ℂ)
34 1nn0 11268 . . . . . . . . . . 11 1 ∈ ℕ0
3534a1i 11 . . . . . . . . . 10 (𝜑 → 1 ∈ ℕ0)
3628, 35nn0addcld 11315 . . . . . . . . 9 (𝜑 → (𝑁 + 1) ∈ ℕ0)
3727, 36nn0expcld 12987 . . . . . . . 8 (𝜑 → (2↑(𝑁 + 1)) ∈ ℕ0)
38 ifcl 4108 . . . . . . . 8 (((2↑(𝑁 + 1)) ∈ ℕ0 ∧ 0 ∈ ℕ0) → if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0) ∈ ℕ0)
3937, 30, 38sylancl 693 . . . . . . 7 (𝜑 → if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0) ∈ ℕ0)
4039nn0cnd 11313 . . . . . 6 (𝜑 → if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0) ∈ ℂ)
4133, 40addcld 10019 . . . . 5 (𝜑 → (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)) ∈ ℂ)
4225, 41addcld 10019 . . . 4 (𝜑 → ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0))) ∈ ℂ)
43 inss1 3817 . . . . . . . . . 10 (𝐴 ∩ (0..^𝑁)) ⊆ 𝐴
4443, 2syl5ss 3599 . . . . . . . . 9 (𝜑 → (𝐴 ∩ (0..^𝑁)) ⊆ ℕ0)
45 inss2 3818 . . . . . . . . . 10 (𝐴 ∩ (0..^𝑁)) ⊆ (0..^𝑁)
46 ssfi 8140 . . . . . . . . . 10 (((0..^𝑁) ∈ Fin ∧ (𝐴 ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → (𝐴 ∩ (0..^𝑁)) ∈ Fin)
4710, 45, 46sylancl 693 . . . . . . . . 9 (𝜑 → (𝐴 ∩ (0..^𝑁)) ∈ Fin)
48 elfpw 8228 . . . . . . . . 9 ((𝐴 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ ((𝐴 ∩ (0..^𝑁)) ⊆ ℕ0 ∧ (𝐴 ∩ (0..^𝑁)) ∈ Fin))
4944, 47, 48sylanbrc 697 . . . . . . . 8 (𝜑 → (𝐴 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
5022ffvelrni 6324 . . . . . . . 8 ((𝐴 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → (𝐾‘(𝐴 ∩ (0..^𝑁))) ∈ ℕ0)
5149, 50syl 17 . . . . . . 7 (𝜑 → (𝐾‘(𝐴 ∩ (0..^𝑁))) ∈ ℕ0)
5251nn0cnd 11313 . . . . . 6 (𝜑 → (𝐾‘(𝐴 ∩ (0..^𝑁))) ∈ ℂ)
53 inss1 3817 . . . . . . . . . 10 (𝐵 ∩ (0..^𝑁)) ⊆ 𝐵
5453, 3syl5ss 3599 . . . . . . . . 9 (𝜑 → (𝐵 ∩ (0..^𝑁)) ⊆ ℕ0)
55 inss2 3818 . . . . . . . . . 10 (𝐵 ∩ (0..^𝑁)) ⊆ (0..^𝑁)
56 ssfi 8140 . . . . . . . . . 10 (((0..^𝑁) ∈ Fin ∧ (𝐵 ∩ (0..^𝑁)) ⊆ (0..^𝑁)) → (𝐵 ∩ (0..^𝑁)) ∈ Fin)
5710, 55, 56sylancl 693 . . . . . . . . 9 (𝜑 → (𝐵 ∩ (0..^𝑁)) ∈ Fin)
58 elfpw 8228 . . . . . . . . 9 ((𝐵 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) ↔ ((𝐵 ∩ (0..^𝑁)) ⊆ ℕ0 ∧ (𝐵 ∩ (0..^𝑁)) ∈ Fin))
5954, 57, 58sylanbrc 697 . . . . . . . 8 (𝜑 → (𝐵 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin))
6022ffvelrni 6324 . . . . . . . 8 ((𝐵 ∩ (0..^𝑁)) ∈ (𝒫 ℕ0 ∩ Fin) → (𝐾‘(𝐵 ∩ (0..^𝑁))) ∈ ℕ0)
6159, 60syl 17 . . . . . . 7 (𝜑 → (𝐾‘(𝐵 ∩ (0..^𝑁))) ∈ ℕ0)
6261nn0cnd 11313 . . . . . 6 (𝜑 → (𝐾‘(𝐵 ∩ (0..^𝑁))) ∈ ℂ)
6352, 62addcld 10019 . . . . 5 (𝜑 → ((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))) ∈ ℂ)
64 ifcl 4108 . . . . . . . 8 (((2↑𝑁) ∈ ℕ0 ∧ 0 ∈ ℕ0) → if(𝑁𝐴, (2↑𝑁), 0) ∈ ℕ0)
6529, 30, 64sylancl 693 . . . . . . 7 (𝜑 → if(𝑁𝐴, (2↑𝑁), 0) ∈ ℕ0)
6665nn0cnd 11313 . . . . . 6 (𝜑 → if(𝑁𝐴, (2↑𝑁), 0) ∈ ℂ)
67 ifcl 4108 . . . . . . . 8 (((2↑𝑁) ∈ ℕ0 ∧ 0 ∈ ℕ0) → if(𝑁𝐵, (2↑𝑁), 0) ∈ ℕ0)
6829, 30, 67sylancl 693 . . . . . . 7 (𝜑 → if(𝑁𝐵, (2↑𝑁), 0) ∈ ℕ0)
6968nn0cnd 11313 . . . . . 6 (𝜑 → if(𝑁𝐵, (2↑𝑁), 0) ∈ ℂ)
7066, 69addcld 10019 . . . . 5 (𝜑 → (if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0)) ∈ ℂ)
7163, 70addcld 10019 . . . 4 (𝜑 → (((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))) + (if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0))) ∈ ℂ)
7229nn0cnd 11313 . . . . . 6 (𝜑 → (2↑𝑁) ∈ ℂ)
7372adantr 481 . . . . 5 ((𝜑 ∧ ∅ ∈ (𝐶𝑁)) → (2↑𝑁) ∈ ℂ)
74 0cnd 9993 . . . . 5 ((𝜑 ∧ ¬ ∅ ∈ (𝐶𝑁)) → 0 ∈ ℂ)
7573, 74ifclda 4098 . . . 4 (𝜑 → if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0) ∈ ℂ)
76 sadadd2lem.1 . . . . . 6 (𝜑 → ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)) = ((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))))
772, 3, 4, 28sadval 15121 . . . . . . . . 9 (𝜑 → (𝑁 ∈ (𝐴 sadd 𝐵) ↔ hadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁))))
7877ifbid 4086 . . . . . . . 8 (𝜑 → if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) = if(hadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁)), (2↑𝑁), 0))
792, 3, 4, 28sadcp1 15120 . . . . . . . . 9 (𝜑 → (∅ ∈ (𝐶‘(𝑁 + 1)) ↔ cadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁))))
8027nn0cnd 11313 . . . . . . . . . . 11 (𝜑 → 2 ∈ ℂ)
8180, 28expp1d 12965 . . . . . . . . . 10 (𝜑 → (2↑(𝑁 + 1)) = ((2↑𝑁) · 2))
8272, 80mulcomd 10021 . . . . . . . . . 10 (𝜑 → ((2↑𝑁) · 2) = (2 · (2↑𝑁)))
8381, 82eqtrd 2655 . . . . . . . . 9 (𝜑 → (2↑(𝑁 + 1)) = (2 · (2↑𝑁)))
8479, 83ifbieq1d 4087 . . . . . . . 8 (𝜑 → if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0) = if(cadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁)), (2 · (2↑𝑁)), 0))
8578, 84oveq12d 6633 . . . . . . 7 (𝜑 → (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)) = (if(hadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁)), (2↑𝑁), 0) + if(cadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁)), (2 · (2↑𝑁)), 0)))
86 sadadd2lem2 15115 . . . . . . . 8 ((2↑𝑁) ∈ ℂ → (if(hadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁)), (2↑𝑁), 0) + if(cadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁)), (2 · (2↑𝑁)), 0)) = ((if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0)) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)))
8772, 86syl 17 . . . . . . 7 (𝜑 → (if(hadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁)), (2↑𝑁), 0) + if(cadd(𝑁𝐴, 𝑁𝐵, ∅ ∈ (𝐶𝑁)), (2 · (2↑𝑁)), 0)) = ((if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0)) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)))
8885, 87eqtrd 2655 . . . . . 6 (𝜑 → (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)) = ((if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0)) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)))
8976, 88oveq12d 6633 . . . . 5 (𝜑 → (((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)) + (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0))) = (((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))) + ((if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0)) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0))))
9025, 41, 75add32d 10223 . . . . 5 (𝜑 → (((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0))) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)) = (((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)) + (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0))))
9163, 70, 75addassd 10022 . . . . 5 (𝜑 → ((((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))) + (if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0))) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)) = (((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))) + ((if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0)) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0))))
9289, 90, 913eqtr4d 2665 . . . 4 (𝜑 → (((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0))) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)) = ((((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))) + (if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0))) + if(∅ ∈ (𝐶𝑁), (2↑𝑁), 0)))
9342, 71, 75, 92addcan2ad 10202 . . 3 (𝜑 → ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0))) = (((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))) + (if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0))))
9425, 33, 40addassd 10022 . . 3 (𝜑 → (((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0)) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)) = ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + (if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0))))
9552, 66, 62, 69add4d 10224 . . 3 (𝜑 → (((𝐾‘(𝐴 ∩ (0..^𝑁))) + if(𝑁𝐴, (2↑𝑁), 0)) + ((𝐾‘(𝐵 ∩ (0..^𝑁))) + if(𝑁𝐵, (2↑𝑁), 0))) = (((𝐾‘(𝐴 ∩ (0..^𝑁))) + (𝐾‘(𝐵 ∩ (0..^𝑁)))) + (if(𝑁𝐴, (2↑𝑁), 0) + if(𝑁𝐵, (2↑𝑁), 0))))
9693, 94, 953eqtr4d 2665 . 2 (𝜑 → (((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0)) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)) = (((𝐾‘(𝐴 ∩ (0..^𝑁))) + if(𝑁𝐴, (2↑𝑁), 0)) + ((𝐾‘(𝐵 ∩ (0..^𝑁))) + if(𝑁𝐵, (2↑𝑁), 0))))
9720bitsinvp1 15114 . . . 4 (((𝐴 sadd 𝐵) ⊆ ℕ0𝑁 ∈ ℕ0) → (𝐾‘((𝐴 sadd 𝐵) ∩ (0..^(𝑁 + 1)))) = ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0)))
987, 28, 97syl2anc 692 . . 3 (𝜑 → (𝐾‘((𝐴 sadd 𝐵) ∩ (0..^(𝑁 + 1)))) = ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0)))
9998oveq1d 6630 . 2 (𝜑 → ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^(𝑁 + 1)))) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)) = (((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^𝑁))) + if(𝑁 ∈ (𝐴 sadd 𝐵), (2↑𝑁), 0)) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)))
10020bitsinvp1 15114 . . . 4 ((𝐴 ⊆ ℕ0𝑁 ∈ ℕ0) → (𝐾‘(𝐴 ∩ (0..^(𝑁 + 1)))) = ((𝐾‘(𝐴 ∩ (0..^𝑁))) + if(𝑁𝐴, (2↑𝑁), 0)))
1012, 28, 100syl2anc 692 . . 3 (𝜑 → (𝐾‘(𝐴 ∩ (0..^(𝑁 + 1)))) = ((𝐾‘(𝐴 ∩ (0..^𝑁))) + if(𝑁𝐴, (2↑𝑁), 0)))
10220bitsinvp1 15114 . . . 4 ((𝐵 ⊆ ℕ0𝑁 ∈ ℕ0) → (𝐾‘(𝐵 ∩ (0..^(𝑁 + 1)))) = ((𝐾‘(𝐵 ∩ (0..^𝑁))) + if(𝑁𝐵, (2↑𝑁), 0)))
1033, 28, 102syl2anc 692 . . 3 (𝜑 → (𝐾‘(𝐵 ∩ (0..^(𝑁 + 1)))) = ((𝐾‘(𝐵 ∩ (0..^𝑁))) + if(𝑁𝐵, (2↑𝑁), 0)))
104101, 103oveq12d 6633 . 2 (𝜑 → ((𝐾‘(𝐴 ∩ (0..^(𝑁 + 1)))) + (𝐾‘(𝐵 ∩ (0..^(𝑁 + 1))))) = (((𝐾‘(𝐴 ∩ (0..^𝑁))) + if(𝑁𝐴, (2↑𝑁), 0)) + ((𝐾‘(𝐵 ∩ (0..^𝑁))) + if(𝑁𝐵, (2↑𝑁), 0))))
10596, 99, 1043eqtr4d 2665 1 (𝜑 → ((𝐾‘((𝐴 sadd 𝐵) ∩ (0..^(𝑁 + 1)))) + if(∅ ∈ (𝐶‘(𝑁 + 1)), (2↑(𝑁 + 1)), 0)) = ((𝐾‘(𝐴 ∩ (0..^(𝑁 + 1)))) + (𝐾‘(𝐵 ∩ (0..^(𝑁 + 1))))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 384   = wceq 1480  haddwhad 1529  caddwcad 1542  wcel 1987  {crab 2912  cin 3559  wss 3560  c0 3897  ifcif 4064  𝒫 cpw 4136  cmpt 4683  ccnv 5083  cres 5086  wf 5853  1-1-ontowf1o 5856  cfv 5857  (class class class)co 6615  cmpt2 6617  1𝑜c1o 7513  2𝑜c2o 7514  Fincfn 7915  cc 9894  0cc0 9896  1c1 9897   + caddc 9899   · cmul 9901  cmin 10226  2c2 11030  0cn0 11252  ..^cfzo 12422  seqcseq 12757  cexp 12816  bitscbits 15084   sadd csad 15085
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1836  ax-6 1885  ax-7 1932  ax-8 1989  ax-9 1996  ax-10 2016  ax-11 2031  ax-12 2044  ax-13 2245  ax-ext 2601  ax-rep 4741  ax-sep 4751  ax-nul 4759  ax-pow 4813  ax-pr 4877  ax-un 6914  ax-inf2 8498  ax-cnex 9952  ax-resscn 9953  ax-1cn 9954  ax-icn 9955  ax-addcl 9956  ax-addrcl 9957  ax-mulcl 9958  ax-mulrcl 9959  ax-mulcom 9960  ax-addass 9961  ax-mulass 9962  ax-distr 9963  ax-i2m1 9964  ax-1ne0 9965  ax-1rid 9966  ax-rnegex 9967  ax-rrecex 9968  ax-cnre 9969  ax-pre-lttri 9970  ax-pre-lttrn 9971  ax-pre-ltadd 9972  ax-pre-mulgt0 9973  ax-pre-sup 9974
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-xor 1462  df-tru 1483  df-fal 1486  df-had 1530  df-cad 1543  df-ex 1702  df-nf 1707  df-sb 1878  df-eu 2473  df-mo 2474  df-clab 2608  df-cleq 2614  df-clel 2617  df-nfc 2750  df-ne 2791  df-nel 2894  df-ral 2913  df-rex 2914  df-reu 2915  df-rmo 2916  df-rab 2917  df-v 3192  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-pss 3576  df-nul 3898  df-if 4065  df-pw 4138  df-sn 4156  df-pr 4158  df-tp 4160  df-op 4162  df-uni 4410  df-int 4448  df-iun 4494  df-disj 4594  df-br 4624  df-opab 4684  df-mpt 4685  df-tr 4723  df-eprel 4995  df-id 4999  df-po 5005  df-so 5006  df-fr 5043  df-se 5044  df-we 5045  df-xp 5090  df-rel 5091  df-cnv 5092  df-co 5093  df-dm 5094  df-rn 5095  df-res 5096  df-ima 5097  df-pred 5649  df-ord 5695  df-on 5696  df-lim 5697  df-suc 5698  df-iota 5820  df-fun 5859  df-fn 5860  df-f 5861  df-f1 5862  df-fo 5863  df-f1o 5864  df-fv 5865  df-isom 5866  df-riota 6576  df-ov 6618  df-oprab 6619  df-mpt2 6620  df-om 7028  df-1st 7128  df-2nd 7129  df-wrecs 7367  df-recs 7428  df-rdg 7466  df-1o 7520  df-2o 7521  df-oadd 7524  df-er 7702  df-map 7819  df-pm 7820  df-en 7916  df-dom 7917  df-sdom 7918  df-fin 7919  df-sup 8308  df-inf 8309  df-oi 8375  df-card 8725  df-cda 8950  df-pnf 10036  df-mnf 10037  df-xr 10038  df-ltxr 10039  df-le 10040  df-sub 10228  df-neg 10229  df-div 10645  df-nn 10981  df-2 11039  df-3 11040  df-n0 11253  df-xnn0 11324  df-z 11338  df-uz 11648  df-rp 11793  df-fz 12285  df-fzo 12423  df-fl 12549  df-mod 12625  df-seq 12758  df-exp 12817  df-hash 13074  df-cj 13789  df-re 13790  df-im 13791  df-sqrt 13925  df-abs 13926  df-clim 14169  df-sum 14367  df-dvds 14927  df-bits 15087  df-sad 15116
This theorem is referenced by:  sadadd2  15125
  Copyright terms: Public domain W3C validator