ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  hashennn Unicode version

Theorem hashennn 11041
Description: The size of a set equinumerous to an element of  om. (Contributed by Jim Kingdon, 21-Feb-2022.)
Assertion
Ref Expression
hashennn  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( `  A )  =  (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 ) `  N ) )
Distinct variable groups:    x, A    x, N

Proof of Theorem hashennn
Dummy variables  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-ihash 11037 . . . . 5  |- =  ( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u. 
{ <. om , +oo >. } )  o.  (
x  e.  _V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) )
21fveq1i 5640 . . . 4  |-  ( `  A
)  =  ( ( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u. 
{ <. om , +oo >. } )  o.  (
x  e.  _V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) ) `
 A )
3 funmpt 5364 . . . . 5  |-  Fun  (
x  e.  _V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } )
4 hashennnuni 11040 . . . . . . . . 9  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A }  =  N )
54eqcomd 2237 . . . . . . . 8  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  N  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A } )
6 nnfi 7058 . . . . . . . . . . 11  |-  ( N  e.  om  ->  N  e.  Fin )
76adantr 276 . . . . . . . . . 10  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  N  e.  Fin )
8 simpr 110 . . . . . . . . . . 11  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  N  ~~  A )
98ensymd 6956 . . . . . . . . . 10  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  A  ~~  N )
10 enfii 7060 . . . . . . . . . 10  |-  ( ( N  e.  Fin  /\  A  ~~  N )  ->  A  e.  Fin )
117, 9, 10syl2anc 411 . . . . . . . . 9  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  A  e.  Fin )
12 simpl 109 . . . . . . . . 9  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  N  e.  om )
13 simpr 110 . . . . . . . . . . 11  |-  ( ( x  =  A  /\  z  =  N )  ->  z  =  N )
14 breq2 4092 . . . . . . . . . . . . . 14  |-  ( x  =  A  ->  (
y  ~<_  x  <->  y  ~<_  A ) )
1514adantr 276 . . . . . . . . . . . . 13  |-  ( ( x  =  A  /\  z  =  N )  ->  ( y  ~<_  x  <->  y  ~<_  A ) )
1615rabbidv 2791 . . . . . . . . . . . 12  |-  ( ( x  =  A  /\  z  =  N )  ->  { y  e.  ( om  u.  { om } )  |  y  ~<_  x }  =  {
y  e.  ( om  u.  { om }
)  |  y  ~<_  A } )
1716unieqd 3904 . . . . . . . . . . 11  |-  ( ( x  =  A  /\  z  =  N )  ->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x }  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A } )
1813, 17eqeq12d 2246 . . . . . . . . . 10  |-  ( ( x  =  A  /\  z  =  N )  ->  ( z  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x }  <->  N  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A } ) )
1918opelopabga 4357 . . . . . . . . 9  |-  ( ( A  e.  Fin  /\  N  e.  om )  ->  ( <. A ,  N >.  e.  { <. x ,  z >.  |  z  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } }  <->  N  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A } ) )
2011, 12, 19syl2anc 411 . . . . . . . 8  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( <. A ,  N >.  e.  { <. x ,  z >.  |  z  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } }  <->  N  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A } ) )
215, 20mpbird 167 . . . . . . 7  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  <. A ,  N >.  e. 
{ <. x ,  z
>.  |  z  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } } )
22 mptv 4186 . . . . . . 7  |-  ( x  e.  _V  |->  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  x } )  =  { <. x ,  z >.  |  z  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } }
2321, 22eleqtrrdi 2325 . . . . . 6  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  <. A ,  N >.  e.  ( x  e.  _V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) )
24 opeldmg 4936 . . . . . . 7  |-  ( ( A  e.  Fin  /\  N  e.  om )  ->  ( <. A ,  N >.  e.  ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } )  ->  A  e.  dom  ( x  e.  _V  |->  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  x } ) ) )
2511, 12, 24syl2anc 411 . . . . . 6  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( <. A ,  N >.  e.  ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } )  ->  A  e.  dom  ( x  e.  _V  |->  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  x } ) ) )
2623, 25mpd 13 . . . . 5  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  A  e.  dom  ( x  e.  _V  |->  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  x } ) )
27 fvco 5716 . . . . 5  |-  ( ( Fun  ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } )  /\  A  e.  dom  ( x  e.  _V  |->  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  x } ) )  -> 
( ( (frec ( ( x  e.  ZZ  |->  ( x  +  1
) ) ,  0 )  u.  { <. om , +oo >. } )  o.  ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) ) `
 A )  =  ( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u.  { <. om , +oo >. } ) `  ( ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) `  A ) ) )
283, 26, 27sylancr 414 . . . 4  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( ( (frec ( ( x  e.  ZZ  |->  ( x  +  1
) ) ,  0 )  u.  { <. om , +oo >. } )  o.  ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) ) `
 A )  =  ( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u.  { <. om , +oo >. } ) `  ( ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) `  A ) ) )
