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

Theorem findcard 8759
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 8535 . . 3 (𝑥 ∈ Fin ↔ ∃𝑤 ∈ ω 𝑥𝑤)
3 breq2 5072 . . . . . . . 8 (𝑤 = ∅ → (𝑥𝑤𝑥 ≈ ∅))
43imbi1d 344 . . . . . . 7 (𝑤 = ∅ → ((𝑥𝑤𝜑) ↔ (𝑥 ≈ ∅ → 𝜑)))
54albidv 1921 . . . . . 6 (𝑤 = ∅ → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥 ≈ ∅ → 𝜑)))
6 breq2 5072 . . . . . . . 8 (𝑤 = 𝑣 → (𝑥𝑤𝑥𝑣))
76imbi1d 344 . . . . . . 7 (𝑤 = 𝑣 → ((𝑥𝑤𝜑) ↔ (𝑥𝑣𝜑)))
87albidv 1921 . . . . . 6 (𝑤 = 𝑣 → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥𝑣𝜑)))
9 breq2 5072 . . . . . . . 8 (𝑤 = suc 𝑣 → (𝑥𝑤𝑥 ≈ suc 𝑣))
109imbi1d 344 . . . . . . 7 (𝑤 = suc 𝑣 → ((𝑥𝑤𝜑) ↔ (𝑥 ≈ suc 𝑣𝜑)))
1110albidv 1921 . . . . . 6 (𝑤 = suc 𝑣 → (∀𝑥(𝑥𝑤𝜑) ↔ ∀𝑥(𝑥 ≈ suc 𝑣𝜑)))
12 en0 8574 . . . . . . . 8 (𝑥 ≈ ∅ ↔ 𝑥 = ∅)
13 findcard.5 . . . . . . . . 9 𝜓
14 findcard.1 . . . . . . . . 9 (𝑥 = ∅ → (𝜑𝜓))
1513, 14mpbiri 260 . . . . . . . 8 (𝑥 = ∅ → 𝜑)
1612, 15sylbi 219 . . . . . . 7 (𝑥 ≈ ∅ → 𝜑)
1716ax-gen 1796 . . . . . 6 𝑥(𝑥 ≈ ∅ → 𝜑)
18 peano2 7604 . . . . . . . . . . . . 13 (𝑣 ∈ ω → suc 𝑣 ∈ ω)
19 breq2 5072 . . . . . . . . . . . . . 14 (𝑤 = suc 𝑣 → (𝑦𝑤𝑦 ≈ suc 𝑣))
2019rspcev 3625 . . . . . . . . . . . . 13 ((suc 𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → ∃𝑤 ∈ ω 𝑦𝑤)
2118, 20sylan 582 . . . . . . . . . . . 12 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → ∃𝑤 ∈ ω 𝑦𝑤)
22 isfi 8535 . . . . . . . . . . . 12 (𝑦 ∈ Fin ↔ ∃𝑤 ∈ ω 𝑦𝑤)
2321, 22sylibr 236 . . . . . . . . . . 11 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → 𝑦 ∈ Fin)
24233adant2 1127 . . . . . . . . . 10 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → 𝑦 ∈ Fin)
25 dif1en 8753 . . . . . . . . . . . . . . . 16 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣𝑧𝑦) → (𝑦 ∖ {𝑧}) ≈ 𝑣)
26253expa 1114 . . . . . . . . . . . . . . 15 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ 𝑧𝑦) → (𝑦 ∖ {𝑧}) ≈ 𝑣)
27 vex 3499 . . . . . . . . . . . . . . . . 17 𝑦 ∈ V
2827difexi 5234 . . . . . . . . . . . . . . . 16 (𝑦 ∖ {𝑧}) ∈ V
29 breq1 5071 . . . . . . . . . . . . . . . . 17 (𝑥 = (𝑦 ∖ {𝑧}) → (𝑥𝑣 ↔ (𝑦 ∖ {𝑧}) ≈ 𝑣))
30 findcard.2 . . . . . . . . . . . . . . . . 17 (𝑥 = (𝑦 ∖ {𝑧}) → (𝜑𝜒))
3129, 30imbi12d 347 . . . . . . . . . . . . . . . 16 (𝑥 = (𝑦 ∖ {𝑧}) → ((𝑥𝑣𝜑) ↔ ((𝑦 ∖ {𝑧}) ≈ 𝑣𝜒)))
3228, 31spcv 3608 . . . . . . . . . . . . . . 15 (∀𝑥(𝑥𝑣𝜑) → ((𝑦 ∖ {𝑧}) ≈ 𝑣𝜒))
3326, 32syl5com 31 . . . . . . . . . . . . . 14 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ 𝑧𝑦) → (∀𝑥(𝑥𝑣𝜑) → 𝜒))
3433ralrimdva 3191 . . . . . . . . . . . . 13 ((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) → (∀𝑥(𝑥𝑣𝜑) → ∀𝑧𝑦 𝜒))
3534imp 409 . . . . . . . . . . . 12 (((𝑣 ∈ ω ∧ 𝑦 ≈ suc 𝑣) ∧ ∀𝑥(𝑥𝑣𝜑)) → ∀𝑧𝑦 𝜒)
3635an32s 650 . . . . . . . . . . 11 (((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑)) ∧ 𝑦 ≈ suc 𝑣) → ∀𝑧𝑦 𝜒)
37363impa 1106 . . . . . . . . . 10 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → ∀𝑧𝑦 𝜒)
38 findcard.6 . . . . . . . . . 10 (𝑦 ∈ Fin → (∀𝑧𝑦 𝜒𝜃))
3924, 37, 38sylc 65 . . . . . . . . 9 ((𝑣 ∈ ω ∧ ∀𝑥(𝑥𝑣𝜑) ∧ 𝑦 ≈ suc 𝑣) → 𝜃)
40393exp 1115 . . . . . . . 8 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → (𝑦 ≈ suc 𝑣𝜃)))
4140alrimdv 1930 . . . . . . 7 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → ∀𝑦(𝑦 ≈ suc 𝑣𝜃)))
42 breq1 5071 . . . . . . . . 9 (𝑥 = 𝑦 → (𝑥 ≈ suc 𝑣𝑦 ≈ suc 𝑣))
43 findcard.3 . . . . . . . . 9 (𝑥 = 𝑦 → (𝜑𝜃))
4442, 43imbi12d 347 . . . . . . . 8 (𝑥 = 𝑦 → ((𝑥 ≈ suc 𝑣𝜑) ↔ (𝑦 ≈ suc 𝑣𝜃)))
4544cbvalvw 2043 . . . . . . 7 (∀𝑥(𝑥 ≈ suc 𝑣𝜑) ↔ ∀𝑦(𝑦 ≈ suc 𝑣𝜃))
4641, 45syl6ibr 254 . . . . . 6 (𝑣 ∈ ω → (∀𝑥(𝑥𝑣𝜑) → ∀𝑥(𝑥 ≈ suc 𝑣𝜑)))
475, 8, 11, 17, 46finds1 7613 . . . . 5 (𝑤 ∈ ω → ∀𝑥(𝑥𝑤𝜑))
484719.21bi 2188 . . . 4 (𝑤 ∈ ω → (𝑥𝑤𝜑))
4948rexlimiv 3282 . . 3 (∃𝑤 ∈ ω 𝑥𝑤𝜑)
502, 49sylbi 219 . 2 (𝑥 ∈ Fin → 𝜑)
511, 50vtoclga 3576 1 (𝐴 ∈ Fin → 𝜏)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398  w3a 1083  wal 1535   = wceq 1537  wcel 2114  wral 3140  wrex 3141  cdif 3935  c0 4293  {csn 4569   class class class wbr 5068  suc csuc 6195  ωcom 7582  cen 8508  Fincfn 8511
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2161  ax-12 2177  ax-ext 2795  ax-sep 5205  ax-nul 5212  ax-pow 5268  ax-pr 5332  ax-un 7463
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3or 1084  df-3an 1085  df-tru 1540  df-ex 1781  df-nf 1785  df-sb 2070  df-mo 2622  df-eu 2654  df-clab 2802  df-cleq 2816  df-clel 2895  df-nfc 2965  df-ne 3019  df-ral 3145  df-rex 3146  df-rab 3149  df-v 3498  df-sbc 3775  df-dif 3941  df-un 3943  df-in 3945  df-ss 3954  df-pss 3956  df-nul 4294  df-if 4470  df-pw 4543  df-sn 4570  df-pr 4572  df-tp 4574  df-op 4576  df-uni 4841  df-br 5069  df-opab 5131  df-tr 5175  df-id 5462  df-eprel 5467  df-po 5476  df-so 5477  df-fr 5516  df-we 5518  df-xp 5563  df-rel 5564  df-cnv 5565  df-co 5566  df-dm 5567  df-rn 5568  df-res 5569  df-ima 5570  df-ord 6196  df-on 6197  df-lim 6198  df-suc 6199  df-iota 6316  df-fun 6359  df-fn 6360  df-f 6361  df-f1 6362  df-fo 6363  df-f1o 6364  df-fv 6365  df-om 7583  df-1o 8104  df-er 8291  df-en 8512  df-fin 8515
This theorem is referenced by:  xpfi  8791
  Copyright terms: Public domain W3C validator