MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  fvmptt Structured version   Unicode version

Theorem fvmptt 5978
Description: Closed theorem form of fvmpt 5961. (Contributed by Scott Fenton, 21-Feb-2013.) (Revised by Mario Carneiro, 11-Sep-2015.)
Assertion
Ref Expression
fvmptt  |-  ( ( A. x ( x  =  A  ->  B  =  C )  /\  F  =  ( x  e.  D  |->  B )  /\  ( A  e.  D  /\  C  e.  V
) )  ->  ( F `  A )  =  C )
Distinct variable groups:    x, A    x, C    x, D
Allowed substitution hints:    B( x)    F( x)    V( x)

Proof of Theorem fvmptt
StepHypRef Expression
1 simp2 1006 . . 3  |-  ( ( A. x ( x  =  A  ->  B  =  C )  /\  F  =  ( x  e.  D  |->  B )  /\  ( A  e.  D  /\  C  e.  V
) )  ->  F  =  ( x  e.  D  |->  B ) )
21fveq1d 5880 . 2  |-  ( ( A. x ( x  =  A  ->  B  =  C )  /\  F  =  ( x  e.  D  |->  B )  /\  ( A  e.  D  /\  C  e.  V
) )  ->  ( F `  A )  =  ( ( x  e.  D  |->  B ) `
 A ) )
3 risset 2953 . . . . 5  |-  ( A  e.  D  <->  E. x  e.  D  x  =  A )
4 elex 3090 . . . . . 6  |-  ( C  e.  V  ->  C  e.  _V )
5 nfa1 1952 . . . . . . 7  |-  F/ x A. x ( x  =  A  ->  B  =  C )
6 nfv 1751 . . . . . . . 8  |-  F/ x  C  e.  _V
7 nffvmpt1 5886 . . . . . . . . 9  |-  F/_ x
( ( x  e.  D  |->  B ) `  A )
87nfeq1 2599 . . . . . . . 8  |-  F/ x
( ( x  e.  D  |->  B ) `  A )  =  C
96, 8nfim 1976 . . . . . . 7  |-  F/ x
( C  e.  _V  ->  ( ( x  e.  D  |->  B ) `  A )  =  C )
10 simprl 762 . . . . . . . . . . . . 13  |-  ( ( ( x  =  A  /\  B  =  C )  /\  ( x  e.  D  /\  C  e.  _V ) )  ->  x  e.  D )
11 simplr 760 . . . . . . . . . . . . . 14  |-  ( ( ( x  =  A  /\  B  =  C )  /\  ( x  e.  D  /\  C  e.  _V ) )  ->  B  =  C )
12 simprr 764 . . . . . . . . . . . . . 14  |-  ( ( ( x  =  A  /\  B  =  C )  /\  ( x  e.  D  /\  C  e.  _V ) )  ->  C  e.  _V )
1311, 12eqeltrd 2510 . . . . . . . . . . . . 13  |-  ( ( ( x  =  A  /\  B  =  C )  /\  ( x  e.  D  /\  C  e.  _V ) )  ->  B  e.  _V )
14 eqid 2422 . . . . . . . . . . . . . 14  |-  ( x  e.  D  |->  B )  =  ( x  e.  D  |->  B )
1514fvmpt2 5970 . . . . . . . . . . . . 13  |-  ( ( x  e.  D  /\  B  e.  _V )  ->  ( ( x  e.  D  |->  B ) `  x )  =  B )
1610, 13, 15syl2anc 665 . . . . . . . . . . . 12  |-  ( ( ( x  =  A  /\  B  =  C )  /\  ( x  e.  D  /\  C  e.  _V ) )  -> 
( ( x  e.  D  |->  B ) `  x )  =  B )
17 simpll 758 . . . . . . . . . . . . 13  |-  ( ( ( x  =  A  /\  B  =  C )  /\  ( x  e.  D  /\  C  e.  _V ) )  ->  x  =  A )
1817fveq2d 5882 . . . . . . . . . . . 12  |-  ( ( ( x  =  A  /\  B  =  C )  /\  ( x  e.  D  /\  C  e.  _V ) )  -> 
( ( x  e.  D  |->  B ) `  x )  =  ( ( x  e.  D  |->  B ) `  A
) )
1916, 18, 113eqtr3d 2471 . . . . . . . . . . 11  |-  ( ( ( x  =  A  /\  B  =  C )  /\  ( x  e.  D  /\  C  e.  _V ) )  -> 
( ( x  e.  D  |->  B ) `  A )  =  C )
2019exp43 615 . . . . . . . . . 10  |-  ( x  =  A  ->  ( B  =  C  ->  ( x  e.  D  -> 
( C  e.  _V  ->  ( ( x  e.  D  |->  B ) `  A )  =  C ) ) ) )
2120a2i 14 . . . . . . . . 9  |-  ( ( x  =  A  ->  B  =  C )  ->  ( x  =  A  ->  ( x  e.  D  ->  ( C  e.  _V  ->  ( (
x  e.  D  |->  B ) `  A )  =  C ) ) ) )
2221com23 81 . . . . . . . 8  |-  ( ( x  =  A  ->  B  =  C )  ->  ( x  e.  D  ->  ( x  =  A  ->  ( C  e. 
_V  ->  ( ( x  e.  D  |->  B ) `
 A )  =  C ) ) ) )
