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

Theorem ixpfi2 9262
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 4192 . . . 4 (𝐴𝐶) ⊆ 𝐶
3 ssfi 9109 . . . 4 ((𝐶 ∈ Fin ∧ (𝐴𝐶) ⊆ 𝐶) → (𝐴𝐶) ∈ Fin)
41, 2, 3sylancl 587 . . 3 (𝜑 → (𝐴𝐶) ∈ Fin)
5 inss1 4191 . . . 4 (𝐴𝐶) ⊆ 𝐴
6 ixpfi2.2 . . . . 5 ((𝜑𝑥𝐴) → 𝐵 ∈ Fin)
76ralrimiva 3130 . . . 4 (𝜑 → ∀𝑥𝐴 𝐵 ∈ Fin)
8 ssralv 4004 . . . 4 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 𝐵 ∈ Fin → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin))
95, 7, 8mpsyl 68 . . 3 (𝜑 → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
10 ixpfi 9261 . . 3 (((𝐴𝐶) ∈ Fin ∧ ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin) → X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
114, 9, 10syl2anc 585 . 2 (𝜑X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
12 resixp 8883 . . . . 5 (((𝐴𝐶) ⊆ 𝐴𝑓X𝑥𝐴 𝐵) → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
135, 12mpan 691 . . . 4 (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
1413a1i 11 . . 3 (𝜑 → (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵))
15 simprl 771 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓X𝑥𝐴 𝐵)
16 vex 3446 . . . . . . . . . . 11 𝑓 ∈ V
1716elixp 8854 . . . . . . . . . 10 (𝑓X𝑥𝐴 𝐵 ↔ (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1815, 17sylib 218 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1918simprd 495 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵)
20 simprr 773 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔X𝑥𝐴 𝐵)
21 vex 3446 . . . . . . . . . . 11 𝑔 ∈ V
2221elixp 8854 . . . . . . . . . 10 (𝑔X𝑥𝐴 𝐵 ↔ (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2320, 22sylib 218 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2423simprd 495 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵)
25 r19.26 3098 . . . . . . . . 9 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) ↔ (∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
26 difss 4090 . . . . . . . . . . 11 (𝐴𝐶) ⊆ 𝐴
27 ssralv 4004 . . . . . . . . . . 11 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵)))
2826, 27ax-mp 5 . . . . . . . . . 10 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵))
29 ixpfi2.3 . . . . . . . . . . . . . . . 16 ((𝜑𝑥 ∈ (𝐴𝐶)) → 𝐵 ⊆ {𝐷})
3029sseld 3934 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) ∈ {𝐷}))
31 elsni 4599 . . . . . . . . . . . . . . 15 ((𝑓𝑥) ∈ {𝐷} → (𝑓𝑥) = 𝐷)
3230, 31syl6 35 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) = 𝐷))
3329sseld 3934 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) ∈ {𝐷}))
34 elsni 4599 . . . . . . . . . . . . . . 15 ((𝑔𝑥) ∈ {𝐷} → (𝑔𝑥) = 𝐷)
3533, 34syl6 35 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) = 𝐷))
3632, 35anim12d 610 . . . . . . . . . . . . 13 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷)))
37 eqtr3 2759 . . . . . . . . . . . . 13 (((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷) → (𝑓𝑥) = (𝑔𝑥))
3836, 37syl6 35 . . . . . . . . . . . 12 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → (𝑓𝑥) = (𝑔𝑥)))
3938ralimdva 3150 . . . . . . . . . . 11 (𝜑 → (∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4039adantr 480 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4128, 40syl5 34 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4225, 41biimtrrid 243 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
4319, 24, 42mp2and 700 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
4443biantrud 531 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))))
45 fvres 6861 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑓 ↾ (𝐴𝐶))‘𝑥) = (𝑓𝑥))
46 fvres 6861 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑔 ↾ (𝐴𝐶))‘𝑥) = (𝑔𝑥))
4745, 46eqeq12d 2753 . . . . . . 7 (𝑥 ∈ (𝐴𝐶) → (((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ (𝑓𝑥) = (𝑔𝑥)))
4847ralbiia 3082 . . . . . 6 (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
49 inundif 4433 . . . . . . . 8 ((𝐴𝐶) ∪ (𝐴𝐶)) = 𝐴
5049raleqi 3296 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥))
51 ralunb 4151 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5250, 51bitr3i 277 . . . . . 6 (∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5344, 48, 523bitr4g 314 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
5418simpld 494 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓 Fn 𝐴)
55 fnssres 6623 . . . . . . 7 ((𝑓 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5654, 5, 55sylancl 587 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5723simpld 494 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔 Fn 𝐴)
58 fnssres 6623 . . . . . . 7 ((𝑔 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5957, 5, 58sylancl 587 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
60 eqfnfv 6985 . . . . . 6 (((𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶) ∧ (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
6156, 59, 60syl2anc 585 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
62 eqfnfv 6985 . . . . . 6 ((𝑓 Fn 𝐴𝑔 Fn 𝐴) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6354, 57, 62syl2anc 585 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6453, 61, 633bitr4d 311 . . . 4 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔))
6564ex 412 . . 3 (𝜑 → ((𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔)))
6614, 65dom2lem 8941 . 2 (𝜑 → (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵)
67 f1fi 9226 . 2 ((X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin ∧ (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵) → X𝑥𝐴 𝐵 ∈ Fin)
6811, 66, 67syl2anc 585 1 (𝜑X𝑥𝐴 𝐵 ∈ Fin)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395   = wceq 1542  wcel 2114  wral 3052  cdif 3900  cun 3901  cin 3902  wss 3903  {csn 4582  cmpt 5181  cres 5634   Fn wfn 6495  1-1wf1 6497  cfv 6500  Xcixp 8847  Fincfn 8895
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 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-sep 5243  ax-nul 5253  ax-pow 5312  ax-pr 5379  ax-un 7690
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-ral 3053  df-rex 3063  df-reu 3353  df-rab 3402  df-v 3444  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4288  df-if 4482  df-pw 4558  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-iun 4950  df-br 5101  df-opab 5163  df-mpt 5182  df-tr 5208  df-id 5527  df-eprel 5532  df-po 5540  df-so 5541  df-fr 5585  df-we 5587  df-xp 5638  df-rel 5639  df-cnv 5640  df-co 5641  df-dm 5642  df-rn 5643  df-res 5644  df-ima 5645  df-ord 6328  df-on 6329  df-lim 6330  df-suc 6331  df-iota 6456  df-fun 6502  df-fn 6503  df-f 6504  df-f1 6505  df-fo 6506  df-f1o 6507  df-fv 6508  df-ov 7371  df-oprab 7372  df-mpo 7373  df-om 7819  df-1st 7943  df-2nd 7944  df-1o 8407  df-map 8777  df-pm 8778  df-ixp 8848  df-en 8896  df-dom 8897  df-fin 8899
This theorem is referenced by:  psrbaglefi  21894  eulerpartlemb  34546
  Copyright terms: Public domain W3C validator