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

Theorem findcard 8946
Description: Schema for induction on the cardinality of a finite set. The inductive hypothesis is that the result is true on the given set with any one element removed. The result is then proven to be true for all finite sets. (Contributed by Jeff Madsen, 2-Sep-2009.)
Hypotheses
Ref Expression
findcard.1 (𝑥 = ∅ → (𝜑𝜓))
findcard.2 (𝑥 = (𝑦 ∖ {𝑧}) → (𝜑𝜒))
findcard.3 (𝑥 = 𝑦 → (𝜑𝜃))
findcard.4 (𝑥 = 𝐴 → (𝜑𝜏))
findcard.5 𝜓
findcard.6 (𝑦 ∈ Fin → (∀𝑧𝑦 𝜒𝜃))
Assertion
Ref Expression
findcard (𝐴 ∈ Fin → 𝜏)
Distinct variable groups:   𝑥,𝑦,𝑧,𝐴   𝜓,𝑥   𝜒,𝑥   𝜃,𝑥   𝜏,𝑥   𝜑,𝑦,𝑧
Allowed substitution hints:   𝜑(𝑥)   𝜓(𝑦,𝑧)   𝜒(𝑦,𝑧)   𝜃(𝑦,𝑧)   𝜏(𝑦,𝑧)

Proof of Theorem findcard
Dummy variables 𝑤 𝑣 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 findcard.4 . 2 (𝑥 = 𝐴 → (𝜑𝜏))
2 isfi 8764 . . 3 (𝑥 ∈ Fin ↔ ∃𝑤 ∈ ω 𝑥𝑤)
3 breq2 5078 . . . . . . . 8 (𝑤 = ∅ → (𝑥𝑤𝑥 ≈ ∅))
43imbi1d 342 . . . . . . 7 (𝑤 = ∅ → ((𝑥𝑤𝜑) ↔ (𝑥 ≈ ∅ → 𝜑)))
54albidv 1923 . . . . . 6 (𝑤 = ∅ → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥 ≈ ∅ → 𝜑)))
6 breq2 5078 . . . . . . . 8 (𝑤 = 𝑣 → (𝑥𝑤𝑥𝑣))
76imbi1d 342 . . . . . . 7 (𝑤 = 𝑣 → ((𝑥𝑤𝜑) ↔ (𝑥𝑣𝜑)))
87albidv 1923 . . . . . 6 (𝑤 = 𝑣 → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥𝑣𝜑)))
9 breq2 5078 . . . . . . . 8 (𝑤 = suc 𝑣 → (𝑥𝑤𝑥 ≈ suc 𝑣))
109imbi1d 342 . . . . . . 7 (𝑤 = suc 𝑣 → ((𝑥𝑤𝜑) ↔ (𝑥 ≈ suc 𝑣𝜑)))
1110albidv 1923 . . . . . 6 (𝑤 = suc 𝑣 → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥 ≈ suc 𝑣𝜑)))
12 en0 8803 . . . . . . . 8 (𝑥 ≈ ∅ ↔ 𝑥 = ∅)
13 findcard.5 . . . . . . . . 9 𝜓
14 findcard.1 . . . . . . . . 9 (𝑥 = ∅ → (𝜑𝜓))
1513, 14mpbiri 257 . . . . . . . 8 (𝑥 = ∅ → 𝜑)
1612, 15sylbi 216 . . . . . . 7 (𝑥 ≈ ∅ → 𝜑)
1716ax-gen 1798 . . . . . 6 𝑥(𝑥 ≈ ∅ → 𝜑)
18 peano2 7737 . . . . . . . . . . . . 13 (𝑣 ∈ ω → suc 𝑣 ∈ ω)
19 breq2 5078 . . . . . . . . . . . . . 14 (𝑤 = suc 𝑣 → (𝑦𝑤𝑦 ≈ suc 𝑣))
2019rspcev 3561 . . . . . . . . . . . . 13 ((suc 𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → ∃𝑤 ∈ ω 𝑦𝑤)
2118, 20sylan 580 . . . . . . . . . . . 12 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → ∃𝑤 ∈ ω 𝑦𝑤)
22 isfi 8764 . . . . . . . . . . . 12 (𝑦 ∈ Fin ↔ ∃𝑤 ∈ ω 𝑦𝑤)
2321, 22sylibr 233 . . . . . . . . . . 11 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → 𝑦 ∈ Fin)
24233adant2 1130 . . . . . . . . . 10 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → 𝑦 ∈ Fin)
25 dif1en 8945 . . . . . . . . . . . . . . . 16 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣𝑧𝑦) → (𝑦 ∖ {𝑧}) ≈ 𝑣)
26253expa 1117 . . . . . . . . . . . . . . 15 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ 𝑧𝑦) → (𝑦 ∖ {𝑧}) ≈ 𝑣)
27 vex 3436 . . . . . . . . . . . . . . . . 17 𝑦 ∈ V
2827difexi 5252 . . . . . . . . . . . . . . . 16 (𝑦 ∖ {𝑧}) ∈ V
29 breq1 5077 . . . . . . . . . . . . . . . . 17 (𝑥 = (𝑦 ∖ {𝑧}) → (𝑥𝑣 ↔ (𝑦 ∖ {𝑧}) ≈ 𝑣))
30 findcard.2 . . . . . . . . . . . . . . . . 17 (𝑥 = (𝑦 ∖ {𝑧}) → (𝜑𝜒))
3129, 30imbi12d 345 . . . . . . . . . . . . . . . 16 (𝑥 = (𝑦 ∖ {𝑧}) → ((𝑥𝑣𝜑) ↔ ((𝑦 ∖ {𝑧}) ≈ 𝑣𝜒)))
3228, 31spcv 3544 . . . . . . . . . . . . . . 15 (∀𝑥(𝑥𝑣𝜑) → ((𝑦 ∖ {𝑧}) ≈ 𝑣𝜒))
3326, 32syl5com 31 . . . . . . . . . . . . . 14 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ 𝑧𝑦) → (∀𝑥(𝑥𝑣𝜑) → 𝜒))
3433ralrimdva 3106 . . . . . . . . . . . . 13 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → (∀𝑥(𝑥𝑣𝜑) → ∀𝑧𝑦 𝜒))
3534imp 407 . . . . . . . . . . . 12 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ ∀𝑥(𝑥𝑣𝜑)) → ∀𝑧𝑦 𝜒)
3635an32s 649 . . . . . . . . . . 11 (((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑)) ∧ 𝑦 ≈ suc 𝑣) → ∀𝑧𝑦 𝜒)
37363impa 1109 . . . . . . . . . 10 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → ∀𝑧𝑦 𝜒)
38 findcard.6 . . . . . . . . . 10 (𝑦 ∈ Fin → (∀𝑧𝑦 𝜒𝜃))
3924, 37, 38sylc 65 . . . . . . . . 9 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → 𝜃)
40393exp 1118 . . . . . . . 8 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → (𝑦 ≈ suc 𝑣𝜃)))
4140alrimdv 1932 . . . . . . 7 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → ∀𝑦(𝑦 ≈ suc 𝑣𝜃)))
42 breq1 5077 . . . . . . . . 9 (𝑥 = 𝑦 → (𝑥 ≈ suc 𝑣𝑦 ≈ suc 𝑣))
43 findcard.3 . . . . . . . . 9 (𝑥 = 𝑦 → (𝜑𝜃))
4442, 43imbi12d 345 . . . . . . . 8 (𝑥 = 𝑦 → ((𝑥 ≈ suc 𝑣𝜑) ↔ (𝑦 ≈ suc 𝑣𝜃)))
4544cbvalvw 2039 . . . . . . 7 (∀𝑥(𝑥 ≈ suc 𝑣𝜑) ↔ ∀𝑦(𝑦 ≈ suc 𝑣𝜃))
4641, 45syl6ibr 251 . . . . . 6 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → ∀𝑥(𝑥 ≈ suc 𝑣𝜑)))
475, 8, 11, 17, 46finds1 7748 . . . . 5 (𝑤 ∈ ω → ∀𝑥(𝑥𝑤𝜑))
484719.21bi 2182 . . . 4 (𝑤 ∈ ω → (𝑥𝑤𝜑))
4948rexlimiv 3209 . . 3 (∃𝑤 ∈ ω 𝑥𝑤𝜑)
502, 49sylbi 216 . 2 (𝑥 ∈ Fin → 𝜑)
511, 50vtoclga 3513 1 (𝐴 ∈ Fin → 𝜏)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  w3a 1086  wal 1537   = wceq 1539  wcel 2106  wral 3064  wrex 3065  cdif 3884  c0 4256  {csn 4561   class class class wbr 5074  suc csuc 6268  ωcom 7712  cen 8730  Fincfn 8733
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2709  ax-sep 5223  ax-nul 5230  ax-pr 5352  ax-un 7588
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3or 1087  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-nf 1787  df-sb 2068  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2816  df-nfc 2889  df-ne 2944  df-ral 3069  df-rex 3070  df-reu 3072  df-rab 3073  df-v 3434  df-sbc 3717  df-csb 3833  df-dif 3890  df-un 3892  df-in 3894  df-ss 3904  df-pss 3906  df-nul 4257  df-if 4460  df-pw 4535  df-sn 4562  df-pr 4564  df-op 4568  df-uni 4840  df-br 5075  df-opab 5137  df-mpt 5158  df-tr 5192  df-id 5489  df-eprel 5495  df-po 5503  df-so 5504  df-fr 5544  df-we 5546  df-xp 5595  df-rel 5596  df-cnv 5597  df-co 5598  df-dm 5599  df-rn 5600  df-res 5601  df-ima 5602  df-ord 6269  df-on 6270  df-lim 6271  df-suc 6272  df-iota 6391  df-fun 6435  df-fn 6436  df-f 6437  df-f1 6438  df-fo 6439  df-f1o 6440  df-fv 6441  df-om 7713  df-en 8734  df-fin 8737
This theorem is referenced by:  xpfi  9085
  Copyright terms: Public domain W3C validator