2322sps 1916 . . . . . . 7  |-  ( A. x ( x  =  A  ->  B  =  C )  ->  (
x  e.  D  -> 
( x  =  A  ->  ( C  e. 
_V  ->  ( ( x  e.  D  |->  B ) `
 A )  =  C ) ) ) )
245, 9, 23rexlimd 2909 . . . . . 6  |-  ( A. x ( x  =  A  ->  B  =  C )  ->  ( E. x  e.  D  x  =  A  ->  ( C  e.  _V  ->  ( ( x  e.  D  |->  B ) `  A
)  =  C ) ) )
254, 24syl7 70 . . . . 5  |-  ( A. x ( x  =  A  ->  B  =  C )  ->  ( E. x  e.  D  x  =  A  ->  ( C  e.  V  -> 
( ( x  e.  D  |->  B ) `  A )  =  C ) ) )
263, 25syl5bi 220 . . . 4  |-  ( A. x ( x  =  A  ->  B  =  C )  ->  ( A  e.  D  ->  ( C  e.  V  -> 
( ( x  e.  D  |->  B ) `  A )  =  C ) ) )
2726imp32 434 . . 3  |-  ( ( A. x ( x  =  A  ->  B  =  C )  /\  ( A  e.  D  /\  C  e.  V )
)  ->  ( (
x  e.  D  |->  B ) `  A )  =  C )
28273adant2 1024 . 2  |-  ( ( A. x ( x  =  A  ->  B  =  C )  /\  F  =  ( x  e.  D  |->  B )  /\  ( A  e.  D  /\  C  e.  V
) )  ->  (
( x  e.  D  |->  B ) `  A
)  =  C )
292, 28eqtrd 2463 1  |-  ( ( A. x ( x  =  A  ->  B  =  C )  /\  F  =  ( x  e.  D  |->  B )  /\  ( A  e.  D  /\  C  e.  V
) )  ->  ( F `  A )  =  C )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 370    /\ w3a 982   A.wal 1435    = wceq 1437    e. wcel 1868   E.wrex 2776   _Vcvv 3081    |-> cmpt 4479   ` cfv 5598
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1665  ax-4 1678  ax-5 1748  ax-6 1794  ax-7 1839  ax-8 1870  ax-9 1872  ax-10 1887  ax-11 1892  ax-12 1905  ax-13 2053  ax-ext 2400  ax-sep 4543  ax-nul 4552  ax-pow 4599  ax-pr 4657
This theorem depends on definitions:  df-bi 188  df-or 371  df-an 372  df-3an 984  df-tru 1440  df-ex 1660  df-nf 1664  df-sb 1787  df-eu 2269  df-mo 2270  df-clab 2408  df-cleq 2414  df-clel 2417  df-nfc 2572  df-ne 2620  df-ral 2780  df-rex 2781  df-rab 2784  df-v 3083  df-sbc 3300  df-csb 3396  df-dif 3439  df-un 3441  df-in 3443  df-ss 3450  df-nul 3762  df-if 3910  df-sn 3997  df-pr 3999  df-op 4003  df-uni 4217  df-br 4421  df-opab 4480  df-mpt 4481  df-id 4765  df-xp 4856  df-rel 4857  df-cnv 4858  df-co 4859  df-dm 4860  df-rn 4861  df-res 4862  df-ima 4863  df-iota 5562  df-fun 5600  df-fv 5606
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator