Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  mptiffisupp Structured version   Visualization version   GIF version

Theorem mptiffisupp 33109
Description: Conditions for a mapping function defined with a conditional to have finite support. (Contributed by Thierry Arnoux, 20-Feb-2025.)
Hypotheses
Ref Expression
mptiffisupp.f 𝐹 = (𝑥𝐴 ↦ if(𝑥𝐵, 𝐶, 𝑍))
mptiffisupp.a (𝜑𝐴𝑈)
mptiffisupp.b (𝜑𝐵 ∈ Fin)
mptiffisupp.c ((𝜑𝑥𝐵) → 𝐶𝑉)
mptiffisupp.z (𝜑𝑍𝑊)
Assertion
Ref Expression
mptiffisupp (𝜑𝐹 finSupp 𝑍)
Distinct variable groups:   𝑥,𝐴   𝑥,𝐵   𝑥,𝑉   𝑥,𝑍   𝜑,𝑥
Allowed substitution hints:   𝐶(𝑥)   𝑈(𝑥)   𝐹(𝑥)   𝑊(𝑥)

Proof of Theorem mptiffisupp
StepHypRef Expression
1 mptiffisupp.f . . 3 𝐹 = (𝑥𝐴 ↦ if(𝑥𝐵, 𝐶, 𝑍))
2 mptiffisupp.a . . . 4 (𝜑𝐴𝑈)
32mptexd 7229 . . 3 (𝜑 → (𝑥𝐴 ↦ if(𝑥𝐵, 𝐶, 𝑍)) ∈ V)
41, 3eqeltrid 2869 . 2 (𝜑𝐹 ∈ V)
5 mptiffisupp.z . 2 (𝜑𝑍𝑊)
61funmpt2 6579 . . 3 Fun 𝐹
76a1i 11 . 2 (𝜑 → Fun 𝐹)
8 partfun 6686 . . . . 5 (𝑥𝐴 ↦ if(𝑥𝐵, 𝐶, 𝑍)) = ((𝑥 ∈ (𝐴𝐵) ↦ 𝐶) ∪ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍))
91, 8eqtri 2788 . . . 4 𝐹 = ((𝑥 ∈ (𝐴𝐵) ↦ 𝐶) ∪ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍))
109oveq1i 7429 . . 3 (𝐹 supp 𝑍) = (((𝑥 ∈ (𝐴𝐵) ↦ 𝐶) ∪ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍)) supp 𝑍)
11 inss2 4190 . . . . . . . . 9 (𝐴𝐵) ⊆ 𝐵
1211a1i 11 . . . . . . . 8 (𝜑 → (𝐴𝐵) ⊆ 𝐵)
1312sselda 3938 . . . . . . 7 ((𝜑𝑥 ∈ (𝐴𝐵)) → 𝑥𝐵)
14 mptiffisupp.c . . . . . . 7 ((𝜑𝑥𝐵) → 𝐶𝑉)
1513, 14syldan 603 . . . . . 6 ((𝜑𝑥 ∈ (𝐴𝐵)) → 𝐶𝑉)
1615fmpttd 7114 . . . . 5 (𝜑 → (𝑥 ∈ (𝐴𝐵) ↦ 𝐶):(𝐴𝐵)⟶𝑉)
17 incom 4162 . . . . . 6 (𝐵𝐴) = (𝐴𝐵)
18 mptiffisupp.b . . . . . . 7 (𝜑𝐵 ∈ Fin)
19 infi 9237 . . . . . . 7 (𝐵 ∈ Fin → (𝐵𝐴) ∈ Fin)
2018, 19syl 18 . . . . . 6 (𝜑 → (𝐵𝐴) ∈ Fin)
2117, 20eqeltrrid 2870 . . . . 5 (𝜑 → (𝐴𝐵) ∈ Fin)
2216, 21, 5fidmfisupp 9339 . . . 4 (𝜑 → (𝑥 ∈ (𝐴𝐵) ↦ 𝐶) finSupp 𝑍)
23 difexg 5302 . . . . . 6 (𝐴𝑈 → (𝐴𝐵) ∈ V)
24 mptexg 7226 . . . . . 6 ((𝐴𝐵) ∈ V → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∈ V)
252, 23, 243syl 19 . . . . 5 (𝜑 → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∈ V)
26 funmpt 6578 . . . . . 6 Fun (𝑥 ∈ (𝐴𝐵) ↦ 𝑍)
2726a1i 11 . . . . 5 (𝜑 → Fun (𝑥 ∈ (𝐴𝐵) ↦ 𝑍))
28 supppreima 33107 . . . . . . . 8 ((Fun (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∧ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∈ V ∧ 𝑍𝑊) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) supp 𝑍) = ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})))
2926, 25, 5, 28mp3an2i 1495 . . . . . . 7 (𝜑 → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) supp 𝑍) = ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})))
30 simpr 490 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝐴𝐵) = ∅)
3130mpteq1d 5203 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = (𝑥 ∈ ∅ ↦ 𝑍))
32 mpt0 6681 . . . . . . . . . . . . 13 (𝑥 ∈ ∅ ↦ 𝑍) = ∅
3331, 32eqtrdi 2816 . . . . . . . . . . . 12 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = ∅)
3433cnveqd 5863 . . . . . . . . . . 11 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = ∅)
35 cnv0 5871 . . . . . . . . . . 11 ∅ = ∅
3634, 35eqtrdi 2816 . . . . . . . . . 10 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = ∅)
3736imaeq1d 6063 . . . . . . . . 9 ((𝜑 ∧ (𝐴𝐵) = ∅) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = (∅ “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})))
38 0ima 6082 . . . . . . . . 9 (∅ “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ∅
3937, 38eqtrdi 2816 . . . . . . . 8 ((𝜑 ∧ (𝐴𝐵) = ∅) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ∅)
40 eqid 2765 . . . . . . . . . . . . 13 (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = (𝑥 ∈ (𝐴𝐵) ↦ 𝑍)
41 simpr 490 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → (𝐴𝐵) ≠ ∅)
4240, 41rnmptc 7212 . . . . . . . . . . . 12 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = {𝑍})
4342difeq1d 4080 . . . . . . . . . . 11 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍}) = ({𝑍} ∖ {𝑍}))
44 difid 4332 . . . . . . . . . . 11 ({𝑍} ∖ {𝑍}) = ∅
4543, 44eqtrdi 2816 . . . . . . . . . 10 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍}) = ∅)
4645imaeq2d 6064 . . . . . . . . 9 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ ∅))
47 ima0 6081 . . . . . . . . 9 ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ ∅) = ∅
4846, 47eqtrdi 2816 . . . . . . . 8 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ∅)
4939, 48pm2.61dane 3047 . . . . . . 7 (𝜑 → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ∅)
5029, 49eqtrd 2800 . . . . . 6 (𝜑 → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) supp 𝑍) = ∅)
51 0fi 9046 . . . . . 6 ∅ ∈ Fin
5250, 51eqeltrdi 2873 . . . . 5 (𝜑 → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) supp 𝑍) ∈ Fin)
5325, 5, 27, 52isfsuppd 9333 . . . 4 (𝜑 → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) finSupp 𝑍)
5422, 53fsuppun 9354 . . 3 (𝜑 → (((𝑥 ∈ (𝐴𝐵) ↦ 𝐶) ∪ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍)) supp 𝑍) ∈ Fin)
5510, 54eqeltrid 2869 . 2 (𝜑 → (𝐹 supp 𝑍) ∈ Fin)
564, 5, 7, 55isfsuppd 9333 1 (𝜑𝐹 finSupp 𝑍)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wcel 2146  wne 2960  Vcvv 3457  cdif 3903  cun 3904  cin 3905  wss 3906  c0 4286  ifcif 4489  {csn 4591   class class class wbr 5111  cmpt 5194  ccnv 5662  ran crn 5664  cima 5666  Fun wfun 6534  (class class class)co 7419   supp csupp 8162  Fincfn 8949   finSupp cfsupp 9328
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 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pr 5406  ax-un 7742
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 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3082  df-rex 3092  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-ov 7422  df-oprab 7423  df-mpo 7424  df-om 7869  df-supp 8163  df-1o 8459  df-en 8950  df-fin 8953  df-fsupp 9329
This theorem is used by:  elrspunsn  33801  gsummoncoe1fzo  33951  mplmonprod  34008  extdgfialglem2  34147
  Copyright terms: Public domain W3C validator