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

Theorem ixpfi2 8147
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 3796 . . . 4 (𝐴𝐶) ⊆ 𝐶
3 ssfi 8065 . . . 4 ((𝐶 ∈ Fin ∧ (𝐴𝐶) ⊆ 𝐶) → (𝐴𝐶) ∈ Fin)
41, 2, 3sylancl 693 . . 3 (𝜑 → (𝐴𝐶) ∈ Fin)
5 inss1 3795 . . . 4 (𝐴𝐶) ⊆ 𝐴
6 ixpfi2.2 . . . . 5 ((𝜑𝑥𝐴) → 𝐵 ∈ Fin)
76ralrimiva 2949 . . . 4 (𝜑 → ∀𝑥𝐴 𝐵 ∈ Fin)
8 ssralv 3629 . . . 4 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 𝐵 ∈ Fin → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin))
95, 7, 8mpsyl 66 . . 3 (𝜑 → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
10 ixpfi 8146 . . 3 (((𝐴𝐶) ∈ Fin ∧ ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin) → X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
114, 9, 10syl2anc 691 . 2 (𝜑X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
12 resixp 7829 . . . . 5 (((𝐴𝐶) ⊆ 𝐴𝑓X𝑥𝐴 𝐵) → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
135, 12mpan 702 . . . 4 (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
1413a1i 11 . . 3 (𝜑 → (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵))
15 simprl 790 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓X𝑥𝐴 𝐵)
16 vex 3176 . . . . . . . . . . 11 𝑓 ∈ V
1716elixp 7801 . . . . . . . . . 10 (𝑓X𝑥𝐴 𝐵 ↔ (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1815, 17sylib 207 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1918simprd 478 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵)
20 simprr 792 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔X𝑥𝐴 𝐵)
21 vex 3176 . . . . . . . . . . 11 𝑔 ∈ V
2221elixp 7801 . . . . . . . . . 10 (𝑔X𝑥𝐴 𝐵 ↔ (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2320, 22sylib 207 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2423simprd 478 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵)
25 r19.26 3046 . . . . . . . . 9 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) ↔ (∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
26 difss 3699 . . . . . . . . . . 11 (𝐴𝐶) ⊆ 𝐴
27 ssralv 3629 . . . . . . . . . . 11 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵)))
2826, 27ax-mp 5 . . . . . . . . . 10 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵))
29 ixpfi2.3 . . . . . . . . . . . . . . . 16 ((𝜑𝑥 ∈ (𝐴𝐶)) → 𝐵 ⊆ {𝐷})
3029sseld 3567 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) ∈ {𝐷}))
31 elsni 4142 . . . . . . . . . . . . . . 15 ((𝑓𝑥) ∈ {𝐷} → (𝑓𝑥) = 𝐷)
3230, 31syl6 34 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) = 𝐷))
3329sseld 3567 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) ∈ {𝐷}))
34 elsni 4142 . . . . . . . . . . . . . . 15 ((𝑔𝑥) ∈ {𝐷} → (𝑔𝑥) = 𝐷)
3533, 34syl6 34 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) = 𝐷))
3632, 35anim12d 584 . . . . . . . . . . . . 13 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷)))
37 eqtr3 2631 . . . . . . . . . . . . 13 (((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷) → (𝑓𝑥) = (𝑔𝑥))
3836, 37syl6 34 . . . . . . . . . . . 12 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → (𝑓𝑥) = (𝑔𝑥)))
3938ralimdva 2945 . . . . . . . . . . 11 (𝜑 → (∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4039adantr 480 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4128, 40syl5 33 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4225, 41syl5bir 232 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4319, 24, 42mp2and 711 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
4443biantrud 527 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))))
45 fvres 6117 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑓 ↾ (𝐴𝐶))‘𝑥) = (𝑓𝑥))
46 fvres 6117 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑔 ↾ (𝐴𝐶))‘𝑥) = (𝑔𝑥))
4745, 46eqeq12d 2625 . . . . . . 7 (𝑥 ∈ (𝐴𝐶) → (((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ (𝑓𝑥) = (𝑔𝑥)))
4847ralbiia 2962 . . . . . 6 (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
49 inundif 3998 . . . . . . . 8 ((𝐴𝐶) ∪ (𝐴𝐶)) = 𝐴
5049raleqi 3119 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥))
51 ralunb 3756 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5250, 51bitr3i 265 . . . . . 6 (∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5344, 48, 523bitr4g 302 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
5418simpld 474 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓 Fn 𝐴)
55 fnssres 5918 . . . . . . 7 ((𝑓 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5654, 5, 55sylancl 693 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5723simpld 474 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔 Fn 𝐴)
58 fnssres 5918 . . . . . . 7 ((𝑔 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5957, 5, 58sylancl 693 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
60 eqfnfv 6219 . . . . . 6 (((𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶) ∧ (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
6156, 59, 60syl2anc 691 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
62 eqfnfv 6219 . . . . . 6 ((𝑓 Fn 𝐴𝑔 Fn 𝐴) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6354, 57, 62syl2anc 691 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6453, 61, 633bitr4d 299 . . . 4 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔))
6564ex 449 . . 3 (𝜑 → ((𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔)))
6614, 65dom2lem 7881 . 2 (𝜑 → (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵)
67 f1fi 8136 . 2 ((X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin ∧ (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵) → X𝑥𝐴 𝐵 ∈ Fin)
6811, 66, 67syl2anc 691 1 (𝜑X𝑥𝐴 𝐵 ∈ Fin)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383   = wceq 1475  wcel 1977  wral 2896  cdif 3537  cun 3538  cin 3539  wss 3540  {csn 4125  cmpt 4643  cres 5040   Fn wfn 5799  1-1wf1 5801  cfv 5804  Xcixp 7794  Fincfn 7841
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-3or 1032  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-reu 2903  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-pss 3556  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-tp 4130  df-op 4132  df-uni 4373  df-int 4411  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-tr 4681  df-eprel 4949  df-id 4953  df-po 4959  df-so 4960  df-fr 4997  df-we 4999  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-pred 5597  df-ord 5643  df-on 5644  df-lim 5645  df-suc 5646  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-ov 6552  df-oprab 6553  df-mpt2 6554  df-om 6958  df-1st 7059  df-2nd 7060  df-wrecs 7294  df-recs 7355  df-rdg 7393  df-1o 7447  df-2o 7448  df-oadd 7451  df-er 7629  df-map 7746  df-pm 7747  df-ixp 7795  df-en 7842  df-dom 7843  df-sdom 7844  df-fin 7845
This theorem is referenced by:  psrbaglefi  19193  eulerpartlemb  29757
  Copyright terms: Public domain W3C validator