Step | Hyp | Ref
| Expression |
1 | | fullfunc 17622 |
. . 3
⊢ (𝐶 Full 𝐷) ⊆ (𝐶 Func 𝐷) |
2 | 1 | ssbri 5119 |
. 2
⊢ (𝐹(𝐶 Full 𝐷)𝐺 → 𝐹(𝐶 Func 𝐷)𝐺) |
3 | | df-br 5075 |
. . . . . . 7
⊢ (𝐹(𝐶 Func 𝐷)𝐺 ↔ 〈𝐹, 𝐺〉 ∈ (𝐶 Func 𝐷)) |
4 | | funcrcl 17578 |
. . . . . . 7
⊢
(〈𝐹, 𝐺〉 ∈ (𝐶 Func 𝐷) → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat)) |
5 | 3, 4 | sylbi 216 |
. . . . . 6
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat)) |
6 | | oveq12 7284 |
. . . . . . . . . 10
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (𝑐 Func 𝑑) = (𝐶 Func 𝐷)) |
7 | 6 | breqd 5085 |
. . . . . . . . 9
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (𝑓(𝑐 Func 𝑑)𝑔 ↔ 𝑓(𝐶 Func 𝐷)𝑔)) |
8 | | simpl 483 |
. . . . . . . . . . . 12
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → 𝑐 = 𝐶) |
9 | 8 | fveq2d 6778 |
. . . . . . . . . . 11
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (Base‘𝑐) = (Base‘𝐶)) |
10 | | isfull.b |
. . . . . . . . . . 11
⊢ 𝐵 = (Base‘𝐶) |
11 | 9, 10 | eqtr4di 2796 |
. . . . . . . . . 10
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (Base‘𝑐) = 𝐵) |
12 | | simpr 485 |
. . . . . . . . . . . . . . 15
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → 𝑑 = 𝐷) |
13 | 12 | fveq2d 6778 |
. . . . . . . . . . . . . 14
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (Hom ‘𝑑) = (Hom ‘𝐷)) |
14 | | isfull.j |
. . . . . . . . . . . . . 14
⊢ 𝐽 = (Hom ‘𝐷) |
15 | 13, 14 | eqtr4di 2796 |
. . . . . . . . . . . . 13
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (Hom ‘𝑑) = 𝐽) |
16 | 15 | oveqd 7292 |
. . . . . . . . . . . 12
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦))) |
17 | 16 | eqeq2d 2749 |
. . . . . . . . . . 11
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)) ↔ ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))) |
18 | 11, 17 | raleqbidv 3336 |
. . . . . . . . . 10
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)) ↔ ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))) |
19 | 11, 18 | raleqbidv 3336 |
. . . . . . . . 9
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (∀𝑥 ∈ (Base‘𝑐)∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)) ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))) |
20 | 7, 19 | anbi12d 631 |
. . . . . . . 8
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → ((𝑓(𝑐 Func 𝑑)𝑔 ∧ ∀𝑥 ∈ (Base‘𝑐)∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦))) ↔ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦))))) |
21 | 20 | opabbidv 5140 |
. . . . . . 7
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → {〈𝑓, 𝑔〉 ∣ (𝑓(𝑐 Func 𝑑)𝑔 ∧ ∀𝑥 ∈ (Base‘𝑐)∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)))} = {〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}) |
22 | | df-full 17620 |
. . . . . . 7
⊢ Full =
(𝑐 ∈ Cat, 𝑑 ∈ Cat ↦ {〈𝑓, 𝑔〉 ∣ (𝑓(𝑐 Func 𝑑)𝑔 ∧ ∀𝑥 ∈ (Base‘𝑐)∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)))}) |
23 | | ovex 7308 |
. . . . . . . 8
⊢ (𝐶 Func 𝐷) ∈ V |
24 | | simpl 483 |
. . . . . . . . . 10
⊢ ((𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦))) → 𝑓(𝐶 Func 𝐷)𝑔) |
25 | 24 | ssopab2i 5463 |
. . . . . . . . 9
⊢
{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} ⊆ {〈𝑓, 𝑔〉 ∣ 𝑓(𝐶 Func 𝐷)𝑔} |
26 | | opabss 5138 |
. . . . . . . . 9
⊢
{〈𝑓, 𝑔〉 ∣ 𝑓(𝐶 Func 𝐷)𝑔} ⊆ (𝐶 Func 𝐷) |
27 | 25, 26 | sstri 3930 |
. . . . . . . 8
⊢
{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} ⊆ (𝐶 Func 𝐷) |
28 | 23, 27 | ssexi 5246 |
. . . . . . 7
⊢
{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} ∈ V |
29 | 21, 22, 28 | ovmpoa 7428 |
. . . . . 6
⊢ ((𝐶 ∈ Cat ∧ 𝐷 ∈ Cat) → (𝐶 Full 𝐷) = {〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}) |
30 | 5, 29 | syl 17 |
. . . . 5
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐶 Full 𝐷) = {〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}) |
31 | 30 | breqd 5085 |
. . . 4
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹(𝐶 Full 𝐷)𝐺 ↔ 𝐹{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}𝐺)) |
32 | | relfunc 17577 |
. . . . . 6
⊢ Rel
(𝐶 Func 𝐷) |
33 | 32 | brrelex12i 5642 |
. . . . 5
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹 ∈ V ∧ 𝐺 ∈ V)) |
34 | | breq12 5079 |
. . . . . . 7
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (𝑓(𝐶 Func 𝐷)𝑔 ↔ 𝐹(𝐶 Func 𝐷)𝐺)) |
35 | | simpr 485 |
. . . . . . . . . . 11
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → 𝑔 = 𝐺) |
36 | 35 | oveqd 7292 |
. . . . . . . . . 10
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (𝑥𝑔𝑦) = (𝑥𝐺𝑦)) |
37 | 36 | rneqd 5847 |
. . . . . . . . 9
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → ran (𝑥𝑔𝑦) = ran (𝑥𝐺𝑦)) |
38 | | simpl 483 |
. . . . . . . . . . 11
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → 𝑓 = 𝐹) |
39 | 38 | fveq1d 6776 |
. . . . . . . . . 10
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (𝑓‘𝑥) = (𝐹‘𝑥)) |
40 | 38 | fveq1d 6776 |
. . . . . . . . . 10
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (𝑓‘𝑦) = (𝐹‘𝑦)) |
41 | 39, 40 | oveq12d 7293 |
. . . . . . . . 9
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → ((𝑓‘𝑥)𝐽(𝑓‘𝑦)) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))) |
42 | 37, 41 | eqeq12d 2754 |
. . . . . . . 8
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)) ↔ ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦)))) |
43 | 42 | 2ralbidv 3129 |
. . . . . . 7
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)) ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦)))) |
44 | 34, 43 | anbi12d 631 |
. . . . . 6
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → ((𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦))) ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))))) |
45 | | eqid 2738 |
. . . . . 6
⊢
{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} = {〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} |
46 | 44, 45 | brabga 5447 |
. . . . 5
⊢ ((𝐹 ∈ V ∧ 𝐺 ∈ V) → (𝐹{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}𝐺 ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))))) |
47 | 33, 46 | syl 17 |
. . . 4
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}𝐺 ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))))) |
48 | 31, 47 | bitrd 278 |
. . 3
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹(𝐶 Full 𝐷)𝐺 ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))))) |
49 | 48 | bianabs 542 |
. 2
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹(𝐶 Full 𝐷)𝐺 ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦)))) |
50 | 2, 49 | biadanii 819 |
1
⊢ (𝐹(𝐶 Full 𝐷)𝐺 ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦)))) |