MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  ixpfi2 Structured version   Visualization version   GIF version

Theorem ixpfi2 9306
Description: A Cartesian product of finite sets such that all but finitely many are singletons is finite. (Note that 𝐵(𝑥) and 𝐷(𝑥) are both possibly dependent on 𝑥.) (Contributed by Mario Carneiro, 25-Jan-2015.)
Hypotheses
Ref Expression
ixpfi2.1 (𝜑𝐶 ∈ Fin)
ixpfi2.2 ((𝜑𝑥𝐴) → 𝐵 ∈ Fin)
ixpfi2.3 ((𝜑𝑥 ∈ (𝐴𝐶)) → 𝐵 ⊆ {𝐷})
Assertion
Ref Expression
ixpfi2 (𝜑X𝑥𝐴 𝐵 ∈ Fin)
Distinct variable groups:   𝑥,𝐴   𝑥,𝐶   𝜑,𝑥
Allowed substitution hints:   𝐵(𝑥)   𝐷(𝑥)

Proof of Theorem ixpfi2
Dummy variables 𝑓 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ixpfi2.1 . . . 4 (𝜑𝐶 ∈ Fin)
2 inss2 4198 . . . 4 (𝐴𝐶) ⊆ 𝐶
3 ssfi 9156 . . . 4 ((𝐶 ∈ Fin ∧ (𝐴𝐶) ⊆ 𝐶) → (𝐴𝐶) ∈ Fin)
41, 2, 3sylancl 597 . . 3 (𝜑 → (𝐴𝐶) ∈ Fin)
5 inss1 4197 . . . 4 (𝐴𝐶) ⊆ 𝐴
6 ixpfi2.2 . . . . 5 ((𝜑𝑥𝐴) → 𝐵 ∈ Fin)
76ralrimiva 3163 . . . 4 (𝜑 → ∀𝑥𝐴 𝐵 ∈ Fin)
8 ssralv 4014 . . . 4 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 𝐵 ∈ Fin → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin))
95, 7, 8mpsyl 69 . . 3 (𝜑 → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
10 ixpfi 9305 . . 3 (((𝐴𝐶) ∈ Fin ∧ ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin) → X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
114, 9, 10syl2anc 595 . 2 (𝜑X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
12 resixp 8930 . . . . 5 (((𝐴𝐶) ⊆ 𝐴𝑓X𝑥𝐴 𝐵) → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
135, 12mpan 702 . . . 4 (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
1413a1i 11 . . 3 (𝜑 → (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵))
15 simprl 782 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓X𝑥𝐴 𝐵)
16 vex 3467 . . . . . . . . . . 11 𝑓 ∈ V
1716elixp 8901 . . . . . . . . . 10 (𝑓X𝑥𝐴 𝐵 ↔ (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1815, 17sylib 221 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1918simprd 500 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵)
20 simprr 784 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔X𝑥𝐴 𝐵)
21 vex 3467 . . . . . . . . . . 11 𝑔 ∈ V
2221elixp 8901 . . . . . . . . . 10 (𝑔X𝑥𝐴 𝐵 ↔ (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2320, 22sylib 221 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2423simprd 500 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵)
25 r19.26 3131 . . . . . . . . 9 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) ↔ (∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
26 difss 4098 . . . . . . . . . . 11 (𝐴𝐶) ⊆ 𝐴
27 ssralv 4014 . . . . . . . . . . 11 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵)))
2826, 27ax-mp 5 . . . . . . . . . 10 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵))
29 ixpfi2.3 . . . . . . . . . . . . . . . 16 ((𝜑𝑥 ∈ (𝐴𝐶)) → 𝐵 ⊆ {𝐷})
3029sseld 3944 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) ∈ {𝐷}))
31 elsni 4611 . . . . . . . . . . . . . . 15 ((𝑓𝑥) ∈ {𝐷} → (𝑓𝑥) = 𝐷)
3230, 31syl6 36 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) = 𝐷))
3329sseld 3944 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) ∈ {𝐷}))
34 elsni 4611 . . . . . . . . . . . . . . 15 ((𝑔𝑥) ∈ {𝐷} → (𝑔𝑥) = 𝐷)
3533, 34syl6 36 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) = 𝐷))
3632, 35anim12d 620 . . . . . . . . . . . . 13 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷)))
37 eqtr3 2791 . . . . . . . . . . . . 13 (((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷) → (𝑓𝑥) = (𝑔𝑥))
3836, 37syl6 36 . . . . . . . . . . . 12 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → (𝑓𝑥) = (𝑔𝑥)))
3938ralimdva 3183 . . . . . . . . . . 11 (𝜑 → (∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4039adantr 485 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4128, 40syl5 35 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4225, 41biimtrrid 246 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4319, 24, 42mp2and 711 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
4443biantrud 540 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))))
45 fvres 6901 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑓 ↾ (𝐴𝐶))‘𝑥) = (𝑓𝑥))
46 fvres 6901 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑔 ↾ (𝐴𝐶))‘𝑥) = (𝑔𝑥))
4745, 46eqeq12d 2785 . . . . . . 7 (𝑥 ∈ (𝐴𝐶) → (((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ (𝑓𝑥) = (𝑔𝑥)))
4847ralbiia 3115 . . . . . 6 (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
49 inundif 4445 . . . . . . . 8 ((𝐴𝐶) ∪ (𝐴𝐶)) = 𝐴
5049raleqi 3327 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥))
51 ralunb 4158 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5250, 51bitr3i 280 . . . . . 6 (∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5344, 48, 523bitr4g 317 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
5418simpld 499 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓 Fn 𝐴)
55 fnssres 6659 . . . . . . 7 ((𝑓 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5654, 5, 55sylancl 597 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5723simpld 499 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔 Fn 𝐴)
58 fnssres 6659 . . . . . . 7 ((𝑔 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5957, 5, 58sylancl 597 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
60 eqfnfv 7026 . . . . . 6 (((𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶) ∧ (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
6156, 59, 60syl2anc 595 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
62 eqfnfv 7026 . . . . . 6 ((𝑓 Fn 𝐴𝑔 Fn 𝐴) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6354, 57, 62syl2anc 595 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6453, 61, 633bitr4d 314 . . . 4 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔))
6564ex 417 . . 3 (𝜑 → ((𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔)))
6614, 65dom2lem 8988 . 2 (𝜑 → (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵)
67 f1fi 9273 . 2 ((X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin ∧ (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵) → X𝑥𝐴 𝐵 ∈ Fin)
6811, 66, 67syl2anc 595 1 (𝜑X𝑥𝐴 𝐵 ∈ Fin)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400   = wceq 1567  wcel 2149  wral 3085  cdif 3910  cun 3911  cin 3912  wss 3913  {csn 4594  cmpt 5196  cres 5664   Fn wfn 6532  1-1wf1 6534  cfv 6537  Xcixp 8894  Fincfn 8942
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1822  ax-4 1836  ax-5 1937  ax-6 1994  ax-7 2035  ax-8 2151  ax-9 2159  ax-10 2182  ax-11 2198  ax-12 2219  ax-ext 2741  ax-sep 5261  ax-nul 5271  ax-pow 5337  ax-pr 5405  ax-un 7733
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1102  df-3an 1103  df-tru 1570  df-fal 1580  df-ex 1807  df-nf 1811  df-sb 2098  df-mo 2573  df-eu 2603  df-clab 2748  df-cleq 2761  df-clel 2844  df-nfc 2918  df-ne 2965  df-ral 3086  df-rex 3096  df-reu 3377  df-rab 3424  df-v 3465  df-sbc 3754  df-csb 3862  df-dif 3916  df-un 3918  df-in 3920  df-ss 3930  df-pss 3933  df-nul 4295  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4877  df-iun 4962  df-br 5114  df-opab 5178  df-mpt 5197  df-tr 5223  df-id 5557  df-eprel 5562  df-po 5570  df-so 5571  df-fr 5615  df-we 5617  df-xp 5668  df-rel 5669  df-cnv 5670  df-co 5671  df-dm 5672  df-rn 5673  df-res 5674  df-ima 5675  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 7414  df-oprab 7415  df-mpo 7416  df-om 7862  df-1st 7985  df-2nd 7986  df-1o 8452  df-map 8825  df-pm 8826  df-ixp 8895  df-en 8943  df-dom 8944  df-fin 8946
This theorem is referenced by:  psrbaglefi  22044  eulerpartlemb  34702
  Copyright terms: Public domain W3C validator