Step |
Hyp |
Ref |
Expression |
1 |
|
dfrecs3 |
|- recs ( F ) = U. { f | E. x e. On ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) } |
2 |
|
elin |
|- ( f e. ( Funs i^i ( `' Domain " On ) ) <-> ( f e. Funs /\ f e. ( `' Domain " On ) ) ) |
3 |
|
vex |
|- f e. _V |
4 |
3
|
elfuns |
|- ( f e. Funs <-> Fun f ) |
5 |
|
vex |
|- x e. _V |
6 |
5 3
|
brcnv |
|- ( x `' Domain f <-> f Domain x ) |
7 |
3 5
|
brdomain |
|- ( f Domain x <-> x = dom f ) |
8 |
6 7
|
bitri |
|- ( x `' Domain f <-> x = dom f ) |
9 |
8
|
rexbii |
|- ( E. x e. On x `' Domain f <-> E. x e. On x = dom f ) |
10 |
3
|
elima |
|- ( f e. ( `' Domain " On ) <-> E. x e. On x `' Domain f ) |
11 |
|
risset |
|- ( dom f e. On <-> E. x e. On x = dom f ) |
12 |
9 10 11
|
3bitr4i |
|- ( f e. ( `' Domain " On ) <-> dom f e. On ) |
13 |
4 12
|
anbi12i |
|- ( ( f e. Funs /\ f e. ( `' Domain " On ) ) <-> ( Fun f /\ dom f e. On ) ) |
14 |
2 13
|
bitri |
|- ( f e. ( Funs i^i ( `' Domain " On ) ) <-> ( Fun f /\ dom f e. On ) ) |
15 |
3
|
eldm |
|- ( f e. dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) <-> E. y f ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) y ) |
16 |
|
brdif |
|- ( f ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) y <-> ( f ( `' _E o. Domain ) y /\ -. f Fix ( `' Apply o. ( FullFun F o. Restrict ) ) y ) ) |
17 |
|
vex |
|- y e. _V |
18 |
3 17
|
brco |
|- ( f ( `' _E o. Domain ) y <-> E. x ( f Domain x /\ x `' _E y ) ) |
19 |
7
|
anbi1i |
|- ( ( f Domain x /\ x `' _E y ) <-> ( x = dom f /\ x `' _E y ) ) |
20 |
19
|
exbii |
|- ( E. x ( f Domain x /\ x `' _E y ) <-> E. x ( x = dom f /\ x `' _E y ) ) |
21 |
3
|
dmex |
|- dom f e. _V |
22 |
|
breq1 |
|- ( x = dom f -> ( x `' _E y <-> dom f `' _E y ) ) |
23 |
21 22
|
ceqsexv |
|- ( E. x ( x = dom f /\ x `' _E y ) <-> dom f `' _E y ) |
24 |
20 23
|
bitri |
|- ( E. x ( f Domain x /\ x `' _E y ) <-> dom f `' _E y ) |
25 |
21 17
|
brcnv |
|- ( dom f `' _E y <-> y _E dom f ) |
26 |
21
|
epeli |
|- ( y _E dom f <-> y e. dom f ) |
27 |
25 26
|
bitri |
|- ( dom f `' _E y <-> y e. dom f ) |
28 |
18 24 27
|
3bitri |
|- ( f ( `' _E o. Domain ) y <-> y e. dom f ) |
29 |
|
df-br |
|- ( f Fix ( `' Apply o. ( FullFun F o. Restrict ) ) y <-> <. f , y >. e. Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) |
30 |
|
opex |
|- <. f , y >. e. _V |
31 |
30
|
elfix |
|- ( <. f , y >. e. Fix ( `' Apply o. ( FullFun F o. Restrict ) ) <-> <. f , y >. ( `' Apply o. ( FullFun F o. Restrict ) ) <. f , y >. ) |
32 |
30 30
|
brco |
|- ( <. f , y >. ( `' Apply o. ( FullFun F o. Restrict ) ) <. f , y >. <-> E. x ( <. f , y >. ( FullFun F o. Restrict ) x /\ x `' Apply <. f , y >. ) ) |
33 |
|
ancom |
|- ( ( <. f , y >. ( FullFun F o. Restrict ) x /\ x `' Apply <. f , y >. ) <-> ( x `' Apply <. f , y >. /\ <. f , y >. ( FullFun F o. Restrict ) x ) ) |
34 |
5 30
|
brcnv |
|- ( x `' Apply <. f , y >. <-> <. f , y >. Apply x ) |
35 |
3 17 5
|
brapply |
|- ( <. f , y >. Apply x <-> x = ( f ` y ) ) |
36 |
34 35
|
bitri |
|- ( x `' Apply <. f , y >. <-> x = ( f ` y ) ) |
37 |
36
|
anbi1i |
|- ( ( x `' Apply <. f , y >. /\ <. f , y >. ( FullFun F o. Restrict ) x ) <-> ( x = ( f ` y ) /\ <. f , y >. ( FullFun F o. Restrict ) x ) ) |
38 |
33 37
|
bitri |
|- ( ( <. f , y >. ( FullFun F o. Restrict ) x /\ x `' Apply <. f , y >. ) <-> ( x = ( f ` y ) /\ <. f , y >. ( FullFun F o. Restrict ) x ) ) |
39 |
38
|
exbii |
|- ( E. x ( <. f , y >. ( FullFun F o. Restrict ) x /\ x `' Apply <. f , y >. ) <-> E. x ( x = ( f ` y ) /\ <. f , y >. ( FullFun F o. Restrict ) x ) ) |
40 |
|
fvex |
|- ( f ` y ) e. _V |
41 |
|
breq2 |
|- ( x = ( f ` y ) -> ( <. f , y >. ( FullFun F o. Restrict ) x <-> <. f , y >. ( FullFun F o. Restrict ) ( f ` y ) ) ) |
42 |
40 41
|
ceqsexv |
|- ( E. x ( x = ( f ` y ) /\ <. f , y >. ( FullFun F o. Restrict ) x ) <-> <. f , y >. ( FullFun F o. Restrict ) ( f ` y ) ) |
43 |
39 42
|
bitri |
|- ( E. x ( <. f , y >. ( FullFun F o. Restrict ) x /\ x `' Apply <. f , y >. ) <-> <. f , y >. ( FullFun F o. Restrict ) ( f ` y ) ) |
44 |
30 40
|
brco |
|- ( <. f , y >. ( FullFun F o. Restrict ) ( f ` y ) <-> E. x ( <. f , y >. Restrict x /\ x FullFun F ( f ` y ) ) ) |
45 |
3 17 5
|
brrestrict |
|- ( <. f , y >. Restrict x <-> x = ( f |` y ) ) |
46 |
45
|
anbi1i |
|- ( ( <. f , y >. Restrict x /\ x FullFun F ( f ` y ) ) <-> ( x = ( f |` y ) /\ x FullFun F ( f ` y ) ) ) |
47 |
46
|
exbii |
|- ( E. x ( <. f , y >. Restrict x /\ x FullFun F ( f ` y ) ) <-> E. x ( x = ( f |` y ) /\ x FullFun F ( f ` y ) ) ) |
48 |
3
|
resex |
|- ( f |` y ) e. _V |
49 |
|
breq1 |
|- ( x = ( f |` y ) -> ( x FullFun F ( f ` y ) <-> ( f |` y ) FullFun F ( f ` y ) ) ) |
50 |
48 49
|
ceqsexv |
|- ( E. x ( x = ( f |` y ) /\ x FullFun F ( f ` y ) ) <-> ( f |` y ) FullFun F ( f ` y ) ) |
51 |
47 50
|
bitri |
|- ( E. x ( <. f , y >. Restrict x /\ x FullFun F ( f ` y ) ) <-> ( f |` y ) FullFun F ( f ` y ) ) |
52 |
48 40
|
brfullfun |
|- ( ( f |` y ) FullFun F ( f ` y ) <-> ( f ` y ) = ( F ` ( f |` y ) ) ) |
53 |
44 51 52
|
3bitri |
|- ( <. f , y >. ( FullFun F o. Restrict ) ( f ` y ) <-> ( f ` y ) = ( F ` ( f |` y ) ) ) |
54 |
32 43 53
|
3bitri |
|- ( <. f , y >. ( `' Apply o. ( FullFun F o. Restrict ) ) <. f , y >. <-> ( f ` y ) = ( F ` ( f |` y ) ) ) |
55 |
29 31 54
|
3bitri |
|- ( f Fix ( `' Apply o. ( FullFun F o. Restrict ) ) y <-> ( f ` y ) = ( F ` ( f |` y ) ) ) |
56 |
55
|
notbii |
|- ( -. f Fix ( `' Apply o. ( FullFun F o. Restrict ) ) y <-> -. ( f ` y ) = ( F ` ( f |` y ) ) ) |
57 |
28 56
|
anbi12i |
|- ( ( f ( `' _E o. Domain ) y /\ -. f Fix ( `' Apply o. ( FullFun F o. Restrict ) ) y ) <-> ( y e. dom f /\ -. ( f ` y ) = ( F ` ( f |` y ) ) ) ) |
58 |
16 57
|
bitri |
|- ( f ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) y <-> ( y e. dom f /\ -. ( f ` y ) = ( F ` ( f |` y ) ) ) ) |
59 |
58
|
exbii |
|- ( E. y f ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) y <-> E. y ( y e. dom f /\ -. ( f ` y ) = ( F ` ( f |` y ) ) ) ) |
60 |
15 59
|
bitri |
|- ( f e. dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) <-> E. y ( y e. dom f /\ -. ( f ` y ) = ( F ` ( f |` y ) ) ) ) |
61 |
|
df-rex |
|- ( E. y e. dom f -. ( f ` y ) = ( F ` ( f |` y ) ) <-> E. y ( y e. dom f /\ -. ( f ` y ) = ( F ` ( f |` y ) ) ) ) |
62 |
|
rexnal |
|- ( E. y e. dom f -. ( f ` y ) = ( F ` ( f |` y ) ) <-> -. A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) |
63 |
60 61 62
|
3bitr2ri |
|- ( -. A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) <-> f e. dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) |
64 |
63
|
con1bii |
|- ( -. f e. dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) <-> A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) |
65 |
14 64
|
anbi12i |
|- ( ( f e. ( Funs i^i ( `' Domain " On ) ) /\ -. f e. dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) <-> ( ( Fun f /\ dom f e. On ) /\ A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) ) |
66 |
|
anass |
|- ( ( ( Fun f /\ dom f e. On ) /\ A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) <-> ( Fun f /\ ( dom f e. On /\ A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
67 |
65 66
|
bitri |
|- ( ( f e. ( Funs i^i ( `' Domain " On ) ) /\ -. f e. dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) <-> ( Fun f /\ ( dom f e. On /\ A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
68 |
|
eleq1 |
|- ( x = dom f -> ( x e. On <-> dom f e. On ) ) |
69 |
|
raleq |
|- ( x = dom f -> ( A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) <-> A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) ) |
70 |
68 69
|
anbi12d |
|- ( x = dom f -> ( ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) <-> ( dom f e. On /\ A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
71 |
70
|
anbi2d |
|- ( x = dom f -> ( ( Fun f /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) <-> ( Fun f /\ ( dom f e. On /\ A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) ) |
72 |
21 71
|
ceqsexv |
|- ( E. x ( x = dom f /\ ( Fun f /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) <-> ( Fun f /\ ( dom f e. On /\ A. y e. dom f ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
73 |
|
df-fn |
|- ( f Fn x <-> ( Fun f /\ dom f = x ) ) |
74 |
|
eqcom |
|- ( dom f = x <-> x = dom f ) |
75 |
74
|
anbi2i |
|- ( ( Fun f /\ dom f = x ) <-> ( Fun f /\ x = dom f ) ) |
76 |
|
ancom |
|- ( ( Fun f /\ x = dom f ) <-> ( x = dom f /\ Fun f ) ) |
77 |
73 75 76
|
3bitri |
|- ( f Fn x <-> ( x = dom f /\ Fun f ) ) |
78 |
77
|
anbi1i |
|- ( ( f Fn x /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) <-> ( ( x = dom f /\ Fun f ) /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
79 |
|
an12 |
|- ( ( f Fn x /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) <-> ( x e. On /\ ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
80 |
|
anass |
|- ( ( ( x = dom f /\ Fun f ) /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) <-> ( x = dom f /\ ( Fun f /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) ) |
81 |
78 79 80
|
3bitr3ri |
|- ( ( x = dom f /\ ( Fun f /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) <-> ( x e. On /\ ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
82 |
81
|
exbii |
|- ( E. x ( x = dom f /\ ( Fun f /\ ( x e. On /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) <-> E. x ( x e. On /\ ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
83 |
67 72 82
|
3bitr2i |
|- ( ( f e. ( Funs i^i ( `' Domain " On ) ) /\ -. f e. dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) <-> E. x ( x e. On /\ ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
84 |
|
eldif |
|- ( f e. ( ( Funs i^i ( `' Domain " On ) ) \ dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) <-> ( f e. ( Funs i^i ( `' Domain " On ) ) /\ -. f e. dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) ) |
85 |
|
df-rex |
|- ( E. x e. On ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) <-> E. x ( x e. On /\ ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) ) |
86 |
83 84 85
|
3bitr4i |
|- ( f e. ( ( Funs i^i ( `' Domain " On ) ) \ dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) <-> E. x e. On ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) ) |
87 |
86
|
abbi2i |
|- ( ( Funs i^i ( `' Domain " On ) ) \ dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) = { f | E. x e. On ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) } |
88 |
87
|
unieqi |
|- U. ( ( Funs i^i ( `' Domain " On ) ) \ dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) = U. { f | E. x e. On ( f Fn x /\ A. y e. x ( f ` y ) = ( F ` ( f |` y ) ) ) } |
89 |
1 88
|
eqtr4i |
|- recs ( F ) = U. ( ( Funs i^i ( `' Domain " On ) ) \ dom ( ( `' _E o. Domain ) \ Fix ( `' Apply o. ( FullFun F o. Restrict ) ) ) ) |