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

Theorem ixpfi2 9260
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 4178 . . . 4 (𝐴𝐶) ⊆ 𝐶
3 ssfi 9107 . . . 4 ((𝐶 ∈ Fin ∧ (𝐴𝐶) ⊆ 𝐶) → (𝐴𝐶) ∈ Fin)
41, 2, 3sylancl 587 . . 3 (𝜑 → (𝐴𝐶) ∈ Fin)
5 inss1 4177 . . . 4 (𝐴𝐶) ⊆ 𝐴
6 ixpfi2.2 . . . . 5 ((𝜑𝑥𝐴) → 𝐵 ∈ Fin)
76ralrimiva 3129 . . . 4 (𝜑 → ∀𝑥𝐴 𝐵 ∈ Fin)
8 ssralv 3990 . . . 4 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 𝐵 ∈ Fin → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin))
95, 7, 8mpsyl 68 . . 3 (𝜑 → ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
10 ixpfi 9259 . . 3 (((𝐴𝐶) ∈ Fin ∧ ∀𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin) → X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
114, 9, 10syl2anc 585 . 2 (𝜑X𝑥 ∈ (𝐴𝐶)𝐵 ∈ Fin)
12 resixp 8881 . . . . 5 (((𝐴𝐶) ⊆ 𝐴𝑓X𝑥𝐴 𝐵) → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
135, 12mpan 691 . . . 4 (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵)
1413a1i 11 . . 3 (𝜑 → (𝑓X𝑥𝐴 𝐵 → (𝑓 ↾ (𝐴𝐶)) ∈ X𝑥 ∈ (𝐴𝐶)𝐵))
15 simprl 771 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓X𝑥𝐴 𝐵)
16 vex 3433 . . . . . . . . . . 11 𝑓 ∈ V
1716elixp 8852 . . . . . . . . . 10 (𝑓X𝑥𝐴 𝐵 ↔ (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1815, 17sylib 218 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵))
1918simprd 495 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵)
20 simprr 773 . . . . . . . . . 10 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔X𝑥𝐴 𝐵)
21 vex 3433 . . . . . . . . . . 11 𝑔 ∈ V
2221elixp 8852 . . . . . . . . . 10 (𝑔X𝑥𝐴 𝐵 ↔ (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2320, 22sylib 218 . . . . . . . . 9 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 Fn 𝐴 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
2423simprd 495 . . . . . . . 8 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵)
25 r19.26 3097 . . . . . . . . 9 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) ↔ (∀𝑥𝐴 (𝑓𝑥) ∈ 𝐵 ∧ ∀𝑥𝐴 (𝑔𝑥) ∈ 𝐵))
26 difss 4076 . . . . . . . . . . 11 (𝐴𝐶) ⊆ 𝐴
27 ssralv 3990 . . . . . . . . . . 11 ((𝐴𝐶) ⊆ 𝐴 → (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵)))
2826, 27ax-mp 5 . . . . . . . . . 10 (∀𝑥𝐴 ((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ∀𝑥 ∈ (𝐴𝐶)((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵))
29 ixpfi2.3 . . . . . . . . . . . . . . . 16 ((𝜑𝑥 ∈ (𝐴𝐶)) → 𝐵 ⊆ {𝐷})
3029sseld 3920 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) ∈ {𝐷}))
31 elsni 4584 . . . . . . . . . . . . . . 15 ((𝑓𝑥) ∈ {𝐷} → (𝑓𝑥) = 𝐷)
3230, 31syl6 35 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑓𝑥) ∈ 𝐵 → (𝑓𝑥) = 𝐷))
3329sseld 3920 . . . . . . . . . . . . . . 15 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) ∈ {𝐷}))
34 elsni 4584 . . . . . . . . . . . . . . 15 ((𝑔𝑥) ∈ {𝐷} → (𝑔𝑥) = 𝐷)
3533, 34syl6 35 . . . . . . . . . . . . . 14 ((𝜑𝑥 ∈ (𝐴𝐶)) → ((𝑔𝑥) ∈ 𝐵 → (𝑔𝑥) = 𝐷))
3632, 35anim12d 610 . . . . . . . . . . . . 13 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → ((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷)))
37 eqtr3 2758 . . . . . . . . . . . . 13 (((𝑓𝑥) = 𝐷 ∧ (𝑔𝑥) = 𝐷) → (𝑓𝑥) = (𝑔𝑥))
3836, 37syl6 35 . . . . . . . . . . . 12 ((𝜑𝑥 ∈ (𝐴𝐶)) → (((𝑓𝑥) ∈ 𝐵 ∧ (𝑔𝑥) ∈ 𝐵) → (𝑓𝑥) = (𝑔𝑥)))
3938ralimdva 3149 . . . . . . . . . . 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 6859 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑓 ↾ (𝐴𝐶))‘𝑥) = (𝑓𝑥))
46 fvres 6859 . . . . . . . 8 (𝑥 ∈ (𝐴𝐶) → ((𝑔 ↾ (𝐴𝐶))‘𝑥) = (𝑔𝑥))
4745, 46eqeq12d 2752 . . . . . . 7 (𝑥 ∈ (𝐴𝐶) → (((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ (𝑓𝑥) = (𝑔𝑥)))
4847ralbiia 3081 . . . . . 6 (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥))
49 inundif 4419 . . . . . . . 8 ((𝐴𝐶) ∪ (𝐴𝐶)) = 𝐴
5049raleqi 3293 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥))
51 ralunb 4137 . . . . . . 7 (∀𝑥 ∈ ((𝐴𝐶) ∪ (𝐴𝐶))(𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5250, 51bitr3i 277 . . . . . 6 (∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥) ↔ (∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥) ∧ ∀𝑥 ∈ (𝐴𝐶)(𝑓𝑥) = (𝑔𝑥)))
5344, 48, 523bitr4g 314 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥) ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
5418simpld 494 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑓 Fn 𝐴)
55 fnssres 6621 . . . . . . 7 ((𝑓 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5654, 5, 55sylancl 587 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5723simpld 494 . . . . . . 7 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → 𝑔 Fn 𝐴)
58 fnssres 6621 . . . . . . 7 ((𝑔 Fn 𝐴 ∧ (𝐴𝐶) ⊆ 𝐴) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
5957, 5, 58sylancl 587 . . . . . 6 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶))
60 eqfnfv 6983 . . . . . 6 (((𝑓 ↾ (𝐴𝐶)) Fn (𝐴𝐶) ∧ (𝑔 ↾ (𝐴𝐶)) Fn (𝐴𝐶)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
6156, 59, 60syl2anc 585 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ ∀𝑥 ∈ (𝐴𝐶)((𝑓 ↾ (𝐴𝐶))‘𝑥) = ((𝑔 ↾ (𝐴𝐶))‘𝑥)))
62 eqfnfv 6983 . . . . . 6 ((𝑓 Fn 𝐴𝑔 Fn 𝐴) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6354, 57, 62syl2anc 585 . . . . 5 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → (𝑓 = 𝑔 ↔ ∀𝑥𝐴 (𝑓𝑥) = (𝑔𝑥)))
6453, 61, 633bitr4d 311 . . . 4 ((𝜑 ∧ (𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵)) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔))
6564ex 412 . . 3 (𝜑 → ((𝑓X𝑥𝐴 𝐵𝑔X𝑥𝐴 𝐵) → ((𝑓 ↾ (𝐴𝐶)) = (𝑔 ↾ (𝐴𝐶)) ↔ 𝑓 = 𝑔)))
6614, 65dom2lem 8939 . 2 (𝜑 → (𝑓X𝑥𝐴 𝐵 ↦ (𝑓 ↾ (𝐴𝐶))):X𝑥𝐴 𝐵1-1X𝑥 ∈ (𝐴𝐶)𝐵)
67 f1fi 9224 . 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 3051  cdif 3886  cun 3887  cin 3888  wss 3889  {csn 4567  cmpt 5166  cres 5633   Fn wfn 6493  1-1wf1 6495  cfv 6498  Xcixp 8845  Fincfn 8893
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 2708  ax-sep 5231  ax-nul 5241  ax-pow 5307  ax-pr 5375  ax-un 7689
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 2539  df-eu 2569  df-clab 2715  df-cleq 2728  df-clel 2811  df-nfc 2885  df-ne 2933  df-ral 3052  df-rex 3062  df-reu 3343  df-rab 3390  df-v 3431  df-sbc 3729  df-csb 3838  df-dif 3892  df-un 3894  df-in 3896  df-ss 3906  df-pss 3909  df-nul 4274  df-if 4467  df-pw 4543  df-sn 4568  df-pr 4570  df-op 4574  df-uni 4851  df-iun 4935  df-br 5086  df-opab 5148  df-mpt 5167  df-tr 5193  df-id 5526  df-eprel 5531  df-po 5539  df-so 5540  df-fr 5584  df-we 5586  df-xp 5637  df-rel 5638  df-cnv 5639  df-co 5640  df-dm 5641  df-rn 5642  df-res 5643  df-ima 5644  df-ord 6326  df-on 6327  df-lim 6328  df-suc 6329  df-iota 6454  df-fun 6500  df-fn 6501  df-f 6502  df-f1 6503  df-fo 6504  df-f1o 6505  df-fv 6506  df-ov 7370  df-oprab 7371  df-mpo 7372  df-om 7818  df-1st 7942  df-2nd 7943  df-1o 8405  df-map 8775  df-pm 8776  df-ixp 8846  df-en 8894  df-dom 8895  df-fin 8897
This theorem is referenced by:  psrbaglefi  21906  eulerpartlemb  34512
  Copyright terms: Public domain W3C validator