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

Theorem ixpfi2 8806
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 4156 . . . 4 (𝐴𝐶) ⊆ 𝐶
3 ssfi 8722 . . . 4 ((𝐶 ∈ Fin ∧ (𝐴𝐶) ⊆ 𝐶) → (𝐴𝐶) ∈ Fin)
41, 2, 3sylancl 589 . . 3 (𝜑 → (𝐴𝐶) ∈ Fin)
5 inss1 4155 . . . 4 (𝐴𝐶) ⊆ 𝐴
6 ixpfi2.2 . . . . 5 ((𝜑𝑥𝐴) → 𝐵 ∈ Fin)
76ralrimiva 3149 . . . 4 (𝜑 → ∀𝑥𝐴 𝐵 ∈ Fin)
8 ssralv 3981 . . . 4 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 𝐵 ∈ Fin → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin))
95, 7, 8mpsyl 68 . . 3 (𝜑 → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
10 ixpfi 8805 . . 3 (((𝐴𝐶) ∈ Fin ∧ ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin) → X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
114, 9, 10syl2anc 587 . 2 (𝜑X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
12 resixp 8480 . . . . 5 (((𝐴𝐶) ⊆ 𝐴𝑓X𝑥𝐴 𝐵) → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
135, 12mpan 689 . . . 4 (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
1413a1i 11 . . 3 (𝜑 → (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵))
15 simprl 770 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓X𝑥𝐴 𝐵)
16 vex 3444 . . . . . . . . . . 11 𝑓 ∈ V
1716elixp 8451 . . . . . . . . . 10 (𝑓X𝑥𝐴 𝐵 ↔ (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1815, 17sylib 221 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1918simprd 499 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵)
20 simprr 772 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔X𝑥𝐴 𝐵)
21 vex 3444 . . . . . . . . . . 11 𝑔 ∈ V
2221elixp 8451 . . . . . . . . . 10 (𝑔X𝑥𝐴 𝐵 ↔ (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2320, 22sylib 221 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2423simprd 499 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵)
25 r19.26 3137 . . . . . . . . 9 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) ↔ (∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
26 difss 4059 . . . . . . . . . . 11 (𝐴𝐶) ⊆ 𝐴
27 ssralv 3981 . . . . . . . . . . 11 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵)))
2826, 27ax-mp 5 . . . . . . . . . 10 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵))
29 ixpfi2.3 . . . . . . . . . . . . . . . 16 ((𝜑𝑥 ∈ (𝐴𝐶)) → 𝐵 ⊆ {𝐷})
3029sseld 3914 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) ∈ {𝐷}))
31 elsni 4542 . . . . . . . . . . . . . . 15 ((𝑓𝑥) ∈ {𝐷} → (𝑓𝑥) = 𝐷)
3230, 31syl6 35 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) = 𝐷))
3329sseld 3914 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) ∈ {𝐷}))
34 elsni 4542 . . . . . . . . . . . . . . 15 ((𝑔𝑥) ∈ {𝐷} → (𝑔𝑥) = 𝐷)
3533, 34syl6 35 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) = 𝐷))
3632, 35anim12d 611 . . . . . . . . . . . . 13 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷)))
37 eqtr3 2820 . . . . . . . . . . . . 13 (((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷) → (𝑓𝑥) = (𝑔𝑥))
3836, 37syl6 35 . . . . . . . . . . . 12 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → (𝑓𝑥) = (𝑔𝑥)))
3938ralimdva 3144 . . . . . . . . . . 11 (𝜑 → (∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4039adantr 484 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4128, 40syl5 34 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4225, 41syl5bir 246 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4319, 24, 42mp2and 698 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
4443biantrud 535 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))))
45 fvres 6664 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑓 ↾ (𝐴𝐶))‘𝑥) = (𝑓𝑥))
46 fvres 6664 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑔 ↾ (𝐴𝐶))‘𝑥) = (𝑔𝑥))
4745, 46eqeq12d 2814 . . . . . . 7 (𝑥 ∈ (𝐴𝐶) → (((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ (𝑓𝑥) = (𝑔𝑥)))
4847ralbiia 3132 . . . . . 6 (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
49 inundif 4385 . . . . . . . 8 ((𝐴𝐶) ∪ (𝐴𝐶)) = 𝐴
5049raleqi 3362 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥))
51 ralunb 4118 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5250, 51bitr3i 280 . . . . . 6 (∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5344, 48, 523bitr4g 317 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
5418simpld 498 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓 Fn 𝐴)
55 fnssres 6442 . . . . . . 7 ((𝑓 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5654, 5, 55sylancl 589 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5723simpld 498 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔 Fn 𝐴)
58 fnssres 6442 . . . . . . 7 ((𝑔 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5957, 5, 58sylancl 589 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
60 eqfnfv 6779 . . . . . 6 (((𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶) ∧ (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
6156, 59, 60syl2anc 587 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
62 eqfnfv 6779 . . . . . 6 ((𝑓 Fn 𝐴𝑔 Fn 𝐴) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6354, 57, 62syl2anc 587 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6453, 61, 633bitr4d 314 . . . 4 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔))
6564ex 416 . . 3 (𝜑 → ((𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔)))
6614, 65dom2lem 8532 . 2 (𝜑 → (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵)
67 f1fi 8795 . 2 ((X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin ∧ (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵) → X𝑥𝐴 𝐵 ∈ Fin)
6811, 66, 67syl2anc 587 1 (𝜑X𝑥𝐴 𝐵 ∈ Fin)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399   = wceq 1538  wcel 2111  wral 3106  cdif 3878  cun 3879  cin 3880  wss 3881  {csn 4525  cmpt 5110  cres 5521   Fn wfn 6319  1-1wf1 6321  cfv 6324  Xcixp 8444  Fincfn 8492
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770  ax-sep 5167  ax-nul 5174  ax-pow 5231  ax-pr 5295  ax-un 7441
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2598  df-eu 2629  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-ne 2988  df-ral 3111  df-rex 3112  df-reu 3113  df-rab 3115  df-v 3443  df-sbc 3721  df-csb 3829  df-dif 3884  df-un 3886  df-in 3888  df-ss 3898  df-pss 3900  df-nul 4244  df-if 4426  df-pw 4499  df-sn 4526  df-pr 4528  df-tp 4530  df-op 4532  df-uni 4801  df-int 4839  df-iun 4883  df-br 5031  df-opab 5093  df-mpt 5111  df-tr 5137  df-id 5425  df-eprel 5430  df-po 5438  df-so 5439  df-fr 5478  df-we 5480  df-xp 5525  df-rel 5526  df-cnv 5527  df-co 5528  df-dm 5529  df-rn 5530  df-res 5531  df-ima 5532  df-pred 6116  df-ord 6162  df-on 6163  df-lim 6164  df-suc 6165  df-iota 6283  df-fun 6326  df-fn 6327  df-f 6328  df-f1 6329  df-fo 6330  df-f1o 6331  df-fv 6332  df-ov 7138  df-oprab 7139  df-mpo 7140  df-om 7561  df-1st 7671  df-2nd 7672  df-wrecs 7930  df-recs 7991  df-rdg 8029  df-1o 8085  df-2o 8086  df-oadd 8089  df-er 8272  df-map 8391  df-pm 8392  df-ixp 8445  df-en 8493  df-dom 8494  df-sdom 8495  df-fin 8496
This theorem is referenced by:  psrbaglefi  20610  eulerpartlemb  31736
  Copyright terms: Public domain W3C validator