| Step | Hyp | Ref | Expression | 
						
							| 1 |  | fvco2 |  |-  ( ( G Fn A /\ X e. A ) -> ( ( F o. G ) ` X ) = ( F ` ( G ` X ) ) ) | 
						
							| 2 | 1 | adantl |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( ( F o. G ) ` X ) = ( F ` ( G ` X ) ) ) | 
						
							| 3 |  | simpll |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( G ` X ) e. dom F ) | 
						
							| 4 |  | df-fn |  |-  ( G Fn A <-> ( Fun G /\ dom G = A ) ) | 
						
							| 5 |  | simpll |  |-  ( ( ( Fun G /\ dom G = A ) /\ X e. A ) -> Fun G ) | 
						
							| 6 |  | eleq2 |  |-  ( A = dom G -> ( X e. A <-> X e. dom G ) ) | 
						
							| 7 | 6 | eqcoms |  |-  ( dom G = A -> ( X e. A <-> X e. dom G ) ) | 
						
							| 8 | 7 | biimpd |  |-  ( dom G = A -> ( X e. A -> X e. dom G ) ) | 
						
							| 9 | 8 | adantl |  |-  ( ( Fun G /\ dom G = A ) -> ( X e. A -> X e. dom G ) ) | 
						
							| 10 | 9 | imp |  |-  ( ( ( Fun G /\ dom G = A ) /\ X e. A ) -> X e. dom G ) | 
						
							| 11 | 5 10 | jca |  |-  ( ( ( Fun G /\ dom G = A ) /\ X e. A ) -> ( Fun G /\ X e. dom G ) ) | 
						
							| 12 | 4 11 | sylanb |  |-  ( ( G Fn A /\ X e. A ) -> ( Fun G /\ X e. dom G ) ) | 
						
							| 13 | 12 | adantl |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( Fun G /\ X e. dom G ) ) | 
						
							| 14 |  | dmfco |  |-  ( ( Fun G /\ X e. dom G ) -> ( X e. dom ( F o. G ) <-> ( G ` X ) e. dom F ) ) | 
						
							| 15 | 13 14 | syl |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( X e. dom ( F o. G ) <-> ( G ` X ) e. dom F ) ) | 
						
							| 16 | 3 15 | mpbird |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> X e. dom ( F o. G ) ) | 
						
							| 17 |  | funcoressn |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> Fun ( ( F o. G ) |` { X } ) ) | 
						
							| 18 |  | df-dfat |  |-  ( ( F o. G ) defAt X <-> ( X e. dom ( F o. G ) /\ Fun ( ( F o. G ) |` { X } ) ) ) | 
						
							| 19 |  | afvfundmfveq |  |-  ( ( F o. G ) defAt X -> ( ( F o. G ) ''' X ) = ( ( F o. G ) ` X ) ) | 
						
							| 20 | 18 19 | sylbir |  |-  ( ( X e. dom ( F o. G ) /\ Fun ( ( F o. G ) |` { X } ) ) -> ( ( F o. G ) ''' X ) = ( ( F o. G ) ` X ) ) | 
						
							| 21 | 16 17 20 | syl2anc |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( ( F o. G ) ''' X ) = ( ( F o. G ) ` X ) ) | 
						
							| 22 |  | df-dfat |  |-  ( F defAt ( G ` X ) <-> ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) ) | 
						
							| 23 |  | afvfundmfveq |  |-  ( F defAt ( G ` X ) -> ( F ''' ( G ` X ) ) = ( F ` ( G ` X ) ) ) | 
						
							| 24 | 22 23 | sylbir |  |-  ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) -> ( F ''' ( G ` X ) ) = ( F ` ( G ` X ) ) ) | 
						
							| 25 | 24 | adantr |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( F ''' ( G ` X ) ) = ( F ` ( G ` X ) ) ) | 
						
							| 26 | 2 21 25 | 3eqtr4d |  |-  ( ( ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( ( F o. G ) ''' X ) = ( F ''' ( G ` X ) ) ) | 
						
							| 27 |  | ianor |  |-  ( -. ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) <-> ( -. ( G ` X ) e. dom F \/ -. Fun ( F |` { ( G ` X ) } ) ) ) | 
						
							| 28 | 14 | funfni |  |-  ( ( G Fn A /\ X e. A ) -> ( X e. dom ( F o. G ) <-> ( G ` X ) e. dom F ) ) | 
						
							| 29 | 28 | bicomd |  |-  ( ( G Fn A /\ X e. A ) -> ( ( G ` X ) e. dom F <-> X e. dom ( F o. G ) ) ) | 
						
							| 30 | 29 | notbid |  |-  ( ( G Fn A /\ X e. A ) -> ( -. ( G ` X ) e. dom F <-> -. X e. dom ( F o. G ) ) ) | 
						
							| 31 | 30 | biimpd |  |-  ( ( G Fn A /\ X e. A ) -> ( -. ( G ` X ) e. dom F -> -. X e. dom ( F o. G ) ) ) | 
						
							| 32 |  | ndmafv |  |-  ( -. X e. dom ( F o. G ) -> ( ( F o. G ) ''' X ) = _V ) | 
						
							| 33 | 31 32 | syl6com |  |-  ( -. ( G ` X ) e. dom F -> ( ( G Fn A /\ X e. A ) -> ( ( F o. G ) ''' X ) = _V ) ) | 
						
							| 34 |  | funressnfv |  |-  ( ( ( X e. dom ( F o. G ) /\ Fun ( ( F o. G ) |` { X } ) ) /\ ( G Fn A /\ X e. A ) ) -> Fun ( F |` { ( G ` X ) } ) ) | 
						
							| 35 | 34 | ex |  |-  ( ( X e. dom ( F o. G ) /\ Fun ( ( F o. G ) |` { X } ) ) -> ( ( G Fn A /\ X e. A ) -> Fun ( F |` { ( G ` X ) } ) ) ) | 
						
							| 36 |  | afvnfundmuv |  |-  ( -. ( F o. G ) defAt X -> ( ( F o. G ) ''' X ) = _V ) | 
						
							| 37 | 18 36 | sylnbir |  |-  ( -. ( X e. dom ( F o. G ) /\ Fun ( ( F o. G ) |` { X } ) ) -> ( ( F o. G ) ''' X ) = _V ) | 
						
							| 38 | 35 37 | nsyl4 |  |-  ( -. ( ( F o. G ) ''' X ) = _V -> ( ( G Fn A /\ X e. A ) -> Fun ( F |` { ( G ` X ) } ) ) ) | 
						
							| 39 | 38 | com12 |  |-  ( ( G Fn A /\ X e. A ) -> ( -. ( ( F o. G ) ''' X ) = _V -> Fun ( F |` { ( G ` X ) } ) ) ) | 
						
							| 40 | 39 | con1d |  |-  ( ( G Fn A /\ X e. A ) -> ( -. Fun ( F |` { ( G ` X ) } ) -> ( ( F o. G ) ''' X ) = _V ) ) | 
						
							| 41 | 40 | com12 |  |-  ( -. Fun ( F |` { ( G ` X ) } ) -> ( ( G Fn A /\ X e. A ) -> ( ( F o. G ) ''' X ) = _V ) ) | 
						
							| 42 | 33 41 | jaoi |  |-  ( ( -. ( G ` X ) e. dom F \/ -. Fun ( F |` { ( G ` X ) } ) ) -> ( ( G Fn A /\ X e. A ) -> ( ( F o. G ) ''' X ) = _V ) ) | 
						
							| 43 | 27 42 | sylbi |  |-  ( -. ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) -> ( ( G Fn A /\ X e. A ) -> ( ( F o. G ) ''' X ) = _V ) ) | 
						
							| 44 | 43 | imp |  |-  ( ( -. ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( ( F o. G ) ''' X ) = _V ) | 
						
							| 45 |  | afvnfundmuv |  |-  ( -. F defAt ( G ` X ) -> ( F ''' ( G ` X ) ) = _V ) | 
						
							| 46 | 22 45 | sylnbir |  |-  ( -. ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) -> ( F ''' ( G ` X ) ) = _V ) | 
						
							| 47 | 46 | eqcomd |  |-  ( -. ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) -> _V = ( F ''' ( G ` X ) ) ) | 
						
							| 48 | 47 | adantr |  |-  ( ( -. ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> _V = ( F ''' ( G ` X ) ) ) | 
						
							| 49 | 44 48 | eqtrd |  |-  ( ( -. ( ( G ` X ) e. dom F /\ Fun ( F |` { ( G ` X ) } ) ) /\ ( G Fn A /\ X e. A ) ) -> ( ( F o. G ) ''' X ) = ( F ''' ( G ` X ) ) ) | 
						
							| 50 | 26 49 | pm2.61ian |  |-  ( ( G Fn A /\ X e. A ) -> ( ( F o. G ) ''' X ) = ( F ''' ( G ` X ) ) ) | 
						
							| 51 |  | eqidd |  |-  ( ( G Fn A /\ X e. A ) -> F = F ) | 
						
							| 52 | 4 9 | sylbi |  |-  ( G Fn A -> ( X e. A -> X e. dom G ) ) | 
						
							| 53 | 52 | imp |  |-  ( ( G Fn A /\ X e. A ) -> X e. dom G ) | 
						
							| 54 |  | fnfun |  |-  ( G Fn A -> Fun G ) | 
						
							| 55 | 54 | funresd |  |-  ( G Fn A -> Fun ( G |` { X } ) ) | 
						
							| 56 | 55 | adantr |  |-  ( ( G Fn A /\ X e. A ) -> Fun ( G |` { X } ) ) | 
						
							| 57 |  | df-dfat |  |-  ( G defAt X <-> ( X e. dom G /\ Fun ( G |` { X } ) ) ) | 
						
							| 58 |  | afvfundmfveq |  |-  ( G defAt X -> ( G ''' X ) = ( G ` X ) ) | 
						
							| 59 | 57 58 | sylbir |  |-  ( ( X e. dom G /\ Fun ( G |` { X } ) ) -> ( G ''' X ) = ( G ` X ) ) | 
						
							| 60 | 53 56 59 | syl2anc |  |-  ( ( G Fn A /\ X e. A ) -> ( G ''' X ) = ( G ` X ) ) | 
						
							| 61 | 60 | eqcomd |  |-  ( ( G Fn A /\ X e. A ) -> ( G ` X ) = ( G ''' X ) ) | 
						
							| 62 | 51 61 | afveq12d |  |-  ( ( G Fn A /\ X e. A ) -> ( F ''' ( G ` X ) ) = ( F ''' ( G ''' X ) ) ) | 
						
							| 63 | 50 62 | eqtrd |  |-  ( ( G Fn A /\ X e. A ) -> ( ( F o. G ) ''' X ) = ( F ''' ( G ''' X ) ) ) |