Users' Mathboxes Mathbox for Brendan Leahy < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  uncf Structured version   Visualization version   GIF version

Theorem uncf 36467
Description: Functional property of uncurrying. (Contributed by Brendan Leahy, 2-Jun-2021.)
Assertion
Ref Expression
uncf (𝐹:𝐴⟶(𝐶m 𝐵) → uncurry 𝐹:(𝐴 × 𝐵)⟶𝐶)

Proof of Theorem uncf
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ffvelcdm 7084 . . . . . 6 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) → (𝐹𝑥) ∈ (𝐶m 𝐵))
2 elmapi 8843 . . . . . 6 ((𝐹𝑥) ∈ (𝐶m 𝐵) → (𝐹𝑥):𝐵𝐶)
31, 2syl 17 . . . . 5 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) → (𝐹𝑥):𝐵𝐶)
43ffvelcdmda 7087 . . . 4 (((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) ∧ 𝑦𝐵) → ((𝐹𝑥)‘𝑦) ∈ 𝐶)
54anasss 468 . . 3 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ (𝑥𝐴𝑦𝐵)) → ((𝐹𝑥)‘𝑦) ∈ 𝐶)
65ralrimivva 3201 . 2 (𝐹:𝐴⟶(𝐶m 𝐵) → ∀𝑥𝐴𝑦𝐵 ((𝐹𝑥)‘𝑦) ∈ 𝐶)
7 df-unc 8253 . . . . 5 uncurry 𝐹 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝑦(𝐹𝑥)𝑧}
8 df-br 5150 . . . . . . . . . . 11 (𝑦(𝐹𝑥)𝑧 ↔ ⟨𝑦, 𝑧⟩ ∈ (𝐹𝑥))
9 elfvdm 6929 . . . . . . . . . . 11 (⟨𝑦, 𝑧⟩ ∈ (𝐹𝑥) → 𝑥 ∈ dom 𝐹)
108, 9sylbi 216 . . . . . . . . . 10 (𝑦(𝐹𝑥)𝑧𝑥 ∈ dom 𝐹)
11 fdm 6727 . . . . . . . . . . 11 (𝐹:𝐴⟶(𝐶m 𝐵) → dom 𝐹 = 𝐴)
1211eleq2d 2820 . . . . . . . . . 10 (𝐹:𝐴⟶(𝐶m 𝐵) → (𝑥 ∈ dom 𝐹𝑥𝐴))
1310, 12imbitrid 243 . . . . . . . . 9 (𝐹:𝐴⟶(𝐶m 𝐵) → (𝑦(𝐹𝑥)𝑧𝑥𝐴))
1413pm4.71rd 564 . . . . . . . 8 (𝐹:𝐴⟶(𝐶m 𝐵) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑥𝐴𝑦(𝐹𝑥)𝑧)))
15 elmapfun 8860 . . . . . . . . . . 11 ((𝐹𝑥) ∈ (𝐶m 𝐵) → Fun (𝐹𝑥))
16 funbrfv2b 6950 . . . . . . . . . . 11 (Fun (𝐹𝑥) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑦 ∈ dom (𝐹𝑥) ∧ ((𝐹𝑥)‘𝑦) = 𝑧)))
171, 15, 163syl 18 . . . . . . . . . 10 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑦 ∈ dom (𝐹𝑥) ∧ ((𝐹𝑥)‘𝑦) = 𝑧)))
18 fdm 6727 . . . . . . . . . . . . 13 ((𝐹𝑥):𝐵𝐶 → dom (𝐹𝑥) = 𝐵)
191, 2, 183syl 18 . . . . . . . . . . . 12 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) → dom (𝐹𝑥) = 𝐵)
2019eleq2d 2820 . . . . . . . . . . 11 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) → (𝑦 ∈ dom (𝐹𝑥) ↔ 𝑦𝐵))
21 eqcom 2740 . . . . . . . . . . . 12 (((𝐹𝑥)‘𝑦) = 𝑧𝑧 = ((𝐹𝑥)‘𝑦))
2221a1i 11 . . . . . . . . . . 11 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) → (((𝐹𝑥)‘𝑦) = 𝑧𝑧 = ((𝐹𝑥)‘𝑦)))
2320, 22anbi12d 632 . . . . . . . . . 10 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) → ((𝑦 ∈ dom (𝐹𝑥) ∧ ((𝐹𝑥)‘𝑦) = 𝑧) ↔ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦))))
2417, 23bitrd 279 . . . . . . . . 9 ((𝐹:𝐴⟶(𝐶m 𝐵) ∧ 𝑥𝐴) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦))))
2524pm5.32da 580 . . . . . . . 8 (𝐹:𝐴⟶(𝐶m 𝐵) → ((𝑥𝐴𝑦(𝐹𝑥)𝑧) ↔ (𝑥𝐴 ∧ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦)))))
2614, 25bitrd 279 . . . . . . 7 (𝐹:𝐴⟶(𝐶m 𝐵) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑥𝐴 ∧ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦)))))
27 anass 470 . . . . . . 7 (((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦)) ↔ (𝑥𝐴 ∧ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦))))
2826, 27bitr4di 289 . . . . . 6 (𝐹:𝐴⟶(𝐶m 𝐵) → (𝑦(𝐹𝑥)𝑧 ↔ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))))
2928oprabbidv 7475 . . . . 5 (𝐹:𝐴⟶(𝐶m 𝐵) → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝑦(𝐹𝑥)𝑧} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))})
307, 29eqtrid 2785 . . . 4 (𝐹:𝐴⟶(𝐶m 𝐵) → uncurry 𝐹 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))})
3130feq1d 6703 . . 3 (𝐹:𝐴⟶(𝐶m 𝐵) → (uncurry 𝐹:(𝐴 × 𝐵)⟶𝐶 ↔ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))}:(𝐴 × 𝐵)⟶𝐶))
32 df-mpo 7414 . . . . 5 (𝑥𝐴, 𝑦𝐵 ↦ ((𝐹𝑥)‘𝑦)) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))}
3332eqcomi 2742 . . . 4 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))} = (𝑥𝐴, 𝑦𝐵 ↦ ((𝐹𝑥)‘𝑦))
3433fmpo 8054 . . 3 (∀𝑥𝐴𝑦𝐵 ((𝐹𝑥)‘𝑦) ∈ 𝐶 ↔ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))}:(𝐴 × 𝐵)⟶𝐶)
3531, 34bitr4di 289 . 2 (𝐹:𝐴⟶(𝐶m 𝐵) → (uncurry 𝐹:(𝐴 × 𝐵)⟶𝐶 ↔ ∀𝑥𝐴𝑦𝐵 ((𝐹𝑥)‘𝑦) ∈ 𝐶))
366, 35mpbird 257 1 (𝐹:𝐴⟶(𝐶m 𝐵) → uncurry 𝐹:(𝐴 × 𝐵)⟶𝐶)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 397   = wceq 1542  wcel 2107  wral 3062  cop 4635   class class class wbr 5149   × cxp 5675  dom cdm 5677  Fun wfun 6538  wf 6540  cfv 6544  (class class class)co 7409  {coprab 7410  cmpo 7411  uncurry cunc 8251  m cmap 8820
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2155  ax-12 2172  ax-ext 2704  ax-sep 5300  ax-nul 5307  ax-pow 5364  ax-pr 5428  ax-un 7725
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 847  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1783  df-nf 1787  df-sb 2069  df-mo 2535  df-eu 2564  df-clab 2711  df-cleq 2725  df-clel 2811  df-nfc 2886  df-ne 2942  df-ral 3063  df-rex 3072  df-rab 3434  df-v 3477  df-sbc 3779  df-csb 3895  df-dif 3952  df-un 3954  df-in 3956  df-ss 3966  df-nul 4324  df-if 4530  df-pw 4605  df-sn 4630  df-pr 4632  df-op 4636  df-uni 4910  df-iun 5000  df-br 5150  df-opab 5212  df-mpt 5233  df-id 5575  df-xp 5683  df-rel 5684  df-cnv 5685  df-co 5686  df-dm 5687  df-rn 5688  df-res 5689  df-ima 5690  df-iota 6496  df-fun 6546  df-fn 6547  df-f 6548  df-fv 6552  df-ov 7412  df-oprab 7413  df-mpo 7414  df-1st 7975  df-2nd 7976  df-unc 8253  df-map 8822
This theorem is referenced by:  curunc  36470  matunitlindflem2  36485
  Copyright terms: Public domain W3C validator