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

Theorem findcard 8908
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 8719 . . 3 (𝑥 ∈ Fin ↔ ∃𝑤 ∈ ω 𝑥𝑤)
3 breq2 5074 . . . . . . . 8 (𝑤 = ∅ → (𝑥𝑤𝑥 ≈ ∅))
43imbi1d 341 . . . . . . 7 (𝑤 = ∅ → ((𝑥𝑤𝜑) ↔ (𝑥 ≈ ∅ → 𝜑)))
54albidv 1924 . . . . . 6 (𝑤 = ∅ → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥 ≈ ∅ → 𝜑)))
6 breq2 5074 . . . . . . . 8 (𝑤 = 𝑣 → (𝑥𝑤𝑥𝑣))
76imbi1d 341 . . . . . . 7 (𝑤 = 𝑣 → ((𝑥𝑤𝜑) ↔ (𝑥𝑣𝜑)))
87albidv 1924 . . . . . 6 (𝑤 = 𝑣 → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥𝑣𝜑)))
9 breq2 5074 . . . . . . . 8 (𝑤 = suc 𝑣 → (𝑥𝑤𝑥 ≈ suc 𝑣))
109imbi1d 341 . . . . . . 7 (𝑤 = suc 𝑣 → ((𝑥𝑤𝜑) ↔ (𝑥 ≈ suc 𝑣𝜑)))
1110albidv 1924 . . . . . 6 (𝑤 = suc 𝑣 → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥 ≈ suc 𝑣𝜑)))
12 en0 8758 . . . . . . . 8 (𝑥 ≈ ∅ ↔ 𝑥 = ∅)
13 findcard.5 . . . . . . . . 9 𝜓
14 findcard.1 . . . . . . . . 9 (𝑥 = ∅ → (𝜑𝜓))
1513, 14mpbiri 257 . . . . . . . 8 (𝑥 = ∅ → 𝜑)
1612, 15sylbi 216 . . . . . . 7 (𝑥 ≈ ∅ → 𝜑)
1716ax-gen 1799 . . . . . 6 𝑥(𝑥 ≈ ∅ → 𝜑)
18 peano2 7711 . . . . . . . . . . . . 13 (𝑣 ∈ ω → suc 𝑣 ∈ ω)
19 breq2 5074 . . . . . . . . . . . . . 14 (𝑤 = suc 𝑣 → (𝑦𝑤𝑦 ≈ suc 𝑣))
2019rspcev 3552 . . . . . . . . . . . . 13 ((suc 𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → ∃𝑤 ∈ ω 𝑦𝑤)
2118, 20sylan 579 . . . . . . . . . . . 12 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → ∃𝑤 ∈ ω 𝑦𝑤)
22 isfi 8719 . . . . . . . . . . . 12 (𝑦 ∈ Fin ↔ ∃𝑤 ∈ ω 𝑦𝑤)
2321, 22sylibr 233 . . . . . . . . . . 11 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → 𝑦 ∈ Fin)
24233adant2 1129 . . . . . . . . . 10 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → 𝑦 ∈ Fin)
25 dif1en 8907 . . . . . . . . . . . . . . . 16 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣𝑧𝑦) → (𝑦 ∖ {𝑧}) ≈ 𝑣)
26253expa 1116 . . . . . . . . . . . . . . 15 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ 𝑧𝑦) → (𝑦 ∖ {𝑧}) ≈ 𝑣)
27 vex 3426 . . . . . . . . . . . . . . . . 17 𝑦 ∈ V
2827difexi 5247 . . . . . . . . . . . . . . . 16 (𝑦 ∖ {𝑧}) ∈ V
29 breq1 5073 . . . . . . . . . . . . . . . . 17 (𝑥 = (𝑦 ∖ {𝑧}) → (𝑥𝑣 ↔ (𝑦 ∖ {𝑧}) ≈ 𝑣))
30 findcard.2 . . . . . . . . . . . . . . . . 17 (𝑥 = (𝑦 ∖ {𝑧}) → (𝜑𝜒))
3129, 30imbi12d 344 . . . . . . . . . . . . . . . 16 (𝑥 = (𝑦 ∖ {𝑧}) → ((𝑥𝑣𝜑) ↔ ((𝑦 ∖ {𝑧}) ≈ 𝑣𝜒)))
3228, 31spcv 3534 . . . . . . . . . . . . . . 15 (∀𝑥(𝑥𝑣𝜑) → ((𝑦 ∖ {𝑧}) ≈ 𝑣𝜒))
3326, 32syl5com 31 . . . . . . . . . . . . . 14 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ 𝑧𝑦) → (∀𝑥(𝑥𝑣𝜑) → 𝜒))
3433ralrimdva 3112 . . . . . . . . . . . . 13 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → (∀𝑥(𝑥𝑣𝜑) → ∀𝑧𝑦 𝜒))
3534imp 406 . . . . . . . . . . . 12 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ ∀𝑥(𝑥𝑣𝜑)) → ∀𝑧𝑦 𝜒)
3635an32s 648 . . . . . . . . . . 11 (((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑)) ∧ 𝑦 ≈ suc 𝑣) → ∀𝑧𝑦 𝜒)
37363impa 1108 . . . . . . . . . 10 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → ∀𝑧𝑦 𝜒)
38 findcard.6 . . . . . . . . . 10 (𝑦 ∈ Fin → (∀𝑧𝑦 𝜒𝜃))
3924, 37, 38sylc 65 . . . . . . . . 9 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → 𝜃)
40393exp 1117 . . . . . . . 8 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → (𝑦 ≈ suc 𝑣𝜃)))
4140alrimdv 1933 . . . . . . 7 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → ∀𝑦(𝑦 ≈ suc 𝑣𝜃)))
42 breq1 5073 . . . . . . . . 9 (𝑥 = 𝑦 → (𝑥 ≈ suc 𝑣𝑦 ≈ suc 𝑣))
43 findcard.3 . . . . . . . . 9 (𝑥 = 𝑦 → (𝜑𝜃))
4442, 43imbi12d 344 . . . . . . . 8 (𝑥 = 𝑦 → ((𝑥 ≈ suc 𝑣𝜑) ↔ (𝑦 ≈ suc 𝑣𝜃)))
4544cbvalvw 2040 . . . . . . 7 (∀𝑥(𝑥 ≈ suc 𝑣𝜑) ↔ ∀𝑦(𝑦 ≈ suc 𝑣𝜃))
4641, 45syl6ibr 251 . . . . . 6 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → ∀𝑥(𝑥 ≈ suc 𝑣𝜑)))
475, 8, 11, 17, 46finds1 7722 . . . . 5 (𝑤 ∈ ω → ∀𝑥(𝑥𝑤𝜑))
484719.21bi 2184 . . . 4 (𝑤 ∈ ω → (𝑥𝑤𝜑))
4948rexlimiv 3208 . . 3 (∃𝑤 ∈ ω 𝑥𝑤𝜑)
502, 49sylbi 216 . 2 (𝑥 ∈ Fin → 𝜑)
511, 50vtoclga 3503 1 (𝐴 ∈ Fin → 𝜏)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 395  w3a 1085  wal 1537   = wceq 1539  wcel 2108  wral 3063  wrex 3064  cdif 3880  c0 4253  {csn 4558   class class class wbr 5070  suc csuc 6253  ωcom 7687  cen 8688  Fincfn 8691
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2156  ax-12 2173  ax-ext 2709  ax-sep 5218  ax-nul 5225  ax-pr 5347  ax-un 7566
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-3or 1086  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1784  df-nf 1788  df-sb 2069  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2817  df-nfc 2888  df-ne 2943  df-ral 3068  df-rex 3069  df-reu 3070  df-rab 3072  df-v 3424  df-sbc 3712  df-csb 3829  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3902  df-nul 4254  df-if 4457  df-pw 4532  df-sn 4559  df-pr 4561  df-tp 4563  df-op 4565  df-uni 4837  df-br 5071  df-opab 5133  df-mpt 5154  df-tr 5188  df-id 5480  df-eprel 5486  df-po 5494  df-so 5495  df-fr 5535  df-we 5537  df-xp 5586  df-rel 5587  df-cnv 5588  df-co 5589  df-dm 5590  df-rn 5591  df-res 5592  df-ima 5593  df-ord 6254  df-on 6255  df-lim 6256  df-suc 6257  df-iota 6376  df-fun 6420  df-fn 6421  df-f 6422  df-f1 6423  df-fo 6424  df-f1o 6425  df-fv 6426  df-om 7688  df-en 8692  df-fin 8695
This theorem is referenced by:  xpfi  9015
  Copyright terms: Public domain W3C validator