Metamath Proof Explorer


Theorem findcard2s

Description: Variation of findcard2 requiring that the element added in the induction step not be a member of the original set. (Contributed by Paul Chapman, 30-Nov-2012)

Ref Expression
Hypotheses findcard2s.1
|- ( x = (/) -> ( ph <-> ps ) )
findcard2s.2
|- ( x = y -> ( ph <-> ch ) )
findcard2s.3
|- ( x = ( y u. { z } ) -> ( ph <-> th ) )
findcard2s.4
|- ( x = A -> ( ph <-> ta ) )
findcard2s.5
|- ps
findcard2s.6
|- ( ( y e. Fin /\ -. z e. y ) -> ( ch -> th ) )
Assertion findcard2s
|- ( A e. Fin -> ta )

Proof

Step Hyp Ref Expression
1 findcard2s.1
 |-  ( x = (/) -> ( ph <-> ps ) )
2 findcard2s.2
 |-  ( x = y -> ( ph <-> ch ) )
3 findcard2s.3
 |-  ( x = ( y u. { z } ) -> ( ph <-> th ) )
4 findcard2s.4
 |-  ( x = A -> ( ph <-> ta ) )
5 findcard2s.5
 |-  ps
6 findcard2s.6
 |-  ( ( y e. Fin /\ -. z e. y ) -> ( ch -> th ) )
7 6 ex
 |-  ( y e. Fin -> ( -. z e. y -> ( ch -> th ) ) )
8 uncom
 |-  ( { z } u. y ) = ( y u. { z } )
9 snssi
 |-  ( z e. y -> { z } C_ y )
10 ssequn1
 |-  ( { z } C_ y <-> ( { z } u. y ) = y )
11 9 10 sylib
 |-  ( z e. y -> ( { z } u. y ) = y )
12 8 11 syl5reqr
 |-  ( z e. y -> y = ( y u. { z } ) )
13 vex
 |-  y e. _V
14 13 eqvinc
 |-  ( y = ( y u. { z } ) <-> E. x ( x = y /\ x = ( y u. { z } ) ) )
15 12 14 sylib
 |-  ( z e. y -> E. x ( x = y /\ x = ( y u. { z } ) ) )
16 2 bicomd
 |-  ( x = y -> ( ch <-> ph ) )
17 16 3 sylan9bb
 |-  ( ( x = y /\ x = ( y u. { z } ) ) -> ( ch <-> th ) )
18 17 exlimiv
 |-  ( E. x ( x = y /\ x = ( y u. { z } ) ) -> ( ch <-> th ) )
19 15 18 syl
 |-  ( z e. y -> ( ch <-> th ) )
20 19 biimpd
 |-  ( z e. y -> ( ch -> th ) )
21 7 20 pm2.61d2
 |-  ( y e. Fin -> ( ch -> th ) )
22 1 2 3 4 5 21 findcard2
 |-  ( A e. Fin -> ta )