| Step | Hyp | Ref | Expression | 
						
							| 1 |  | fnprb.a |  |-  A e. _V | 
						
							| 2 |  | fnprb.b |  |-  B e. _V | 
						
							| 3 | 1 | fnsnb |  |-  ( F Fn { A } <-> F = { <. A , ( F ` A ) >. } ) | 
						
							| 4 |  | dfsn2 |  |-  { A } = { A , A } | 
						
							| 5 | 4 | fneq2i |  |-  ( F Fn { A } <-> F Fn { A , A } ) | 
						
							| 6 |  | dfsn2 |  |-  { <. A , ( F ` A ) >. } = { <. A , ( F ` A ) >. , <. A , ( F ` A ) >. } | 
						
							| 7 | 6 | eqeq2i |  |-  ( F = { <. A , ( F ` A ) >. } <-> F = { <. A , ( F ` A ) >. , <. A , ( F ` A ) >. } ) | 
						
							| 8 | 3 5 7 | 3bitr3i |  |-  ( F Fn { A , A } <-> F = { <. A , ( F ` A ) >. , <. A , ( F ` A ) >. } ) | 
						
							| 9 | 8 | a1i |  |-  ( A = B -> ( F Fn { A , A } <-> F = { <. A , ( F ` A ) >. , <. A , ( F ` A ) >. } ) ) | 
						
							| 10 |  | preq2 |  |-  ( A = B -> { A , A } = { A , B } ) | 
						
							| 11 | 10 | fneq2d |  |-  ( A = B -> ( F Fn { A , A } <-> F Fn { A , B } ) ) | 
						
							| 12 |  | id |  |-  ( A = B -> A = B ) | 
						
							| 13 |  | fveq2 |  |-  ( A = B -> ( F ` A ) = ( F ` B ) ) | 
						
							| 14 | 12 13 | opeq12d |  |-  ( A = B -> <. A , ( F ` A ) >. = <. B , ( F ` B ) >. ) | 
						
							| 15 | 14 | preq2d |  |-  ( A = B -> { <. A , ( F ` A ) >. , <. A , ( F ` A ) >. } = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) | 
						
							| 16 | 15 | eqeq2d |  |-  ( A = B -> ( F = { <. A , ( F ` A ) >. , <. A , ( F ` A ) >. } <-> F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) ) | 
						
							| 17 | 9 11 16 | 3bitr3d |  |-  ( A = B -> ( F Fn { A , B } <-> F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) ) | 
						
							| 18 |  | fndm |  |-  ( F Fn { A , B } -> dom F = { A , B } ) | 
						
							| 19 |  | fvex |  |-  ( F ` A ) e. _V | 
						
							| 20 |  | fvex |  |-  ( F ` B ) e. _V | 
						
							| 21 | 19 20 | dmprop |  |-  dom { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } = { A , B } | 
						
							| 22 | 18 21 | eqtr4di |  |-  ( F Fn { A , B } -> dom F = dom { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) | 
						
							| 23 | 22 | adantl |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> dom F = dom { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) | 
						
							| 24 | 18 | adantl |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> dom F = { A , B } ) | 
						
							| 25 | 24 | eleq2d |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( x e. dom F <-> x e. { A , B } ) ) | 
						
							| 26 |  | vex |  |-  x e. _V | 
						
							| 27 | 26 | elpr |  |-  ( x e. { A , B } <-> ( x = A \/ x = B ) ) | 
						
							| 28 | 1 19 | fvpr1 |  |-  ( A =/= B -> ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` A ) = ( F ` A ) ) | 
						
							| 29 | 28 | adantr |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` A ) = ( F ` A ) ) | 
						
							| 30 | 29 | eqcomd |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( F ` A ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` A ) ) | 
						
							| 31 |  | fveq2 |  |-  ( x = A -> ( F ` x ) = ( F ` A ) ) | 
						
							| 32 |  | fveq2 |  |-  ( x = A -> ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` A ) ) | 
						
							| 33 | 31 32 | eqeq12d |  |-  ( x = A -> ( ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) <-> ( F ` A ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` A ) ) ) | 
						
							| 34 | 30 33 | syl5ibrcom |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( x = A -> ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) ) ) | 
						
							| 35 | 2 20 | fvpr2 |  |-  ( A =/= B -> ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` B ) = ( F ` B ) ) | 
						
							| 36 | 35 | adantr |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` B ) = ( F ` B ) ) | 
						
							| 37 | 36 | eqcomd |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( F ` B ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` B ) ) | 
						
							| 38 |  | fveq2 |  |-  ( x = B -> ( F ` x ) = ( F ` B ) ) | 
						
							| 39 |  | fveq2 |  |-  ( x = B -> ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` B ) ) | 
						
							| 40 | 38 39 | eqeq12d |  |-  ( x = B -> ( ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) <-> ( F ` B ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` B ) ) ) | 
						
							| 41 | 37 40 | syl5ibrcom |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( x = B -> ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) ) ) | 
						
							| 42 | 34 41 | jaod |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( ( x = A \/ x = B ) -> ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) ) ) | 
						
							| 43 | 27 42 | biimtrid |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( x e. { A , B } -> ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) ) ) | 
						
							| 44 | 25 43 | sylbid |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( x e. dom F -> ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) ) ) | 
						
							| 45 | 44 | ralrimiv |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> A. x e. dom F ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) ) | 
						
							| 46 |  | fnfun |  |-  ( F Fn { A , B } -> Fun F ) | 
						
							| 47 | 1 2 19 20 | funpr |  |-  ( A =/= B -> Fun { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) | 
						
							| 48 |  | eqfunfv |  |-  ( ( Fun F /\ Fun { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) -> ( F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } <-> ( dom F = dom { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } /\ A. x e. dom F ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) ) ) ) | 
						
							| 49 | 46 47 48 | syl2anr |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> ( F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } <-> ( dom F = dom { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } /\ A. x e. dom F ( F ` x ) = ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ` x ) ) ) ) | 
						
							| 50 | 23 45 49 | mpbir2and |  |-  ( ( A =/= B /\ F Fn { A , B } ) -> F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) | 
						
							| 51 |  | df-fn |  |-  ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } Fn { A , B } <-> ( Fun { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } /\ dom { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } = { A , B } ) ) | 
						
							| 52 | 47 21 51 | sylanblrc |  |-  ( A =/= B -> { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } Fn { A , B } ) | 
						
							| 53 |  | fneq1 |  |-  ( F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } -> ( F Fn { A , B } <-> { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } Fn { A , B } ) ) | 
						
							| 54 | 53 | biimprd |  |-  ( F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } -> ( { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } Fn { A , B } -> F Fn { A , B } ) ) | 
						
							| 55 | 52 54 | mpan9 |  |-  ( ( A =/= B /\ F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) -> F Fn { A , B } ) | 
						
							| 56 | 50 55 | impbida |  |-  ( A =/= B -> ( F Fn { A , B } <-> F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) ) | 
						
							| 57 | 17 56 | pm2.61ine |  |-  ( F Fn { A , B } <-> F = { <. A , ( F ` A ) >. , <. B , ( F ` B ) >. } ) |