Users' Mathboxes Mathbox for Richard Penner < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  tfsconcat0i Structured version   Visualization version   GIF version

Theorem tfsconcat0i 44188
Description: The concatentation with the empty series leaves the series unchanged. (Contributed by RP, 28-Feb-2025.)
Hypothesis
Ref Expression
tfsconcat.op + = (𝑎 ∈ V, 𝑏 ∈ V ↦ (𝑎 ∪ {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((dom 𝑎 +o dom 𝑏) ∖ dom 𝑎) ∧ ∃𝑧 ∈ dom 𝑏(𝑥 = (dom 𝑎 +o 𝑧) ∧ 𝑦 = (𝑏𝑧)))}))
Assertion
Ref Expression
tfsconcat0i (((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) → (𝐴 = ∅ → (𝐴 + 𝐵) = 𝐵))
Distinct variable groups:   𝐴,𝑎,𝑏,𝑥,𝑦,𝑧   𝐵,𝑎,𝑏,𝑥,𝑦,𝑧   𝐶,𝑎,𝑏,𝑥,𝑦,𝑧   𝐷,𝑎,𝑏,𝑥,𝑦,𝑧
Allowed substitution hints:   + (𝑥, 𝑦, 𝑧, 𝑎, 𝑏)

Proof of Theorem tfsconcat0i
StepHypRef Expression
1 simpr 490 . . . . 5 ((((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) ∧ 𝐴 = ∅) → 𝐴 = ∅)
2 fnrel 6638 . . . . . . . . . . 11 (𝐴 Fn 𝐶 → Rel 𝐴)
3 reldm0 5916 . . . . . . . . . . 11 (Rel 𝐴 → (𝐴 = ∅ ↔ dom 𝐴 = ∅))
42, 3syl 18 . . . . . . . . . 10 (𝐴 Fn 𝐶 → (𝐴 = ∅ ↔ dom 𝐴 = ∅))
5 fndm 6639 . . . . . . . . . . 11 (𝐴 Fn 𝐶 → dom 𝐴 = 𝐶)
65eqeq1d 2764 . . . . . . . . . 10 (𝐴 Fn 𝐶 → (dom 𝐴 = ∅ ↔ 𝐶 = ∅))
74, 6bitrd 282 . . . . . . . . 9 (𝐴 Fn 𝐶 → (𝐴 = ∅ ↔ 𝐶 = ∅))
87ad2antrr 739 . . . . . . . 8 (((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) → (𝐴 = ∅ ↔ 𝐶 = ∅))
9 simpr 490 . . . . . . . . . 10 ((𝐴 Fn 𝐶𝐵 Fn 𝐷) → 𝐵 Fn 𝐷)
10 simpr 490 . . . . . . . . . 10 ((𝐶 ∈ On ∧ 𝐷 ∈ On) → 𝐷 ∈ On)
119, 10anim12i 625 . . . . . . . . 9 (((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) → (𝐵 Fn 𝐷𝐷 ∈ On))
1211anim1i 627 . . . . . . . 8 ((((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) ∧ 𝐶 = ∅) → ((𝐵 Fn 𝐷𝐷 ∈ On) ∧ 𝐶 = ∅))
138, 12sylbida 604 . . . . . . 7 ((((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) ∧ 𝐴 = ∅) → ((𝐵 Fn 𝐷𝐷 ∈ On) ∧ 𝐶 = ∅))
14 oveq1 7423 . . . . . . . . . . . . 13 (𝐶 = ∅ → (𝐶 +o 𝐷) = (∅ +o 𝐷))
15 id 23 . . . . . . . . . . . . 13 (𝐶 = ∅ → 𝐶 = ∅)
1614, 15difeq12d 4078 . . . . . . . . . . . 12 (𝐶 = ∅ → ((𝐶 +o 𝐷) ∖ 𝐶) = ((∅ +o 𝐷) ∖ ∅))
17 dif0 4330 . . . . . . . . . . . 12 ((∅ +o 𝐷) ∖ ∅) = (∅ +o 𝐷)
1816, 17eqtrdi 2813 . . . . . . . . . . 11 (𝐶 = ∅ → ((𝐶 +o 𝐷) ∖ 𝐶) = (∅ +o 𝐷))
1918eleq2d 2848 . . . . . . . . . 10 (𝐶 = ∅ → (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ↔ 𝑥 ∈ (∅ +o 𝐷)))
20 oveq1 7423 . . . . . . . . . . . . 13 (𝐶 = ∅ → (𝐶 +o 𝑧) = (∅ +o 𝑧))
2120eqeq2d 2773 . . . . . . . . . . . 12 (𝐶 = ∅ → (𝑥 = (𝐶 +o 𝑧) ↔ 𝑥 = (∅ +o 𝑧)))
2221anbi1d 643 . . . . . . . . . . 11 (𝐶 = ∅ → ((𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)) ↔ (𝑥 = (∅ +o 𝑧) ∧ 𝑦 = (𝐵𝑧))))
2322rexbidv 3188 . . . . . . . . . 10 (𝐶 = ∅ → (∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)) ↔ ∃𝑧𝐷 (𝑥 = (∅ +o 𝑧) ∧ 𝑦 = (𝐵𝑧))))
2419, 23anbi12d 644 . . . . . . . . 9 (𝐶 = ∅ → ((𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧))) ↔ (𝑥 ∈ (∅ +o 𝐷) ∧ ∃𝑧𝐷 (𝑥 = (∅ +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))))
25 oa0r 8528 . . . . . . . . . . . 12 (𝐷 ∈ On → (∅ +o 𝐷) = 𝐷)
2625eleq2d 2848 . . . . . . . . . . 11 (𝐷 ∈ On → (𝑥 ∈ (∅ +o 𝐷) ↔ 𝑥𝐷))
27 onelon 6386 . . . . . . . . . . . . 13 ((𝐷 ∈ On ∧ 𝑧𝐷) → 𝑧 ∈ On)
28 oa0r 8528 . . . . . . . . . . . . . . 15 (𝑧 ∈ On → (∅ +o 𝑧) = 𝑧)
2928eqeq2d 2773 . . . . . . . . . . . . . 14 (𝑧 ∈ On → (𝑥 = (∅ +o 𝑧) ↔ 𝑥 = 𝑧))
3029anbi1d 643 . . . . . . . . . . . . 13 (𝑧 ∈ On → ((𝑥 = (∅ +o 𝑧) ∧ 𝑦 = (𝐵𝑧)) ↔ (𝑥 = 𝑧𝑦 = (𝐵𝑧))))
3127, 30syl 18 . . . . . . . . . . . 12 ((𝐷 ∈ On ∧ 𝑧𝐷) → ((𝑥 = (∅ +o 𝑧) ∧ 𝑦 = (𝐵𝑧)) ↔ (𝑥 = 𝑧𝑦 = (𝐵𝑧))))
3231rexbidva 3186 . . . . . . . . . . 11 (𝐷 ∈ On → (∃𝑧𝐷 (𝑥 = (∅ +o 𝑧) ∧ 𝑦 = (𝐵𝑧)) ↔ ∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧))))
3326, 32anbi12d 644 . . . . . . . . . 10 (𝐷 ∈ On → ((𝑥 ∈ (∅ +o 𝐷) ∧ ∃𝑧𝐷 (𝑥 = (∅ +o 𝑧) ∧ 𝑦 = (𝐵𝑧))) ↔ (𝑥𝐷 ∧ ∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧)))))
34 df-rex 3089 . . . . . . . . . . . . . . . . 17 (∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧)) ↔ ∃𝑧(𝑧𝐷 ∧ (𝑥 = 𝑧𝑦 = (𝐵𝑧))))
35 an12 658 . . . . . . . . . . . . . . . . . . 19 ((𝑧𝐷 ∧ (𝑥 = 𝑧𝑦 = (𝐵𝑧))) ↔ (𝑥 = 𝑧 ∧ (𝑧𝐷𝑦 = (𝐵𝑧))))
36 eqcom 2769 . . . . . . . . . . . . . . . . . . . 20 (𝑥 = 𝑧𝑧 = 𝑥)
3736anbi1i 636 . . . . . . . . . . . . . . . . . . 19 ((𝑥 = 𝑧 ∧ (𝑧𝐷𝑦 = (𝐵𝑧))) ↔ (𝑧 = 𝑥 ∧ (𝑧𝐷𝑦 = (𝐵𝑧))))
3835, 37bitri 278 . . . . . . . . . . . . . . . . . 18 ((𝑧𝐷 ∧ (𝑥 = 𝑧𝑦 = (𝐵𝑧))) ↔ (𝑧 = 𝑥 ∧ (𝑧𝐷𝑦 = (𝐵𝑧))))
3938exbii 1881 . . . . . . . . . . . . . . . . 17 (∃𝑧(𝑧𝐷 ∧ (𝑥 = 𝑧𝑦 = (𝐵𝑧))) ↔ ∃𝑧(𝑧 = 𝑥 ∧ (𝑧𝐷𝑦 = (𝐵𝑧))))
40 eleq1w 2845 . . . . . . . . . . . . . . . . . . 19 (𝑧 = 𝑥 → (𝑧𝐷𝑥𝐷))
41 fveq2 6882 . . . . . . . . . . . . . . . . . . . 20 (𝑧 = 𝑥 → (𝐵𝑧) = (𝐵𝑥))
4241eqeq2d 2773 . . . . . . . . . . . . . . . . . . 19 (𝑧 = 𝑥 → (𝑦 = (𝐵𝑧) ↔ 𝑦 = (𝐵𝑥)))
4340, 42anbi12d 644 . . . . . . . . . . . . . . . . . 18 (𝑧 = 𝑥 → ((𝑧𝐷𝑦 = (𝐵𝑧)) ↔ (𝑥𝐷𝑦 = (𝐵𝑥))))
4443equsexvw 2038 . . . . . . . . . . . . . . . . 17 (∃𝑧(𝑧 = 𝑥 ∧ (𝑧𝐷𝑦 = (𝐵𝑧))) ↔ (𝑥𝐷𝑦 = (𝐵𝑥)))
4534, 39, 443bitri 300 . . . . . . . . . . . . . . . 16 (∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧)) ↔ (𝑥𝐷𝑦 = (𝐵𝑥)))
4645baib 545 . . . . . . . . . . . . . . 15 (𝑥𝐷 → (∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧)) ↔ 𝑦 = (𝐵𝑥)))
4746adantl 487 . . . . . . . . . . . . . 14 ((𝐵 Fn 𝐷𝑥𝐷) → (∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧)) ↔ 𝑦 = (𝐵𝑥)))
48 eqcom 2769 . . . . . . . . . . . . . 14 (𝑦 = (𝐵𝑥) ↔ (𝐵𝑥) = 𝑦)
4947, 48bitrdi 290 . . . . . . . . . . . . 13 ((𝐵 Fn 𝐷𝑥𝐷) → (∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧)) ↔ (𝐵𝑥) = 𝑦))
50 fnbrfvb 6932 . . . . . . . . . . . . 13 ((𝐵 Fn 𝐷𝑥𝐷) → ((𝐵𝑥) = 𝑦𝑥𝐵𝑦))
5149, 50bitrd 282 . . . . . . . . . . . 12 ((𝐵 Fn 𝐷𝑥𝐷) → (∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧)) ↔ 𝑥𝐵𝑦))
5251pm5.32da 590 . . . . . . . . . . 11 (𝐵 Fn 𝐷 → ((𝑥𝐷 ∧ ∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧))) ↔ (𝑥𝐷𝑥𝐵𝑦)))
53 fnbr 6644 . . . . . . . . . . . . . 14 ((𝐵 Fn 𝐷𝑥𝐵𝑦) → 𝑥𝐷)
5453ex 418 . . . . . . . . . . . . 13 (𝐵 Fn 𝐷 → (𝑥𝐵𝑦𝑥𝐷))
5554pm4.71rd 572 . . . . . . . . . . . 12 (𝐵 Fn 𝐷 → (𝑥𝐵𝑦 ↔ (𝑥𝐷𝑥𝐵𝑦)))
56 df-br 5108 . . . . . . . . . . . 12 (𝑥𝐵𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝐵)
5755, 56bitr3di 289 . . . . . . . . . . 11 (𝐵 Fn 𝐷 → ((𝑥𝐷𝑥𝐵𝑦) ↔ ⟨𝑥, 𝑦⟩ ∈ 𝐵))
5852, 57bitrd 282 . . . . . . . . . 10 (𝐵 Fn 𝐷 → ((𝑥𝐷 ∧ ∃𝑧𝐷 (𝑥 = 𝑧𝑦 = (𝐵𝑧))) ↔ ⟨𝑥, 𝑦⟩ ∈ 𝐵))
5933, 58sylan9bbr 520 . . . . . . . . 9 ((𝐵 Fn 𝐷𝐷 ∈ On) → ((𝑥 ∈ (∅ +o 𝐷) ∧ ∃𝑧𝐷 (𝑥 = (∅ +o 𝑧) ∧ 𝑦 = (𝐵𝑧))) ↔ ⟨𝑥, 𝑦⟩ ∈ 𝐵))
6024, 59sylan9bbr 520 . . . . . . . 8 (((𝐵 Fn 𝐷𝐷 ∈ On) ∧ 𝐶 = ∅) → ((𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧))) ↔ ⟨𝑥, 𝑦⟩ ∈ 𝐵))
6160opabbidv 5175 . . . . . . 7 (((𝐵 Fn 𝐷𝐷 ∈ On) ∧ 𝐶 = ∅) → {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))} = {⟨𝑥, 𝑦⟩ ∣ ⟨𝑥, 𝑦⟩ ∈ 𝐵})
6213, 61syl 18 . . . . . 6 ((((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) ∧ 𝐴 = ∅) → {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))} = {⟨𝑥, 𝑦⟩ ∣ ⟨𝑥, 𝑦⟩ ∈ 𝐵})
63 fnrel 6638 . . . . . . . . 9 (𝐵 Fn 𝐷 → Rel 𝐵)
64 opabid2 5813 . . . . . . . . 9 (Rel 𝐵 → {⟨𝑥, 𝑦⟩ ∣ ⟨𝑥, 𝑦⟩ ∈ 𝐵} = 𝐵)
6563, 64syl 18 . . . . . . . 8 (𝐵 Fn 𝐷 → {⟨𝑥, 𝑦⟩ ∣ ⟨𝑥, 𝑦⟩ ∈ 𝐵} = 𝐵)
6665adantl 487 . . . . . . 7 ((𝐴 Fn 𝐶𝐵 Fn 𝐷) → {⟨𝑥, 𝑦⟩ ∣ ⟨𝑥, 𝑦⟩ ∈ 𝐵} = 𝐵)
6766ad2antrr 739 . . . . . 6 ((((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) ∧ 𝐴 = ∅) → {⟨𝑥, 𝑦⟩ ∣ ⟨𝑥, 𝑦⟩ ∈ 𝐵} = 𝐵)
6862, 67eqtrd 2797 . . . . 5 ((((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) ∧ 𝐴 = ∅) → {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))} = 𝐵)
691, 68uneq12d 4119 . . . 4 ((((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) ∧ 𝐴 = ∅) → (𝐴 ∪ {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))}) = (∅ ∪ 𝐵))
70 0un 4349 . . . 4 (∅ ∪ 𝐵) = 𝐵
7169, 70eqtrdi 2813 . . 3 ((((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) ∧ 𝐴 = ∅) → (𝐴 ∪ {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))}) = 𝐵)
7271ex 418 . 2 (((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) → (𝐴 = ∅ → (𝐴 ∪ {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))}) = 𝐵))
73 tfsconcat.op . . . 4 + = (𝑎 ∈ V, 𝑏 ∈ V ↦ (𝑎 ∪ {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((dom 𝑎 +o dom 𝑏) ∖ dom 𝑎) ∧ ∃𝑧 ∈ dom 𝑏(𝑥 = (dom 𝑎 +o 𝑧) ∧ 𝑦 = (𝑏𝑧)))}))
7473tfsconcatun 44180 . . 3 (((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) → (𝐴 + 𝐵) = (𝐴 ∪ {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))}))
7574eqeq1d 2764 . 2 (((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) → ((𝐴 + 𝐵) = 𝐵 ↔ (𝐴 ∪ {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ ((𝐶 +o 𝐷) ∖ 𝐶) ∧ ∃𝑧𝐷 (𝑥 = (𝐶 +o 𝑧) ∧ 𝑦 = (𝐵𝑧)))}) = 𝐵))
7672, 75sylibrd 262 1 (((𝐴 Fn 𝐶𝐵 Fn 𝐷) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On)) → (𝐴 = ∅ → (𝐴 + 𝐵) = 𝐵))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401   = wceq 1570  wex 1812  wcel 2145  wrex 3088  Vcvv 3453  cdif 3899  cun 3900  c0 4282  cop 4593   class class class wbr 5107  {copab 5171  dom cdm 5659  Rel wrel 5664  Oncon0 6361   Fn wfn 6532  cfv 6537  (class class class)co 7416  cmpo 7418   +o coa 8455
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 2215  ax-ext 2734  ax-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7739
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 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-int 4911  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-ov 7419  df-oprab 7420  df-mpo 7421  df-om 7866  df-2nd 7990  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-oadd 8462
This theorem is used by:  tfsconcat0b  44189
  Copyright terms: Public domain W3C validator