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 33165
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 7223 . . 3 (𝜑 → (𝑥𝐴 ↦ if(𝑥𝐵, 𝐶, 𝑍)) ∈ V)
41, 3eqeltrid 2864 . 2 (𝜑𝐹 ∈ V)
5 mptiffisupp.z . 2 (𝜑𝑍𝑊)
61funmpt2 6572 . . 3 Fun 𝐹
76a1i 11 . 2 (𝜑 → Fun 𝐹)
8 partfun 6679 . . . . 5 (𝑥𝐴 ↦ if(𝑥𝐵, 𝐶, 𝑍)) = ((𝑥 ∈ (𝐴𝐵) ↦ 𝐶) ∪ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍))
91, 8eqtri 2783 . . . 4 𝐹 = ((𝑥 ∈ (𝐴𝐵) ↦ 𝐶) ∪ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍))
109oveq1i 7423 . . 3 (𝐹 supp 𝑍) = (((𝑥 ∈ (𝐴𝐵) ↦ 𝐶) ∪ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍)) supp 𝑍)
11 inss2 4183 . . . . . . . . 9 (𝐴𝐵) ⊆ 𝐵
1211a1i 11 . . . . . . . 8 (𝜑 → (𝐴𝐵) ⊆ 𝐵)
1312sselda 3931 . . . . . . 7 ((𝜑𝑥 ∈ (𝐴𝐵)) → 𝑥𝐵)
14 mptiffisupp.c . . . . . . 7 ((𝜑𝑥𝐵) → 𝐶𝑉)
1513, 14syldan 603 . . . . . 6 ((𝜑𝑥 ∈ (𝐴𝐵)) → 𝐶𝑉)
1615fmpttd 7108 . . . . 5 (𝜑 → (𝑥 ∈ (𝐴𝐵) ↦ 𝐶):(𝐴𝐵)⟶𝑉)
17 incom 4155 . . . . . 6 (𝐵𝐴) = (𝐴𝐵)
18 mptiffisupp.b . . . . . . 7 (𝜑𝐵 ∈ Fin)
19 infi 9240 . . . . . . 7 (𝐵 ∈ Fin → (𝐵𝐴) ∈ Fin)
2018, 19syl 18 . . . . . 6 (𝜑 → (𝐵𝐴) ∈ Fin)
2117, 20eqeltrrid 2865 . . . . 5 (𝜑 → (𝐴𝐵) ∈ Fin)
2216, 21, 5fidmfisupp 9342 . . . 4 (𝜑 → (𝑥 ∈ (𝐴𝐵) ↦ 𝐶) finSupp 𝑍)
23 difexg 5294 . . . . . 6 (𝐴𝑈 → (𝐴𝐵) ∈ V)
24 mptexg 7220 . . . . . 6 ((𝐴𝐵) ∈ V → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∈ V)
252, 23, 243syl 19 . . . . 5 (𝜑 → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∈ V)
26 funmpt 6571 . . . . . 6 Fun (𝑥 ∈ (𝐴𝐵) ↦ 𝑍)
2726a1i 11 . . . . 5 (𝜑 → Fun (𝑥 ∈ (𝐴𝐵) ↦ 𝑍))
28 supppreima 33163 . . . . . . . 8 ((Fun (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∧ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∈ V ∧ 𝑍𝑊) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) supp 𝑍) = ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})))
2926, 25, 5, 28mp3an2i 1495 . . . . . . 7 (𝜑 → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) supp 𝑍) = ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})))
30 simpr 490 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝐴𝐵) = ∅)
3130mpteq1d 5195 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = (𝑥 ∈ ∅ ↦ 𝑍))
32 mpt0 6674 . . . . . . . . . . . . 13 (𝑥 ∈ ∅ ↦ 𝑍) = ∅
3331, 32eqtrdi 2811 . . . . . . . . . . . 12 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = ∅)
3433cnveqd 5855 . . . . . . . . . . 11 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = ∅)
35 cnv0 5863 . . . . . . . . . . 11 ∅ = ∅
3634, 35eqtrdi 2811 . . . . . . . . . 10 ((𝜑 ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = ∅)
3736imaeq1d 6055 . . . . . . . . 9 ((𝜑 ∧ (𝐴𝐵) = ∅) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = (∅ “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})))
38 0ima 6074 . . . . . . . . 9 (∅ “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ∅
3937, 38eqtrdi 2811 . . . . . . . 8 ((𝜑 ∧ (𝐴𝐵) = ∅) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ∅)
40 eqid 2760 . . . . . . . . . . . . 13 (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = (𝑥 ∈ (𝐴𝐵) ↦ 𝑍)
41 simpr 490 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → (𝐴𝐵) ≠ ∅)
4240, 41rnmptc 7206 . . . . . . . . . . . 12 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) = {𝑍})
4342difeq1d 4073 . . . . . . . . . . 11 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍}) = ({𝑍} ∖ {𝑍}))
44 difid 4325 . . . . . . . . . . 11 ({𝑍} ∖ {𝑍}) = ∅
4543, 44eqtrdi 2811 . . . . . . . . . 10 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍}) = ∅)
4645imaeq2d 6056 . . . . . . . . 9 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ ∅))
47 ima0 6073 . . . . . . . . 9 ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ ∅) = ∅
4846, 47eqtrdi 2811 . . . . . . . 8 ((𝜑 ∧ (𝐴𝐵) ≠ ∅) → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ∅)
4939, 48pm2.61dane 3042 . . . . . . 7 (𝜑 → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) “ (ran (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) ∖ {𝑍})) = ∅)
5029, 49eqtrd 2795 . . . . . 6 (𝜑 → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) supp 𝑍) = ∅)
51 0fi 9049 . . . . . 6 ∅ ∈ Fin
5250, 51eqeltrdi 2868 . . . . 5 (𝜑 → ((𝑥 ∈ (𝐴𝐵) ↦ 𝑍) supp 𝑍) ∈ Fin)
5325, 5, 27, 52isfsuppd 9336 . . . 4 (𝜑 → (𝑥 ∈ (𝐴𝐵) ↦ 𝑍) finSupp 𝑍)
5422, 53fsuppun 9357 . . 3 (𝜑 → (((𝑥 ∈ (𝐴𝐵) ↦ 𝐶) ∪ (𝑥 ∈ (𝐴𝐵) ↦ 𝑍)) supp 𝑍) ∈ Fin)
5510, 54eqeltrid 2864 . 2 (𝜑 → (𝐹 supp 𝑍) ∈ Fin)
564, 5, 7, 55isfsuppd 9336 1 (𝜑𝐹 finSupp 𝑍)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wcel 2145  wne 2955  Vcvv 3450  cdif 3896  cun 3897  cin 3898  wss 3899  c0 4279  ifcif 4482  {csn 4584   class class class wbr 5103  cmpt 5186  ccnv 5654  ran crn 5656  cima 5658  Fun wfun 6527  (class class class)co 7413   supp csupp 8158  Fincfn 8952   finSupp cfsupp 9331
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 2213  ax-ext 2732  ax-rep 5232  ax-sep 5251  ax-nul 5263  ax-pr 5398  ax-un 7736
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 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-ord 6360  df-on 6361  df-lim 6362  df-suc 6363  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-ov 7416  df-oprab 7417  df-mpo 7418  df-om 7863  df-supp 8159  df-1o 8455  df-en 8953  df-fin 8956  df-fsupp 9332
This theorem is used by:  elrspunsn  33857  gsummoncoe1fzo  34007  mplmonprod  34064  extdgfialglem2  34203
  Copyright terms: Public domain W3C validator