Metamath Proof Explorer


Theorem afv0nbfvbi

Description: The function's value at an argument is an element of a set if and only if the value of the alternative function at this argument is an element of that set, if the set does not contain the empty set. (Contributed by Alexander van der Vekens, 25-May-2017)

Ref Expression
Assertion afv0nbfvbi
|- ( (/) e/ B -> ( ( F ''' A ) e. B <-> ( F ` A ) e. B ) )

Proof

Step Hyp Ref Expression
1 afvvfveq
 |-  ( ( F ''' A ) e. B -> ( F ''' A ) = ( F ` A ) )
2 eleq1
 |-  ( ( F ''' A ) = ( F ` A ) -> ( ( F ''' A ) e. B <-> ( F ` A ) e. B ) )
3 2 biimpd
 |-  ( ( F ''' A ) = ( F ` A ) -> ( ( F ''' A ) e. B -> ( F ` A ) e. B ) )
4 1 3 mpcom
 |-  ( ( F ''' A ) e. B -> ( F ` A ) e. B )
5 elnelne2
 |-  ( ( ( F ` A ) e. B /\ (/) e/ B ) -> ( F ` A ) =/= (/) )
6 5 ancoms
 |-  ( ( (/) e/ B /\ ( F ` A ) e. B ) -> ( F ` A ) =/= (/) )
7 fvfundmfvn0
 |-  ( ( F ` A ) =/= (/) -> ( A e. dom F /\ Fun ( F |` { A } ) ) )
8 df-dfat
 |-  ( F defAt A <-> ( A e. dom F /\ Fun ( F |` { A } ) ) )
9 afvfundmfveq
 |-  ( F defAt A -> ( F ''' A ) = ( F ` A ) )
10 8 9 sylbir
 |-  ( ( A e. dom F /\ Fun ( F |` { A } ) ) -> ( F ''' A ) = ( F ` A ) )
11 eleq1
 |-  ( ( F ` A ) = ( F ''' A ) -> ( ( F ` A ) e. B <-> ( F ''' A ) e. B ) )
12 11 eqcoms
 |-  ( ( F ''' A ) = ( F ` A ) -> ( ( F ` A ) e. B <-> ( F ''' A ) e. B ) )
13 12 biimpd
 |-  ( ( F ''' A ) = ( F ` A ) -> ( ( F ` A ) e. B -> ( F ''' A ) e. B ) )
14 6 7 10 13 4syl
 |-  ( ( (/) e/ B /\ ( F ` A ) e. B ) -> ( ( F ` A ) e. B -> ( F ''' A ) e. B ) )
15 14 ex
 |-  ( (/) e/ B -> ( ( F ` A ) e. B -> ( ( F ` A ) e. B -> ( F ''' A ) e. B ) ) )
16 15 pm2.43d
 |-  ( (/) e/ B -> ( ( F ` A ) e. B -> ( F ''' A ) e. B ) )
17 4 16 impbid2
 |-  ( (/) e/ B -> ( ( F ''' A ) e. B <-> ( F ` A ) e. B ) )