292, 28eqtrid 2276 . . 3  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( `  A )  =  ( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u.  { <. om , +oo >. } ) `  ( ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) `  A ) ) )
3011elexd 2816 . . . . . 6  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  A  e.  _V )
314, 12eqeltrd 2308 . . . . . 6  |-  ( ( N  e.  om  /\  N  ~~  A )  ->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A }  e.  om )
3214rabbidv 2791 . . . . . . . 8  |-  ( x  =  A  ->  { y  e.  ( om  u.  { om } )  |  y  ~<_  x }  =  { y  e.  ( om  u.  { om } )  |  y  ~<_  A } )
3332unieqd 3904 . . . . . . 7  |-  ( x  =  A  ->  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  x }  =  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  A } )
34 eqid 2231 . . . . . . 7  |-  ( x  e.  _V  |->  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  x } )  =  ( x  e.  _V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } )
3533, 34fvmptg 5722 . . . . . 6  |-  ( ( A  e.  _V  /\  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A }  e.  om )  ->  ( ( x  e.  _V  |->  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  x } ) `  A
)  =  U. {
y  e.  ( om  u.  { om }
)  |  y  ~<_  A } )
3630, 31, 35syl2anc 411 . . . . 5  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) `  A )  =  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  A } )
3736, 4eqtrd 2264 . . . 4  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) `  A )  =  N )
3837fveq2d 5643 . . 3  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u.  { <. om , +oo >. } ) `  ( ( x  e. 
_V  |->  U. { y  e.  ( om  u.  { om } )  |  y  ~<_  x } ) `  A ) )  =  ( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u.  { <. om , +oo >. } ) `  N ) )
3929, 38eqtrd 2264 . 2  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( `  A )  =  ( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u.  { <. om , +oo >. } ) `  N ) )
40 ordom 4705 . . . . . . 7  |-  Ord  om
41 ordirr 4640 . . . . . . 7  |-  ( Ord 
om  ->  -.  om  e.  om )
4240, 41ax-mp 5 . . . . . 6  |-  -.  om  e.  om
43 eleq1 2294 . . . . . 6  |-  ( om  =  N  ->  ( om  e.  om  <->  N  e.  om ) )
4442, 43mtbii 680 . . . . 5  |-  ( om  =  N  ->  -.  N  e.  om )
4544necon2ai 2456 . . . 4  |-  ( N  e.  om  ->  om  =/=  N )
46 fvunsng 5847 . . . 4  |-  ( ( N  e.  om  /\  om  =/=  N )  -> 
( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u.  { <. om , +oo >. } ) `  N )  =  (frec ( ( x  e.  ZZ  |->  ( x  + 
1 ) ) ,  0 ) `  N
) )
4745, 46mpdan 421 . . 3  |-  ( N  e.  om  ->  (
(frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u. 
{ <. om , +oo >. } ) `  N
)  =  (frec ( ( x  e.  ZZ  |->  ( x  +  1
) ) ,  0 ) `  N ) )
4847adantr 276 . 2  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )  u.  { <. om , +oo >. } ) `  N )  =  (frec ( ( x  e.  ZZ  |->  ( x  + 
1 ) ) ,  0 ) `  N
) )
4939, 48eqtrd 2264 1  |-  ( ( N  e.  om  /\  N  ~~  A )  -> 
( `  A )  =  (frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 ) `  N ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 104    <-> wb 105    = wceq 1397    e. wcel 2202    =/= wne 2402   {crab 2514   _Vcvv 2802    u. cun 3198   {csn 3669   <.cop 3672   U.cuni 3893   class class class wbr 4088   {copab 4149    |-> cmpt 4150   Ord word 4459   omcom 4688   dom cdm 4725    o. ccom 4729   Fun wfun 5320   ` cfv 5326  (class class class)co 6017  freccfrec 6555    ~~ cen 6906    ~<_ cdom 6907   Fincfn 6908   0cc0 8031   1c1 8032    + caddc 8034   +oocpnf 8210   ZZcz 9478  ♯chash 11036
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 619  ax-in2 620  ax-io 716  ax-5 1495  ax-7 1496  ax-gen 1497  ax-ie1 1541  ax-ie2 1542  ax-8 1552  ax-10 1553  ax-11 1554  ax-i12 1555  ax-bndl 1557  ax-4 1558  ax-17 1574  ax-i9 1578  ax-ial 1582  ax-i5r 1583  ax-13 2204  ax-14 2205  ax-ext 2213  ax-sep 4207  ax-nul 4215  ax-pow 4264  ax-pr 4299  ax-un 4530  ax-setind 4635  ax-iinf 4686
This theorem depends on definitions:  df-bi 117  df-dc 842  df-3or 1005  df-3an 1006  df-tru 1400  df-fal 1403  df-nf 1509  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2363  df-ne 2403  df-ral 2515  df-rex 2516  df-rab 2519  df-v 2804  df-sbc 3032  df-dif 3202  df-un 3204  df-in 3206  df-ss 3213  df-nul 3495  df-pw 3654  df-sn 3675  df-pr 3676  df-op 3678  df-uni 3894  df-int 3929  df-br 4089  df-opab 4151  df-mpt 4152  df-tr 4188  df-id 4390  df-iord 4463  df-on 4465  df-suc 4468  df-iom 4689  df-xp 4731  df-rel 4732  df-cnv 4733  df-co 4734  df-dm 4735  df-rn 4736  df-res 4737  df-ima 4738  df-iota 5286  df-fun 5328  df-fn 5329  df-f 5330  df-f1 5331  df-fo 5332  df-f1o 5333  df-fv 5334  df-er 6701  df-en 6909  df-dom 6910  df-fin 6911  df-ihash 11037
This theorem is referenced by:  hashcl  11042  hashfz1  11044  hashen  11045  fihashdom  11065  hashun  11067
  Copyright terms: Public domain W3C validator