Table of ContentsTable of Contents Mathbox for Frédéric Liné < Previous   Next >
Related theorems
Unicode version

Theorem isfuna 15182
Description: The class of functors between the categories T and U.
Hypotheses
Ref Expression
isfuna.1 |- O1 = dom (id` T)
isfuna.2 |- M1 = dom (dom` T)
isfuna.3 |- D1 = (dom` T)
isfuna.4 |- C1 = (cod` T)
isfuna.5 |- I1 = (id` T)
isfuna.6 |- Ro1 = (o` T)
isfuna.7 |- O2 = dom (id` U)
isfuna.8 |- M2 = dom (dom` U)
isfuna.9 |- D2 = (dom` U)
isfuna.10 |- C2 = (cod` U)
isfuna.11 |- I2 = (id` U)
isfuna.12 |- Ro2 = (o` U)
Assertion
Ref Expression
isfuna |- ((T e. Cat /\ U e. Cat ) -> ( Func ` <.T, U>.) = {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))})
Distinct variable groups:   f,M1,m   f,M2   o,O1   p,O2   T,f,m,n,o,p   U,f,m,n,o,p

Proof of Theorem isfuna
StepHypRef Expression
1 isfuna.8 . . . . . . . . 9 |- M2 = dom (dom` U)
2 fvex 4689 . . . . . . . . . 10 |- (dom` U) e. _V
32dmex 4208 . . . . . . . . 9 |- dom (dom` U) e. _V
41, 3eqeltri 1967 . . . . . . . 8 |- M2 e. _V
5 isfuna.2 . . . . . . . . 9 |- M1 = dom (dom` T)
6 fvex 4689 . . . . . . . . . 10 |- (dom` T) e. _V
76dmex 4208 . . . . . . . . 9 |- dom (dom` T) e. _V
85, 7eqeltri 1967 . . . . . . . 8 |- M1 e. _V
94, 8pm3.2i 307 . . . . . . 7 |- (M2 e. _V /\ M1 e. _V)
109a1i 8 . . . . . 6 |- ((T e. Cat /\ U e. Cat ) -> (M2 e. _V /\ M1 e. _V))
11 elmapg 5392 . . . . . 6 |- ((M2 e. _V /\ M1 e. _V) -> (f e. (M2 ^m M1) <-> f:M1-->M2))
1210, 11syl 12 . . . . 5 |- ((T e. Cat /\ U e. Cat ) -> (f e. (M2 ^m M1) <-> f:M1-->M2))
1312anbi1d 679 . . . 4 |- ((T e. Cat /\ U e. Cat ) -> ((f e. (M2 ^m M1) /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n))))) <-> (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))))
1413abbidv 2008 . . 3 |- ((T e. Cat /\ U e. Cat ) -> {f | (f e. (M2 ^m M1) /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))} = {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))})
159a1i 8 . . . . . . . 8 |- ((U e. Cat /\ T e. Cat ) -> (M2 e. _V /\ M1 e. _V))
16 mapvalg 5389 . . . . . . . 8 |- ((M2 e. _V /\ M1 e. _V) -> (M2 ^m M1) = {x | x:M1-->M2})
1715, 16syl 12 . . . . . . 7 |- ((U e. Cat /\ T e. Cat ) -> (M2 ^m M1) = {x | x:M1-->M2})
1817ancoms 484 . . . . . 6 |- ((T e. Cat /\ U e. Cat ) -> (M2 ^m M1) = {x | x:M1-->M2})
198, 4pm3.2i 307 . . . . . . . 8 |- (M1 e. _V /\ M2 e. _V)
2019a1i 8 . . . . . . 7 |- ((T e. Cat /\ U e. Cat ) -> (M1 e. _V /\ M2 e. _V))
21 mapex 5387 . . . . . . 7 |- ((M1 e. _V /\ M2 e. _V) -> {x | x:M1-->M2} e. _V)
2220, 21syl 12 . . . . . 6 |- ((T e. Cat /\ U e. Cat ) -> {x | x:M1-->M2} e. _V)
2318, 22eqeltrd 1971 . . . . 5 |- ((T e. Cat /\ U e. Cat ) -> (M2 ^m M1) e. _V)
24 rabexg 3460 . . . . 5 |- ((M2 ^m M1) e. _V -> {f e. (M2 ^m M1) | (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n))))} e. _V)
2523, 24syl 12 . . . 4 |- ((T e. Cat /\ U e. Cat ) -> {f e. (M2 ^m M1) | (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n))))} e. _V)
26 df-rab 2112 . . . 4 |- {f e. (M2 ^m M1) | (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n))))} = {f | (f e. (M2 ^m M1) /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))}
2725, 26syl5eqelr 1976 . . 3 |- ((T e. Cat /\ U e. Cat ) -> {f | (f e. (M2 ^m M1) /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))} e. _V)
2814, 27eqeltrrd 1972 . 2 |- ((T e. Cat /\ U e. Cat ) -> {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))} e. _V)
29 fveq2 4681 . . . . . . . . 9 |- (t = T -> (dom` t) = (dom` T))
3029dmeqd 4159 . . . . . . . 8 |- (t = T -> dom (dom` t) = dom (dom` T))
3130, 5syl6eqr 1946 . . . . . . 7 |- (t = T -> dom (dom` t) = M1)
3231feq2d 4557 . . . . . 6 |- (t = T -> (f:dom (dom` t)-->dom (dom` u) <-> f:M1-->dom (dom` u)))
33 fveq2 4681 . . . . . . . . 9 |- (t = T -> (id` t) = (id` T))
3433dmeqd 4159 . . . . . . . 8 |- (t = T -> dom (id` t) = dom (id` T))
3533fveq1d 4683 . . . . . . . . . . 11 |- (t = T -> ((id` t)` o) = ((id` T)` o))
3635fveq2d 4685 . . . . . . . . . 10 |- (t = T -> (f` ((id` t)` o)) = (f` ((id` T)` o)))
3736eqeq1d 1892 . . . . . . . . 9 |- (t = T -> ((f` ((id` t)` o)) = ((id` u)` p) <-> (f` ((id` T)` o)) = ((id` u)` p)))
3837rexbidv 2124 . . . . . . . 8 |- (t = T -> (E.p e. dom (id` u)(f` ((id` t)` o)) = ((id` u)` p) <-> E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p)))
3934, 38raleqbidv 2274 . . . . . . 7 |- (t = T -> (A.o e. dom (id` t)E.p e. dom (id` u)(f` ((id` t)` o)) = ((id` u)` p) <-> A.o e. dom (id` T)E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p)))
4029fveq1d 4683 . . . . . . . . . . . 12 |- (t = T -> ((dom` t)` m) = ((dom` T)` m))
4133, 40fveq12d 10152 . . . . . . . . . . 11 |- (t = T -> ((id` t)` ((dom` t)` m)) = ((id` T)` ((dom` T)` m)))
4241fveq2d 4685 . . . . . . . . . 10 |- (t = T -> (f` ((id` t)` ((dom` t)` m))) = (f` ((id` T)` ((dom` T)` m))))
4342eqeq1d 1892 . . . . . . . . 9 |- (t = T -> ((f` ((id` t)` ((dom` t)` m))) = ((id` u)` ((dom` u)` (f` m))) <-> (f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m)))))
4430, 43raleqbidv 2274 . . . . . . . 8 |- (t = T -> (A.m e. dom (dom` t)(f` ((id` t)` ((dom` t)` m))) = ((id` u)` ((dom` u)` (f` m))) <-> A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m)))))
45 fveq2 4681 . . . . . . . . . . . . 13 |- (t = T -> (cod` t) = (cod` T))
4645fveq1d 4683 . . . . . . . . . . . 12 |- (t = T -> ((cod` t)` m) = ((cod` T)` m))
4733, 46fveq12d 10152 . . . . . . . . . . 11 |- (t = T -> ((id` t)` ((cod` t)` m)) = ((id` T)` ((cod` T)` m)))
4847fveq2d 4685 . . . . . . . . . 10 |- (t = T -> (f` ((id` t)` ((cod` t)` m))) = (f` ((id` T)` ((cod` T)` m))))
4948eqeq1d 1892 . . . . . . . . 9 |- (t = T -> ((f` ((id` t)` ((cod` t)` m))) = ((id` u)` ((cod` u)` (f` m))) <-> (f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))))
5030, 49raleqbidv 2274 . . . . . . . 8 |- (t = T -> (A.m e. dom (dom` t)(f` ((id` t)` ((cod` t)` m))) = ((id` u)` ((cod` u)` (f` m))) <-> A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))))
5144, 50anbi12d 690 . . . . . . 7 |- (t = T -> ((A.m e. dom (dom` t)(f` ((id` t)` ((dom` t)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` t)(f` ((id` t)` ((cod` t)` m))) = ((id` u)` ((cod` u)` (f` m)))) <-> (A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m))))))
5245fveq1d 4683 . . . . . . . . . . 11 |- (t = T -> ((cod` t)` n) = ((cod` T)` n))
5352, 40eqeq12d 1899 . . . . . . . . . 10 |- (t = T -> (((cod` t)` n) = ((dom` t)` m) <-> ((cod` T)` n) = ((dom` T)` m)))
54 fveq2 4681 . . . . . . . . . . . . 13 |- (t = T -> (o` t) = (o` T))
5554opreqd 4899 . . . . . . . . . . . 12 |- (t = T -> (m(o` t)n) = (m(o` T)n))
5655fveq2d 4685 . . . . . . . . . . 11 |- (t = T -> (f` (m(o` t)n)) = (f` (m(o` T)n)))
5756eqeq1d 1892 . . . . . . . . . 10 |- (t = T -> ((f` (m(o` t)n)) = ((f` m)(o` u)(f` n)) <-> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n))))
5853, 57imbi12d 688 . . . . . . . . 9 |- (t = T -> ((((cod` t)` n) = ((dom` t)` m) -> (f` (m(o` t)n)) = ((f` m)(o` u)(f` n))) <-> (((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))))
5930, 58raleqbidv 2274 . . . . . . . 8 |- (t = T -> (A.n e. dom (dom` t)(((cod` t)` n) = ((dom` t)` m) -> (f` (m(o` t)n)) = ((f` m)(o` u)(f` n))) <-> A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))))
6030, 59raleqbidv 2274 . . . . . . 7 |- (t = T -> (A.m e. dom (dom` t)A.n e. dom (dom` t)(((cod` t)` n) = ((dom` t)` m) -> (f` (m(o` t)n)) = ((f` m)(o` u)(f` n))) <-> A.m e. dom (dom` T)A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))))
6139, 51, 603anbi123d 1168 . . . . . 6 |- (t = T -> ((A.o e. dom (id` t)E.p e. dom (id` u)(f` ((id` t)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` t)(f` ((id` t)` ((dom` t)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` t)(f` ((id` t)` ((cod` t)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` t)A.n e. dom (dom` t)(((cod` t)` n) = ((dom` t)` m) -> (f` (m(o` t)n)) = ((f` m)(o` u)(f` n)))) <-> (A.o e. dom (id` T)E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` T)A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n))))))
6232, 61anbi12d 690 . . . . 5 |- (t = T -> ((f:dom (dom` t)-->dom (dom` u) /\ (A.o e. dom (id` t)E.p e. dom (id` u)(f` ((id` t)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` t)(f` ((id` t)` ((dom` t)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` t)(f` ((id` t)` ((cod` t)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` t)A.n e. dom (dom` t)(((cod` t)` n) = ((dom` t)` m) -> (f` (m(o` t)n)) = ((f` m)(o` u)(f` n))))) <-> (f:M1-->dom (dom` u) /\ (A.o e. dom (id` T)E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` T)A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))))))
6362abbidv 2008 . . . 4 |- (t = T -> {f | (f:dom (dom` t)-->dom (dom` u) /\ (A.o e. dom (id` t)E.p e. dom (id` u)(f` ((id` t)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` t)(f` ((id` t)` ((dom` t)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` t)(f` ((id` t)` ((cod` t)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` t)A.n e. dom (dom` t)(((cod` t)` n) = ((dom` t)` m) -> (f` (m(o` t)n)) = ((f` m)(o` u)(f` n)))))} = {f | (f:M1-->dom (dom` u) /\ (A.o e. dom (id` T)E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` T)A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))))})
64 fveq2 4681 . . . . . . . . 9 |- (u = U -> (dom` u) = (dom` U))
6564dmeqd 4159 . . . . . . . 8 |- (u = U -> dom (dom` u) = dom (dom` U))
6665, 1syl6eqr 1946 . . . . . . 7 |- (u = U -> dom (dom` u) = M2)
67 feq3 4553 . . . . . . 7 |- (dom (dom` u) = M2 -> (f:M1-->dom (dom` u) <-> f:M1-->M2))
6866, 67syl 12 . . . . . 6 |- (u = U -> (f:M1-->dom (dom` u) <-> f:M1-->M2))
69 isfuna.1 . . . . . . . . . 10 |- O1 = dom (id` T)
7069a1i 8 . . . . . . . . 9 |- (u = U -> O1 = dom (id` T))
7170eqcomd 1889 . . . . . . . 8 |- (u = U -> dom (id` T) = O1)
72 fveq2 4681 . . . . . . . . . . 11 |- (u = U -> (id` u) = (id` U))
7372dmeqd 4159 . . . . . . . . . 10 |- (u = U -> dom (id` u) = dom (id` U))
74 isfuna.7 . . . . . . . . . 10 |- O2 = dom (id` U)
7573, 74syl6eqr 1946 . . . . . . . . 9 |- (u = U -> dom (id` u) = O2)
76 isfuna.5 . . . . . . . . . . . . . 14 |- I1 = (id` T)
7776a1i 8 . . . . . . . . . . . . 13 |- (u = U -> I1 = (id` T))
7877eqcomd 1889 . . . . . . . . . . . 12 |- (u = U -> (id` T) = I1)
7978fveq1d 4683 . . . . . . . . . . 11 |- (u = U -> ((id` T)` o) = (I1` o))
8079fveq2d 4685 . . . . . . . . . 10 |- (u = U -> (f` ((id` T)` o)) = (f` (I1` o)))
81 isfuna.11 . . . . . . . . . . . 12 |- I2 = (id` U)
8272, 81syl6eqr 1946 . . . . . . . . . . 11 |- (u = U -> (id` u) = I2)
8382fveq1d 4683 . . . . . . . . . 10 |- (u = U -> ((id` u)` p) = (I2` p))
8480, 83eqeq12d 1899 . . . . . . . . 9 |- (u = U -> ((f` ((id` T)` o)) = ((id` u)` p) <-> (f` (I1` o)) = (I2` p)))
8575, 84rexeqbidv 2275 . . . . . . . 8 |- (u = U -> (E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p) <-> E.p e. O2 (f` (I1` o)) = (I2` p)))
8671, 85raleqbidv 2274 . . . . . . 7 |- (u = U -> (A.o e. dom (id` T)E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p) <-> A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p)))
875a1i 8 . . . . . . . . . 10 |- (u = U -> M1 = dom (dom` T))
8887eqcomd 1889 . . . . . . . . 9 |- (u = U -> dom (dom` T) = M1)
89 isfuna.3 . . . . . . . . . . . . . . 15 |- D1 = (dom` T)
9089a1i 8 . . . . . . . . . . . . . 14 |- (u = U -> D1 = (dom` T))
9190fveq1d 4683 . . . . . . . . . . . . 13 |- (u = U -> (D1` m) = ((dom` T)` m))
9291eqcomd 1889 . . . . . . . . . . . 12 |- (u = U -> ((dom` T)` m) = (D1` m))
9378, 92fveq12d 10152 . . . . . . . . . . 11 |- (u = U -> ((id` T)` ((dom` T)` m)) = (I1` (D1` m)))
9493fveq2d 4685 . . . . . . . . . 10 |- (u = U -> (f` ((id` T)` ((dom` T)` m))) = (f` (I1` (D1` m))))
9572fveq1d 4683 . . . . . . . . . . 11 |- (u = U -> ((id` u)` ((dom` u)` (f` m))) = ((id` U)` ((dom` u)` (f` m))))
9664fveq1d 4683 . . . . . . . . . . . 12 |- (u = U -> ((dom` u)` (f` m)) = ((dom` U)` (f` m)))
9796fveq2d 4685 . . . . . . . . . . 11 |- (u = U -> ((id` U)` ((dom` u)` (f` m))) = ((id` U)` ((dom` U)` (f` m))))
9881a1i 8 . . . . . . . . . . . . 13 |- (u = U -> I2 = (id` U))
9998eqcomd 1889 . . . . . . . . . . . 12 |- (u = U -> (id` U) = I2)
100 isfuna.9 . . . . . . . . . . . . . . 15 |- D2 = (dom` U)
101100a1i 8 . . . . . . . . . . . . . 14 |- (u = U -> D2 = (dom` U))
102101eqcomd 1889 . . . . . . . . . . . . 13 |- (u = U -> (dom` U) = D2)
103102fveq1d 4683 . . . . . . . . . . . 12 |- (u = U -> ((dom` U)` (f` m)) = (D2` (f` m)))
10499, 103fveq12d 10152 . . . . . . . . . . 11 |- (u = U -> ((id` U)` ((dom` U)` (f` m))) = (I2` (D2` (f` m))))
10595, 97, 1043eqtrd 1929 . . . . . . . . . 10 |- (u = U -> ((id` u)` ((dom` u)` (f` m))) = (I2` (D2` (f` m))))
10694, 105eqeq12d 1899 . . . . . . . . 9 |- (u = U -> ((f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) <-> (f` (I1` (D1` m))) = (I2` (D2` (f` m)))))
10788, 106raleqbidv 2274 . . . . . . . 8 |- (u = U -> (A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) <-> A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m)))))
10887eleq2d 1964 . . . . . . . . . . 11 |- (u = U -> (m e. M1 <-> m e. dom (dom` T)))
109108bicomd 580 . . . . . . . . . 10 |- (u = U -> (m e. dom (dom` T) <-> m e. M1))
110 isfuna.4 . . . . . . . . . . . . . . . 16 |- C1 = (cod` T)
111110a1i 8 . . . . . . . . . . . . . . 15 |- (u = U -> C1 = (cod` T))
112111eqcomd 1889 . . . . . . . . . . . . . 14 |- (u = U -> (cod` T) = C1)
113112fveq1d 4683 . . . . . . . . . . . . 13 |- (u = U -> ((cod` T)` m) = (C1` m))
11478, 113fveq12d 10152 . . . . . . . . . . . 12 |- (u = U -> ((id` T)` ((cod` T)` m)) = (I1` (C1` m)))
115114fveq2d 4685 . . . . . . . . . . 11 |- (u = U -> (f` ((id` T)` ((cod` T)` m))) = (f` (I1` (C1` m))))
116 fveq2 4681 . . . . . . . . . . . . . 14 |- (u = U -> (cod` u) = (cod` U))
117 isfuna.10 . . . . . . . . . . . . . 14 |- C2 = (cod` U)
118116, 117syl6eqr 1946 . . . . . . . . . . . . 13 |- (u = U -> (cod` u) = C2)
119118fveq1d 4683 . . . . . . . . . . . 12 |- (u = U -> ((cod` u)` (f` m)) = (C2` (f` m)))
12082, 119fveq12d 10152 . . . . . . . . . . 11 |- (u = U -> ((id` u)` ((cod` u)` (f` m))) = (I2` (C2` (f` m))))
121115, 120eqeq12d 1899 . . . . . . . . . 10 |- (u = U -> ((f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m))) <-> (f` (I1` (C1` m))) = (I2` (C2` (f` m)))))
122109, 121imbi12d 688 . . . . . . . . 9 |- (u = U -> ((m e. dom (dom` T) -> (f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))) <-> (m e. M1 -> (f` (I1` (C1` m))) = (I2` (C2` (f` m))))))
123122ralbidv2 2125 . . . . . . . 8 |- (u = U -> (A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m))) <-> A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))))
124107, 123anbi12d 690 . . . . . . 7 |- (u = U -> ((A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))) <-> (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m))))))
1255eleq2i 1961 . . . . . . . . . . 11 |- (m e. M1 <-> m e. dom (dom` T))
126125a1i 8 . . . . . . . . . 10 |- (u = U -> (m e. M1 <-> m e. dom (dom` T)))
127126bicomd 580 . . . . . . . . 9 |- (u = U -> (m e. dom (dom` T) <-> m e. M1))
12887eleq2d 1964 . . . . . . . . . . . 12 |- (u = U -> (n e. M1 <-> n e. dom (dom` T)))
129128bicomd 580 . . . . . . . . . . 11 |- (u = U -> (n e. dom (dom` T) <-> n e. M1))
130111fveq1d 4683 . . . . . . . . . . . . . 14 |- (u = U -> (C1` n) = ((cod` T)` n))
131130eqcomd 1889 . . . . . . . . . . . . 13 |- (u = U -> ((cod` T)` n) = (C1` n))
132131, 92eqeq12d 1899 . . . . . . . . . . . 12 |- (u = U -> (((cod` T)` n) = ((dom` T)` m) <-> (C1` n) = (D1` m)))
133 isfuna.6 . . . . . . . . . . . . . . . . 17 |- Ro1 = (o` T)
134133a1i 8 . . . . . . . . . . . . . . . 16 |- (u = U -> Ro1 = (o` T))
135134eqcomd 1889 . . . . . . . . . . . . . . 15 |- (u = U -> (o` T) = Ro1)
136135opreqd 4899 . . . . . . . . . . . . . 14 |- (u = U -> (m(o` T)n) = (mRo1n))
137136fveq2d 4685 . . . . . . . . . . . . 13 |- (u = U -> (f` (m(o` T)n)) = (f` (mRo1n)))
138 fveq2 4681 . . . . . . . . . . . . . . 15 |- (u = U -> (o` u) = (o` U))
139 isfuna.12 . . . . . . . . . . . . . . 15 |- Ro2 = (o` U)
140138, 139syl6eqr 1946 . . . . . . . . . . . . . 14 |- (u = U -> (o` u) = Ro2)
141140opreqd 4899 . . . . . . . . . . . . 13 |- (u = U -> ((f` m)(o` u)(f` n)) = ((f` m)Ro2(f` n)))
142137, 141eqeq12d 1899 . . . . . . . . . . . 12 |- (u = U -> ((f` (m(o` T)n)) = ((f` m)(o` u)(f` n)) <-> (f` (mRo1n)) = ((f` m)Ro2(f` n))))
143132, 142imbi12d 688 . . . . . . . . . . 11 |- (u = U -> ((((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n))) <-> ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))
144129, 143imbi12d 688 . . . . . . . . . 10 |- (u = U -> ((n e. dom (dom` T) -> (((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))) <-> (n e. M1 -> ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n))))))
145144ralbidv2 2125 . . . . . . . . 9 |- (u = U -> (A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n))) <-> A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))
146127, 145imbi12d 688 . . . . . . . 8 |- (u = U -> ((m e. dom (dom` T) -> A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))) <-> (m e. M1 -> A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n))))))
147146ralbidv2 2125 . . . . . . 7 |- (u = U -> (A.m e. dom (dom` T)A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n))) <-> A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))
14886, 124, 1473anbi123d 1168 . . . . . 6 |- (u = U -> ((A.o e. dom (id` T)E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` T)A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))) <-> (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n))))))
14968, 148anbi12d 690 . . . . 5 |- (u = U -> ((f:M1-->dom (dom` u) /\ (A.o e. dom (id` T)E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` T)A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n))))) <-> (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))))
150149abbidv 2008 . . . 4 |- (u = U -> {f | (f:M1-->dom (dom` u) /\ (A.o e. dom (id` T)E.p e. dom (id` u)(f` ((id` T)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` T)(f` ((id` T)` ((dom` T)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` T)(f` ((id` T)` ((cod` T)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` T)A.n e. dom (dom` T)(((cod` T)` n) = ((dom` T)` m) -> (f` (m(o` T)n)) = ((f` m)(o` u)(f` n)))))} = {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))})
151 df-func 15181 . . . 4 |- Func = {<.<.t, u>., v>. | ((t e. Cat /\ u e. Cat ) /\ v = {f | (f:dom (dom` t)-->dom (dom` u) /\ (A.o e. dom (id` t)E.p e. dom (id` u)(f` ((id` t)` o)) = ((id` u)` p) /\ (A.m e. dom (dom` t)(f` ((id` t)` ((dom` t)` m))) = ((id` u)` ((dom` u)` (f` m))) /\ A.m e. dom (dom` t)(f` ((id` t)` ((cod` t)` m))) = ((id` u)` ((cod` u)` (f` m)))) /\ A.m e. dom (dom` t)A.n e. dom (dom` t)(((cod` t)` n) = ((dom` t)` m) -> (f` (m(o` t)n)) = ((f` m)(o` u)(f` n)))))})}
15263, 150, 151oprabval2g 4956 . . 3 |- ((T e. Cat /\ U e. Cat /\ {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))} e. _V) -> (T Func U) = {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))})
153 df-opr 4886 . . 3 |- (T Func U) = ( Func ` <.T, U>.)
154152, 153syl5eqr 1942 . 2 |- ((T e. Cat /\ U e. Cat /\ {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))} e. _V) -> ( Func ` <.T, U>.) = {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))})
15528, 154mpd3an3 1192 1 |- ((T e. Cat /\ U e. Cat ) -> ( Func ` <.T, U>.) = {f | (f:M1-->M2 /\ (A.o e. O1 E.p e. O2 (f` (I1` o)) = (I2` p) /\ (A.m e. M1 (f` (I1` (D1` m))) = (I2` (D2` (f` m))) /\ A.m e. M1 (f` (I1` (C1` m))) = (I2` (C2` (f` m)))) /\ A.m e. M1 A.n e. M1 ((C1` n) = (D1` m) -> (f` (mRo1n)) = ((f` m)Ro2(f` n)))))})
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 163   /\ wa 240   /\ w3a 858   = wceq 1298   e. wcel 1300  {cab 1871  A.wral 2105  E.wrex 2106  {crab 2108  _Vcvv 2292  <.cop 3046  dom cdm 3986  -->wf 3994  ` cfv 3998  (class class class)co 4884   ^m cmap 5381  domcdom_ 15059  codccod_ 15060  idcid_ 15061  oco_ 15062   Cat ccat 15099   Func cfunc 15179
This theorem is referenced by:  isfunb 15183
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 1304  ax-gen 1305  ax-8 1306  ax-9 1307  ax-10 1308  ax-11 1309  ax-12 1310  ax-13 1311  ax-14 1312  ax-17 1317  ax-4 1319  ax-5o 1321  ax-6o 1324  ax-9o 1481  ax-10o 1500  ax-16 1580  ax-11o 1588  ax-ext 1865  ax-rep 3428  ax-sep 3438  ax-nul 3445  ax-pow 3481  ax-pr 3524  ax-un 3790
This theorem depends on definitions:  df-bi 164  df-or 241  df-an 242  df-3an 860  df-ex 1327  df-sb 1536  df-eu 1775  df-mo 1776  df-clab 1872  df-cleq 1877  df-clel 1880  df-ne 2019  df-ral 2109  df-rex 2110  df-rab 2112  df-v 2294  df-sbc 2454  df-csb 2541  df-dif 2597  df-un 2600  df-in 2603  df-ss 2605  df-nul 2876  df-pw 3035  df-sn 3049  df-pr 3050  df-op 3053  df-uni 3178  df-br 3339  df-opab 3396  df-id 3586  df-xp 4000  df-rel 4001  df-cnv 4002  df-co 4003  df-dm 4004  df-rn 4005  df-res 4006  df-ima 4007  df-fun 4008  df-fn 4009  df-f 4010  df-fv 4014  df-opr 4886  df-oprab 4887  df-map 5383  df-func 15181
Copyright terms: Public domain