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 32558
Description: Functional property of uncurrying. (Contributed by Brendan Leahy, 2-Jun-2021.)
Assertion
Ref Expression
uncf (𝐹:𝐴⟶(𝐶𝑚 𝐵) → uncurry 𝐹:(𝐴 × 𝐵)⟶𝐶)

Proof of Theorem uncf
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ffvelrn 6265 . . . . . 6 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) → (𝐹𝑥) ∈ (𝐶𝑚 𝐵))
2 elmapi 7765 . . . . . 6 ((𝐹𝑥) ∈ (𝐶𝑚 𝐵) → (𝐹𝑥):𝐵𝐶)
31, 2syl 17 . . . . 5 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) → (𝐹𝑥):𝐵𝐶)
43ffvelrnda 6267 . . . 4 (((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) ∧ 𝑦𝐵) → ((𝐹𝑥)‘𝑦) ∈ 𝐶)
54anasss 677 . . 3 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ (𝑥𝐴𝑦𝐵)) → ((𝐹𝑥)‘𝑦) ∈ 𝐶)
65ralrimivva 2954 . 2 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → ∀𝑥𝐴𝑦𝐵 ((𝐹𝑥)‘𝑦) ∈ 𝐶)
7 df-unc 7281 . . . . 5 uncurry 𝐹 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝑦(𝐹𝑥)𝑧}
8 df-br 4584 . . . . . . . . . . 11 (𝑦(𝐹𝑥)𝑧 ↔ ⟨𝑦, 𝑧⟩ ∈ (𝐹𝑥))
9 elfvdm 6130 . . . . . . . . . . 11 (⟨𝑦, 𝑧⟩ ∈ (𝐹𝑥) → 𝑥 ∈ dom 𝐹)
108, 9sylbi 206 . . . . . . . . . 10 (𝑦(𝐹𝑥)𝑧𝑥 ∈ dom 𝐹)
11 fdm 5964 . . . . . . . . . . 11 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → dom 𝐹 = 𝐴)
1211eleq2d 2673 . . . . . . . . . 10 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → (𝑥 ∈ dom 𝐹𝑥𝐴))
1310, 12syl5ib 233 . . . . . . . . 9 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → (𝑦(𝐹𝑥)𝑧𝑥𝐴))
1413pm4.71rd 665 . . . . . . . 8 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑥𝐴𝑦(𝐹𝑥)𝑧)))
15 elmapfun 7767 . . . . . . . . . . 11 ((𝐹𝑥) ∈ (𝐶𝑚 𝐵) → Fun (𝐹𝑥))
16 funbrfv2b 6150 . . . . . . . . . . 11 (Fun (𝐹𝑥) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑦 ∈ dom (𝐹𝑥) ∧ ((𝐹𝑥)‘𝑦) = 𝑧)))
171, 15, 163syl 18 . . . . . . . . . 10 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑦 ∈ dom (𝐹𝑥) ∧ ((𝐹𝑥)‘𝑦) = 𝑧)))
18 fdm 5964 . . . . . . . . . . . . 13 ((𝐹𝑥):𝐵𝐶 → dom (𝐹𝑥) = 𝐵)
191, 2, 183syl 18 . . . . . . . . . . . 12 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) → dom (𝐹𝑥) = 𝐵)
2019eleq2d 2673 . . . . . . . . . . 11 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) → (𝑦 ∈ dom (𝐹𝑥) ↔ 𝑦𝐵))
21 eqcom 2617 . . . . . . . . . . . 12 (((𝐹𝑥)‘𝑦) = 𝑧𝑧 = ((𝐹𝑥)‘𝑦))
2221a1i 11 . . . . . . . . . . 11 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) → (((𝐹𝑥)‘𝑦) = 𝑧𝑧 = ((𝐹𝑥)‘𝑦)))
2320, 22anbi12d 743 . . . . . . . . . 10 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) → ((𝑦 ∈ dom (𝐹𝑥) ∧ ((𝐹𝑥)‘𝑦) = 𝑧) ↔ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦))))
2417, 23bitrd 267 . . . . . . . . 9 ((𝐹:𝐴⟶(𝐶𝑚 𝐵) ∧ 𝑥𝐴) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦))))
2524pm5.32da 671 . . . . . . . 8 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → ((𝑥𝐴𝑦(𝐹𝑥)𝑧) ↔ (𝑥𝐴 ∧ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦)))))
2614, 25bitrd 267 . . . . . . 7 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → (𝑦(𝐹𝑥)𝑧 ↔ (𝑥𝐴 ∧ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦)))))
27 anass 679 . . . . . . 7 (((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦)) ↔ (𝑥𝐴 ∧ (𝑦𝐵𝑧 = ((𝐹𝑥)‘𝑦))))
2826, 27syl6bbr 277 . . . . . 6 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → (𝑦(𝐹𝑥)𝑧 ↔ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))))
2928oprabbidv 6607 . . . . 5 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝑦(𝐹𝑥)𝑧} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))})
307, 29syl5eq 2656 . . . 4 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → uncurry 𝐹 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))})
3130feq1d 5943 . . 3 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → (uncurry 𝐹:(𝐴 × 𝐵)⟶𝐶 ↔ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))}:(𝐴 × 𝐵)⟶𝐶))
32 df-mpt2 6554 . . . . 5 (𝑥𝐴, 𝑦𝐵 ↦ ((𝐹𝑥)‘𝑦)) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))}
3332eqcomi 2619 . . . 4 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))} = (𝑥𝐴, 𝑦𝐵 ↦ ((𝐹𝑥)‘𝑦))
3433fmpt2 7126 . . 3 (∀𝑥𝐴𝑦𝐵 ((𝐹𝑥)‘𝑦) ∈ 𝐶 ↔ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = ((𝐹𝑥)‘𝑦))}:(𝐴 × 𝐵)⟶𝐶)
3531, 34syl6bbr 277 . 2 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → (uncurry 𝐹:(𝐴 × 𝐵)⟶𝐶 ↔ ∀𝑥𝐴𝑦𝐵 ((𝐹𝑥)‘𝑦) ∈ 𝐶))
366, 35mpbird 246 1 (𝐹:𝐴⟶(𝐶𝑚 𝐵) → uncurry 𝐹:(𝐴 × 𝐵)⟶𝐶)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383   = wceq 1475  wcel 1977  wral 2896  cop 4131   class class class wbr 4583   × cxp 5036  dom cdm 5038  Fun wfun 5798  wf 5800  cfv 5804  (class class class)co 6549  {coprab 6550  cmpt2 6551  uncurry cunc 7279  𝑚 cmap 7744
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-ral 2901  df-rex 2902  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-id 4953  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-fv 5812  df-ov 6552  df-oprab 6553  df-mpt2 6554  df-1st 7059  df-2nd 7060  df-unc 7281  df-map 7746
This theorem is referenced by:  curunc  32561  matunitlindflem2  32576
  Copyright terms: Public domain W3C validator