HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem fopabcos 3818
Description: Composition of two functions expressed as ordered-pair class abstractions.
Hypotheses
Ref Expression
fopabcos.1 |- C e. V
fopabcos.2 |- D e. V
fopabcos.3 |- F = {<.x, y>. | (x e. A /\ y = C)}
fopabcos.4 |- G = {<.x, y>. | (x e. B /\ y = D)}
Assertion
Ref Expression
fopabcos |- (ran G (_ A -> (F o. G) = {<.x, y>. | (x e. B /\ y = [_D / x]_C)})
Distinct variable groups:   x,y,A   x,B,y   y,C   y,D

Proof of Theorem fopabcos
StepHypRef Expression
1 visset 1804 . . . . . . . . 9 |- z e. V
2 fopabcos.2 . . . . . . . . 9 |- D e. V
3 fopabcos.4 . . . . . . . . 9 |- G = {<.x, y>. | (x e. B /\ y = D)}
41, 2, 3fvopab4s 3768 . . . . . . . 8 |- (z e. B -> (G` z) = [_z / x]_D)
54adantl 388 . . . . . . 7 |- ((ran G (_ A /\ z e. B) -> (G` z) = [_z / x]_D)
62, 3fnopab2 3604 . . . . . . . . . 10 |- G Fn B
7 fnfvelrn 3798 . . . . . . . . . 10 |- ((G Fn B /\ z e. B) -> (G` z) e. ran G)
86, 7mpan 693 . . . . . . . . 9 |- (z e. B -> (G` z) e. ran G)
98adantl 388 . . . . . . . 8 |- ((ran G (_ A /\ z e. B) -> (G` z) e. ran G)
10 ssel 2053 . . . . . . . . 9 |- (ran G (_ A -> ((G` z) e. ran G -> (G` z) e. A))
1110adantr 389 . . . . . . . 8 |- ((ran G (_ A /\ z e. B) -> ((G` z) e. ran G -> (G` z) e. A))
129, 11mpd 26 . . . . . . 7 |- ((ran G (_ A /\ z e. B) -> (G` z) e. A)
135, 12eqeltrrd 1541 . . . . . 6 |- ((ran G (_ A /\ z e. B) -> [_z / x]_D e. A)
141, 2csbex 1999 . . . . . . 7 |- [_z / x]_D e. V
15 fopabcos.1 . . . . . . 7 |- C e. V
16 ax-17 968 . . . . . . . 8 |- (w e. z -> A.x w e. z)
171, 16hbcsb1 2015 . . . . . . 7 |- (w e. [_z / x]_D -> A.x w e. [_z / x]_D)
18 fopabcos.3 . . . . . . 7 |- F = {<.x, y>. | (x e. A /\ y = C)}
1914, 15, 17, 18fvopab4sf 3767 . . . . . 6 |- ([_z / x]_D e. A -> (F` [_z / x]_D) = [_[_z / x]_D / x]_C)
2013, 19syl 10 . . . . 5 |- ((ran G (_ A /\ z e. B) -> (F` [_z / x]_D) = [_[_z / x]_D / x]_C)
212, 3dmopab2 3605 . . . . . . . . 9 |- dom G = B
2221eleq2i 1530 . . . . . . . 8 |- (z e. dom G <-> z e. B)
2315, 18fnopab2 3604 . . . . . . . . . 10 |- F Fn A
24 fnfun 3571 . . . . . . . . . 10 |- (F Fn A -> Fun F)
2523, 24ax-mp 7 . . . . . . . . 9 |- Fun F
26 fnfun 3571 . . . . . . . . . 10 |- (G Fn B -> Fun G)
276, 26ax-mp 7 . . . . . . . . 9 |- Fun G
28 fvco 3759 . . . . . . . . 9 |- ((Fun F /\ Fun G /\ z e. dom G) -> ((F o. G)` z) = (F` (G` z)))
2925, 27, 28mp3an12 903 . . . . . . . 8 |- (z e. dom G -> ((F o. G)` z) = (F` (G` z)))
3022, 29sylbir 201 . . . . . . 7 |- (z e. B -> ((F o. G)` z) = (F` (G` z)))
314fveq2d 3713 . . . . . . 7 |- (z e. B -> (F` (G` z)) = (F` [_z / x]_D))
3230, 31eqtrd 1499 . . . . . 6 |- (z e. B -> ((F o. G)` z) = (F` [_z / x]_D))
3332adantl 388 . . . . 5 |- ((ran G (_ A /\ z e. B) -> ((F o. G)` z) = (F` [_z / x]_D))
342, 15csbex 1999 . . . . . . . 8 |- [_D / x]_C e. V
35 eqid 1468 . . . . . . . 8 |- {<.x, y>. | (x e. B /\ y = [_D / x]_C)} = {<.x, y>. | (x e. B /\ y = [_D / x]_C)}
361, 34, 35fvopab4s 3768 . . . . . . 7 |- (z e. B -> ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z) = [_z / x]_[_D / x]_C)
372ax-gen 960 . . . . . . . 8 |- A.x D e. V
38 csbnest1g 2027 . . . . . . . 8 |- ((z e. V /\ A.x D e. V) -> [_z / x]_[_D / x]_C = [_[_z / x]_D / x]_C)
391, 37, 38mp2an 695 . . . . . . 7 |- [_z / x]_[_D / x]_C = [_[_z / x]_D / x]_C
4036, 39syl6eq 1515 . . . . . 6 |- (z e. B -> ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z) = [_[_z / x]_D / x]_C)
4140adantl 388 . . . . 5 |- ((ran G (_ A /\ z e. B) -> ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z) = [_[_z / x]_D / x]_C)
4220, 33, 413eqtr4d 1509 . . . 4 |- ((ran G (_ A /\ z e. B) -> ((F o. G)` z) = ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z))
4342r19.21aiva 1706 . . 3 |- (ran G (_ A -> A.z e. B ((F o. G)` z) = ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z))
44 eqid 1468 . . 3 |- B = B
4543, 44jctil 292 . 2 |- (ran G (_ A -> (B = B /\ A.z e. B ((F o. G)` z) = ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z)))
46 fnco 3581 . . . 4 |- ((F Fn A /\ G Fn B /\ ran G (_ A) -> (F o. G) Fn B)
4723, 6, 46mp3an12 903 . . 3 |- (ran G (_ A -> (F o. G) Fn B)
4834, 35fnopab2 3604 . . . 4 |- {<.x, y>. | (x e. B /\ y = [_D / x]_C)} Fn B
49 ax-17 968 . . . . 5 |- (w e. (F o. G) -> A.z w e. (F o. G))
50 ax-17 968 . . . . 5 |- (w e. {<.x, y>. | (x e. B /\ y = [_D / x]_C)} -> A.z w e. {<.x, y>. | (x e. B /\ y = [_D / x]_C)})
5149, 50eqfnfvf 3783 . . . 4 |- (((F o. G) Fn B /\ {<.x, y>. | (x e. B /\ y = [_D / x]_C)} Fn B) -> ((F o. G) = {<.x, y>. | (x e. B /\ y = [_D / x]_C)} <-> (B = B /\ A.z e. B ((F o. G)` z) = ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z))))
5248, 51mpan2 694 . . 3 |- ((F o. G) Fn B -> ((F o. G) = {<.x, y>. | (x e. B /\ y = [_D / x]_C)} <-> (B = B /\ A.z e. B ((F o. G)` z) = ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z))))
5347, 52syl 10 . 2 |- (ran G (_ A -> ((F o. G) = {<.x, y>. | (x e. B /\ y = [_D / x]_C)} <-> (B = B /\ A.z e. B ((F o. G)` z) = ({<.x, y>. | (x e. B /\ y = [_D / x]_C)}` z))))
5445, 53mpbird 196 1 |- (ran G (_ A -> (F o. G) = {<.x, y>. | (x e. B /\ y = [_D / x]_C)})
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 146   /\ wa 223  A.wal 951   = wceq 953   e. wcel 955  A.wral 1637  Vcvv 1802  [_csb 1991   (_ wss 2037  {copab 2656  dom cdm 3160  ran crn 3161   o. ccom 3164  Fun wfun 3166   Fn wfn 3167  ` cfv 3172
This theorem is referenced by:  oprcn 7911  kbass2t 9962  kbass5t 9965
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 959  ax-gen 960  ax-8 961  ax-9 962  ax-10 963  ax-11 964  ax-12 965  ax-13 966  ax-14 967  ax-17 968  ax-4 970  ax-5o 972  ax-6o 975  ax-9o 1119  ax-10o 1136  ax-16 1206  ax-11o 1213  ax-ext 1452  ax-sep 2693  ax-pow 2732  ax-pr 2769  ax-un 2857
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-3an 775  df-ex 978  df-sb 1168  df-eu 1375  df-mo 1376  df-clab 1457  df-cleq 1462  df-clel 1465  df-ne 1579  df-ral 1641  df-rex 1642  df-v 1803  df-sbc 1932  df-csb 1992  df-dif 2039  df-un 2040  df-in 2041  df-ss 2043  df-nul 2271  df-pw 2392  df-sn 2402  df-pr 2403  df-op 2406  df-uni 2494  df-br 2610  df-opab 2657  df-id 2824  df-xp 3174  df-rel 3175  df-cnv 3176  df-co 3177  df-dm 3178  df-rn 3179  df-res 3180  df-ima 3181  df-fun 3182  df-fn 3183  df-fv 3188
Copyright terms: Public domain