Step | Hyp | Ref
| Expression |
1 | | fullfunc 16389 |
. . 3
⊢ (𝐶 Full 𝐷) ⊆ (𝐶 Func 𝐷) |
2 | 1 | ssbri 4627 |
. 2
⊢ (𝐹(𝐶 Full 𝐷)𝐺 → 𝐹(𝐶 Func 𝐷)𝐺) |
3 | | df-br 4584 |
. . . . . . 7
⊢ (𝐹(𝐶 Func 𝐷)𝐺 ↔ 〈𝐹, 𝐺〉 ∈ (𝐶 Func 𝐷)) |
4 | | funcrcl 16346 |
. . . . . . 7
⊢
(〈𝐹, 𝐺〉 ∈ (𝐶 Func 𝐷) → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat)) |
5 | 3, 4 | sylbi 206 |
. . . . . 6
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat)) |
6 | | oveq12 6558 |
. . . . . . . . . 10
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (𝑐 Func 𝑑) = (𝐶 Func 𝐷)) |
7 | 6 | breqd 4594 |
. . . . . . . . 9
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (𝑓(𝑐 Func 𝑑)𝑔 ↔ 𝑓(𝐶 Func 𝐷)𝑔)) |
8 | | simpl 472 |
. . . . . . . . . . . 12
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → 𝑐 = 𝐶) |
9 | 8 | fveq2d 6107 |
. . . . . . . . . . 11
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (Base‘𝑐) = (Base‘𝐶)) |
10 | | isfull.b |
. . . . . . . . . . 11
⊢ 𝐵 = (Base‘𝐶) |
11 | 9, 10 | syl6eqr 2662 |
. . . . . . . . . 10
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (Base‘𝑐) = 𝐵) |
12 | | simpr 476 |
. . . . . . . . . . . . . . 15
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → 𝑑 = 𝐷) |
13 | 12 | fveq2d 6107 |
. . . . . . . . . . . . . 14
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (Hom ‘𝑑) = (Hom ‘𝐷)) |
14 | | isfull.j |
. . . . . . . . . . . . . 14
⊢ 𝐽 = (Hom ‘𝐷) |
15 | 13, 14 | syl6eqr 2662 |
. . . . . . . . . . . . 13
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (Hom ‘𝑑) = 𝐽) |
16 | 15 | oveqd 6566 |
. . . . . . . . . . . 12
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦))) |
17 | 16 | eqeq2d 2620 |
. . . . . . . . . . 11
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)) ↔ ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))) |
18 | 11, 17 | raleqbidv 3129 |
. . . . . . . . . 10
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)) ↔ ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))) |
19 | 11, 18 | raleqbidv 3129 |
. . . . . . . . 9
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → (∀𝑥 ∈ (Base‘𝑐)∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)) ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))) |
20 | 7, 19 | anbi12d 743 |
. . . . . . . 8
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → ((𝑓(𝑐 Func 𝑑)𝑔 ∧ ∀𝑥 ∈ (Base‘𝑐)∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦))) ↔ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦))))) |
21 | 20 | opabbidv 4648 |
. . . . . . 7
⊢ ((𝑐 = 𝐶 ∧ 𝑑 = 𝐷) → {〈𝑓, 𝑔〉 ∣ (𝑓(𝑐 Func 𝑑)𝑔 ∧ ∀𝑥 ∈ (Base‘𝑐)∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)))} = {〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}) |
22 | | df-full 16387 |
. . . . . . 7
⊢ Full =
(𝑐 ∈ Cat, 𝑑 ∈ Cat ↦ {〈𝑓, 𝑔〉 ∣ (𝑓(𝑐 Func 𝑑)𝑔 ∧ ∀𝑥 ∈ (Base‘𝑐)∀𝑦 ∈ (Base‘𝑐)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝑑)(𝑓‘𝑦)))}) |
23 | | ovex 6577 |
. . . . . . . 8
⊢ (𝐶 Func 𝐷) ∈ V |
24 | | simpl 472 |
. . . . . . . . . 10
⊢ ((𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦))) → 𝑓(𝐶 Func 𝐷)𝑔) |
25 | 24 | ssopab2i 4928 |
. . . . . . . . 9
⊢
{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} ⊆ {〈𝑓, 𝑔〉 ∣ 𝑓(𝐶 Func 𝐷)𝑔} |
26 | | opabss 4646 |
. . . . . . . . 9
⊢
{〈𝑓, 𝑔〉 ∣ 𝑓(𝐶 Func 𝐷)𝑔} ⊆ (𝐶 Func 𝐷) |
27 | 25, 26 | sstri 3577 |
. . . . . . . 8
⊢
{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} ⊆ (𝐶 Func 𝐷) |
28 | 23, 27 | ssexi 4731 |
. . . . . . 7
⊢
{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} ∈ V |
29 | 21, 22, 28 | ovmpt2a 6689 |
. . . . . 6
⊢ ((𝐶 ∈ Cat ∧ 𝐷 ∈ Cat) → (𝐶 Full 𝐷) = {〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}) |
30 | 5, 29 | syl 17 |
. . . . 5
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐶 Full 𝐷) = {〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}) |
31 | 30 | breqd 4594 |
. . . 4
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹(𝐶 Full 𝐷)𝐺 ↔ 𝐹{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}𝐺)) |
32 | | relfunc 16345 |
. . . . . 6
⊢ Rel
(𝐶 Func 𝐷) |
33 | | brrelex12 5079 |
. . . . . 6
⊢ ((Rel
(𝐶 Func 𝐷) ∧ 𝐹(𝐶 Func 𝐷)𝐺) → (𝐹 ∈ V ∧ 𝐺 ∈ V)) |
34 | 32, 33 | mpan 702 |
. . . . 5
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹 ∈ V ∧ 𝐺 ∈ V)) |
35 | | breq12 4588 |
. . . . . . 7
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (𝑓(𝐶 Func 𝐷)𝑔 ↔ 𝐹(𝐶 Func 𝐷)𝐺)) |
36 | | simpr 476 |
. . . . . . . . . . 11
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → 𝑔 = 𝐺) |
37 | 36 | oveqd 6566 |
. . . . . . . . . 10
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (𝑥𝑔𝑦) = (𝑥𝐺𝑦)) |
38 | 37 | rneqd 5274 |
. . . . . . . . 9
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → ran (𝑥𝑔𝑦) = ran (𝑥𝐺𝑦)) |
39 | | simpl 472 |
. . . . . . . . . . 11
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → 𝑓 = 𝐹) |
40 | 39 | fveq1d 6105 |
. . . . . . . . . 10
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (𝑓‘𝑥) = (𝐹‘𝑥)) |
41 | 39 | fveq1d 6105 |
. . . . . . . . . 10
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (𝑓‘𝑦) = (𝐹‘𝑦)) |
42 | 40, 41 | oveq12d 6567 |
. . . . . . . . 9
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → ((𝑓‘𝑥)𝐽(𝑓‘𝑦)) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))) |
43 | 38, 42 | eqeq12d 2625 |
. . . . . . . 8
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)) ↔ ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦)))) |
44 | 43 | 2ralbidv 2972 |
. . . . . . 7
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → (∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)) ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦)))) |
45 | 35, 44 | anbi12d 743 |
. . . . . 6
⊢ ((𝑓 = 𝐹 ∧ 𝑔 = 𝐺) → ((𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦))) ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))))) |
46 | | eqid 2610 |
. . . . . 6
⊢
{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} = {〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))} |
47 | 45, 46 | brabga 4914 |
. . . . 5
⊢ ((𝐹 ∈ V ∧ 𝐺 ∈ V) → (𝐹{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}𝐺 ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))))) |
48 | 34, 47 | syl 17 |
. . . 4
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹{〈𝑓, 𝑔〉 ∣ (𝑓(𝐶 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)𝐽(𝑓‘𝑦)))}𝐺 ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))))) |
49 | 31, 48 | bitrd 267 |
. . 3
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹(𝐶 Full 𝐷)𝐺 ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦))))) |
50 | 49 | bianabs 920 |
. 2
⊢ (𝐹(𝐶 Func 𝐷)𝐺 → (𝐹(𝐶 Full 𝐷)𝐺 ↔ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦)))) |
51 | 2, 50 | biadan2 672 |
1
⊢ (𝐹(𝐶 Full 𝐷)𝐺 ↔ (𝐹(𝐶 Func 𝐷)𝐺 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ran (𝑥𝐺𝑦) = ((𝐹‘𝑥)𝐽(𝐹‘𝑦)))) |