Proof of Theorem yoniso
| Step | Hyp | Ref
| Expression |
| 1 | | relfunc 16522 |
. . . 4
⊢ Rel
(𝐶 Func 𝑄) |
| 2 | | yoniso.y |
. . . . 5
⊢ 𝑌 = (Yon‘𝐶) |
| 3 | | yoniso.d |
. . . . . . . 8
⊢ 𝐷 = (CatCat‘𝑉) |
| 4 | | yoniso.b |
. . . . . . . 8
⊢ 𝐵 = (Base‘𝐷) |
| 5 | | yoniso.v |
. . . . . . . 8
⊢ (𝜑 → 𝑉 ∈ 𝑋) |
| 6 | 3, 4, 5 | catcbas 16747 |
. . . . . . 7
⊢ (𝜑 → 𝐵 = (𝑉 ∩ Cat)) |
| 7 | | inss2 3834 |
. . . . . . 7
⊢ (𝑉 ∩ Cat) ⊆
Cat |
| 8 | 6, 7 | syl6eqss 3655 |
. . . . . 6
⊢ (𝜑 → 𝐵 ⊆ Cat) |
| 9 | | yoniso.c |
. . . . . 6
⊢ (𝜑 → 𝐶 ∈ 𝐵) |
| 10 | 8, 9 | sseldd 3604 |
. . . . 5
⊢ (𝜑 → 𝐶 ∈ Cat) |
| 11 | | yoniso.o |
. . . . 5
⊢ 𝑂 = (oppCat‘𝐶) |
| 12 | | yoniso.s |
. . . . 5
⊢ 𝑆 = (SetCat‘𝑈) |
| 13 | | yoniso.q |
. . . . 5
⊢ 𝑄 = (𝑂 FuncCat 𝑆) |
| 14 | | yoniso.u |
. . . . 5
⊢ (𝜑 → 𝑈 ∈ 𝑊) |
| 15 | | yoniso.h |
. . . . 5
⊢ (𝜑 → ran
(Homf ‘𝐶) ⊆ 𝑈) |
| 16 | 2, 10, 11, 12, 13, 14, 15 | yoncl 16902 |
. . . 4
⊢ (𝜑 → 𝑌 ∈ (𝐶 Func 𝑄)) |
| 17 | | 1st2nd 7214 |
. . . 4
⊢ ((Rel
(𝐶 Func 𝑄) ∧ 𝑌 ∈ (𝐶 Func 𝑄)) → 𝑌 = 〈(1st ‘𝑌), (2nd ‘𝑌)〉) |
| 18 | 1, 16, 17 | sylancr 695 |
. . 3
⊢ (𝜑 → 𝑌 = 〈(1st ‘𝑌), (2nd ‘𝑌)〉) |
| 19 | 2, 11, 12, 13, 10, 14, 15 | yonffth 16924 |
. . . . 5
⊢ (𝜑 → 𝑌 ∈ ((𝐶 Full 𝑄) ∩ (𝐶 Faith 𝑄))) |
| 20 | 18, 19 | eqeltrrd 2702 |
. . . 4
⊢ (𝜑 → 〈(1st
‘𝑌), (2nd
‘𝑌)〉 ∈
((𝐶 Full 𝑄) ∩ (𝐶 Faith 𝑄))) |
| 21 | | eqid 2622 |
. . . . . 6
⊢
(Base‘𝐶) =
(Base‘𝐶) |
| 22 | | yoniso.e |
. . . . . 6
⊢ 𝐸 = (𝑄 ↾s ran (1st
‘𝑌)) |
| 23 | 11 | oppccat 16382 |
. . . . . . . 8
⊢ (𝐶 ∈ Cat → 𝑂 ∈ Cat) |
| 24 | 10, 23 | syl 17 |
. . . . . . 7
⊢ (𝜑 → 𝑂 ∈ Cat) |
| 25 | 12 | setccat 16735 |
. . . . . . . 8
⊢ (𝑈 ∈ 𝑊 → 𝑆 ∈ Cat) |
| 26 | 14, 25 | syl 17 |
. . . . . . 7
⊢ (𝜑 → 𝑆 ∈ Cat) |
| 27 | 13, 24, 26 | fuccat 16630 |
. . . . . 6
⊢ (𝜑 → 𝑄 ∈ Cat) |
| 28 | | fvex 6201 |
. . . . . . . 8
⊢
(1st ‘𝑌) ∈ V |
| 29 | 28 | rnex 7100 |
. . . . . . 7
⊢ ran
(1st ‘𝑌)
∈ V |
| 30 | 29 | a1i 11 |
. . . . . 6
⊢ (𝜑 → ran (1st
‘𝑌) ∈
V) |
| 31 | 13 | fucbas 16620 |
. . . . . . . . 9
⊢ (𝑂 Func 𝑆) = (Base‘𝑄) |
| 32 | | 1st2ndbr 7217 |
. . . . . . . . . 10
⊢ ((Rel
(𝐶 Func 𝑄) ∧ 𝑌 ∈ (𝐶 Func 𝑄)) → (1st ‘𝑌)(𝐶 Func 𝑄)(2nd ‘𝑌)) |
| 33 | 1, 16, 32 | sylancr 695 |
. . . . . . . . 9
⊢ (𝜑 → (1st
‘𝑌)(𝐶 Func 𝑄)(2nd ‘𝑌)) |
| 34 | 21, 31, 33 | funcf1 16526 |
. . . . . . . 8
⊢ (𝜑 → (1st
‘𝑌):(Base‘𝐶)⟶(𝑂 Func 𝑆)) |
| 35 | | ffn 6045 |
. . . . . . . 8
⊢
((1st ‘𝑌):(Base‘𝐶)⟶(𝑂 Func 𝑆) → (1st ‘𝑌) Fn (Base‘𝐶)) |
| 36 | 34, 35 | syl 17 |
. . . . . . 7
⊢ (𝜑 → (1st
‘𝑌) Fn
(Base‘𝐶)) |
| 37 | | dffn3 6054 |
. . . . . . 7
⊢
((1st ‘𝑌) Fn (Base‘𝐶) ↔ (1st ‘𝑌):(Base‘𝐶)⟶ran (1st ‘𝑌)) |
| 38 | 36, 37 | sylib 208 |
. . . . . 6
⊢ (𝜑 → (1st
‘𝑌):(Base‘𝐶)⟶ran (1st
‘𝑌)) |
| 39 | 21, 22, 27, 30, 38 | ffthres2c 16600 |
. . . . 5
⊢ (𝜑 → ((1st
‘𝑌)((𝐶 Full 𝑄) ∩ (𝐶 Faith 𝑄))(2nd ‘𝑌) ↔ (1st ‘𝑌)((𝐶 Full 𝐸) ∩ (𝐶 Faith 𝐸))(2nd ‘𝑌))) |
| 40 | | df-br 4654 |
. . . . 5
⊢
((1st ‘𝑌)((𝐶 Full 𝑄) ∩ (𝐶 Faith 𝑄))(2nd ‘𝑌) ↔ 〈(1st ‘𝑌), (2nd ‘𝑌)〉 ∈ ((𝐶 Full 𝑄) ∩ (𝐶 Faith 𝑄))) |
| 41 | | df-br 4654 |
. . . . 5
⊢
((1st ‘𝑌)((𝐶 Full 𝐸) ∩ (𝐶 Faith 𝐸))(2nd ‘𝑌) ↔ 〈(1st ‘𝑌), (2nd ‘𝑌)〉 ∈ ((𝐶 Full 𝐸) ∩ (𝐶 Faith 𝐸))) |
| 42 | 39, 40, 41 | 3bitr3g 302 |
. . . 4
⊢ (𝜑 → (〈(1st
‘𝑌), (2nd
‘𝑌)〉 ∈
((𝐶 Full 𝑄) ∩ (𝐶 Faith 𝑄)) ↔ 〈(1st ‘𝑌), (2nd ‘𝑌)〉 ∈ ((𝐶 Full 𝐸) ∩ (𝐶 Faith 𝐸)))) |
| 43 | 20, 42 | mpbid 222 |
. . 3
⊢ (𝜑 → 〈(1st
‘𝑌), (2nd
‘𝑌)〉 ∈
((𝐶 Full 𝐸) ∩ (𝐶 Faith 𝐸))) |
| 44 | 18, 43 | eqeltrd 2701 |
. 2
⊢ (𝜑 → 𝑌 ∈ ((𝐶 Full 𝐸) ∩ (𝐶 Faith 𝐸))) |
| 45 | | fveq2 6191 |
. . . . . . . . 9
⊢
(((1st ‘𝑌)‘𝑥) = ((1st ‘𝑌)‘𝑦) → (1st
‘((1st ‘𝑌)‘𝑥)) = (1st ‘((1st
‘𝑌)‘𝑦))) |
| 46 | 45 | fveq1d 6193 |
. . . . . . . 8
⊢
(((1st ‘𝑌)‘𝑥) = ((1st ‘𝑌)‘𝑦) → ((1st
‘((1st ‘𝑌)‘𝑥))‘𝑥) = ((1st ‘((1st
‘𝑌)‘𝑦))‘𝑥)) |
| 47 | 46 | fveq2d 6195 |
. . . . . . 7
⊢
(((1st ‘𝑌)‘𝑥) = ((1st ‘𝑌)‘𝑦) → (𝐹‘((1st
‘((1st ‘𝑌)‘𝑥))‘𝑥)) = (𝐹‘((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥))) |
| 48 | | simpl 473 |
. . . . . . . . . 10
⊢ ((𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → 𝑥 ∈ (Base‘𝐶)) |
| 49 | 48, 48 | jca 554 |
. . . . . . . . 9
⊢ ((𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → (𝑥 ∈ (Base‘𝐶) ∧ 𝑥 ∈ (Base‘𝐶))) |
| 50 | | eleq1 2689 |
. . . . . . . . . . . . 13
⊢ (𝑦 = 𝑥 → (𝑦 ∈ (Base‘𝐶) ↔ 𝑥 ∈ (Base‘𝐶))) |
| 51 | 50 | anbi2d 740 |
. . . . . . . . . . . 12
⊢ (𝑦 = 𝑥 → ((𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) ↔ (𝑥 ∈ (Base‘𝐶) ∧ 𝑥 ∈ (Base‘𝐶)))) |
| 52 | 51 | anbi2d 740 |
. . . . . . . . . . 11
⊢ (𝑦 = 𝑥 → ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) ↔ (𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑥 ∈ (Base‘𝐶))))) |
| 53 | | fveq2 6191 |
. . . . . . . . . . . . . . 15
⊢ (𝑦 = 𝑥 → ((1st ‘𝑌)‘𝑦) = ((1st ‘𝑌)‘𝑥)) |
| 54 | 53 | fveq2d 6195 |
. . . . . . . . . . . . . 14
⊢ (𝑦 = 𝑥 → (1st
‘((1st ‘𝑌)‘𝑦)) = (1st ‘((1st
‘𝑌)‘𝑥))) |
| 55 | 54 | fveq1d 6193 |
. . . . . . . . . . . . 13
⊢ (𝑦 = 𝑥 → ((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥) = ((1st ‘((1st
‘𝑌)‘𝑥))‘𝑥)) |
| 56 | 55 | fveq2d 6195 |
. . . . . . . . . . . 12
⊢ (𝑦 = 𝑥 → (𝐹‘((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥)) = (𝐹‘((1st
‘((1st ‘𝑌)‘𝑥))‘𝑥))) |
| 57 | | id 22 |
. . . . . . . . . . . 12
⊢ (𝑦 = 𝑥 → 𝑦 = 𝑥) |
| 58 | 56, 57 | eqeq12d 2637 |
. . . . . . . . . . 11
⊢ (𝑦 = 𝑥 → ((𝐹‘((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥)) = 𝑦 ↔ (𝐹‘((1st
‘((1st ‘𝑌)‘𝑥))‘𝑥)) = 𝑥)) |
| 59 | 52, 58 | imbi12d 334 |
. . . . . . . . . 10
⊢ (𝑦 = 𝑥 → (((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝐹‘((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥)) = 𝑦) ↔ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑥 ∈ (Base‘𝐶))) → (𝐹‘((1st
‘((1st ‘𝑌)‘𝑥))‘𝑥)) = 𝑥))) |
| 60 | 10 | adantr 481 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝐶 ∈ Cat) |
| 61 | | simprr 796 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝑦 ∈ (Base‘𝐶)) |
| 62 | | eqid 2622 |
. . . . . . . . . . . . 13
⊢ (Hom
‘𝐶) = (Hom
‘𝐶) |
| 63 | | simprl 794 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝑥 ∈ (Base‘𝐶)) |
| 64 | 2, 21, 60, 61, 62, 63 | yon11 16904 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥) = (𝑥(Hom ‘𝐶)𝑦)) |
| 65 | 64 | fveq2d 6195 |
. . . . . . . . . . 11
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝐹‘((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥)) = (𝐹‘(𝑥(Hom ‘𝐶)𝑦))) |
| 66 | | yoniso.1 |
. . . . . . . . . . 11
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝐹‘(𝑥(Hom ‘𝐶)𝑦)) = 𝑦) |
| 67 | 65, 66 | eqtrd 2656 |
. . . . . . . . . 10
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝐹‘((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥)) = 𝑦) |
| 68 | 59, 67 | chvarv 2263 |
. . . . . . . . 9
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑥 ∈ (Base‘𝐶))) → (𝐹‘((1st
‘((1st ‘𝑌)‘𝑥))‘𝑥)) = 𝑥) |
| 69 | 49, 68 | sylan2 491 |
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝐹‘((1st
‘((1st ‘𝑌)‘𝑥))‘𝑥)) = 𝑥) |
| 70 | 69, 67 | eqeq12d 2637 |
. . . . . . 7
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((𝐹‘((1st
‘((1st ‘𝑌)‘𝑥))‘𝑥)) = (𝐹‘((1st
‘((1st ‘𝑌)‘𝑦))‘𝑥)) ↔ 𝑥 = 𝑦)) |
| 71 | 47, 70 | syl5ib 234 |
. . . . . 6
⊢ ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (((1st ‘𝑌)‘𝑥) = ((1st ‘𝑌)‘𝑦) → 𝑥 = 𝑦)) |
| 72 | 71 | ralrimivva 2971 |
. . . . 5
⊢ (𝜑 → ∀𝑥 ∈ (Base‘𝐶)∀𝑦 ∈ (Base‘𝐶)(((1st ‘𝑌)‘𝑥) = ((1st ‘𝑌)‘𝑦) → 𝑥 = 𝑦)) |
| 73 | | dff13 6512 |
. . . . 5
⊢
((1st ‘𝑌):(Base‘𝐶)–1-1→(𝑂 Func 𝑆) ↔ ((1st ‘𝑌):(Base‘𝐶)⟶(𝑂 Func 𝑆) ∧ ∀𝑥 ∈ (Base‘𝐶)∀𝑦 ∈ (Base‘𝐶)(((1st ‘𝑌)‘𝑥) = ((1st ‘𝑌)‘𝑦) → 𝑥 = 𝑦))) |
| 74 | 34, 72, 73 | sylanbrc 698 |
. . . 4
⊢ (𝜑 → (1st
‘𝑌):(Base‘𝐶)–1-1→(𝑂 Func 𝑆)) |
| 75 | | f1f1orn 6148 |
. . . 4
⊢
((1st ‘𝑌):(Base‘𝐶)–1-1→(𝑂 Func 𝑆) → (1st ‘𝑌):(Base‘𝐶)–1-1-onto→ran
(1st ‘𝑌)) |
| 76 | 74, 75 | syl 17 |
. . 3
⊢ (𝜑 → (1st
‘𝑌):(Base‘𝐶)–1-1-onto→ran
(1st ‘𝑌)) |
| 77 | | frn 6053 |
. . . . . 6
⊢
((1st ‘𝑌):(Base‘𝐶)⟶(𝑂 Func 𝑆) → ran (1st ‘𝑌) ⊆ (𝑂 Func 𝑆)) |
| 78 | 34, 77 | syl 17 |
. . . . 5
⊢ (𝜑 → ran (1st
‘𝑌) ⊆ (𝑂 Func 𝑆)) |
| 79 | 22, 31 | ressbas2 15931 |
. . . . 5
⊢ (ran
(1st ‘𝑌)
⊆ (𝑂 Func 𝑆) → ran (1st
‘𝑌) =
(Base‘𝐸)) |
| 80 | 78, 79 | syl 17 |
. . . 4
⊢ (𝜑 → ran (1st
‘𝑌) =
(Base‘𝐸)) |
| 81 | | f1oeq3 6129 |
. . . 4
⊢ (ran
(1st ‘𝑌) =
(Base‘𝐸) →
((1st ‘𝑌):(Base‘𝐶)–1-1-onto→ran
(1st ‘𝑌)
↔ (1st ‘𝑌):(Base‘𝐶)–1-1-onto→(Base‘𝐸))) |
| 82 | 80, 81 | syl 17 |
. . 3
⊢ (𝜑 → ((1st
‘𝑌):(Base‘𝐶)–1-1-onto→ran
(1st ‘𝑌)
↔ (1st ‘𝑌):(Base‘𝐶)–1-1-onto→(Base‘𝐸))) |
| 83 | 76, 82 | mpbid 222 |
. 2
⊢ (𝜑 → (1st
‘𝑌):(Base‘𝐶)–1-1-onto→(Base‘𝐸)) |
| 84 | | eqid 2622 |
. . 3
⊢
(Base‘𝐸) =
(Base‘𝐸) |
| 85 | | yoniso.eb |
. . 3
⊢ (𝜑 → 𝐸 ∈ 𝐵) |
| 86 | | yoniso.i |
. . 3
⊢ 𝐼 = (Iso‘𝐷) |
| 87 | 3, 4, 21, 84, 5, 9, 85, 86 | catciso 16757 |
. 2
⊢ (𝜑 → (𝑌 ∈ (𝐶𝐼𝐸) ↔ (𝑌 ∈ ((𝐶 Full 𝐸) ∩ (𝐶 Faith 𝐸)) ∧ (1st ‘𝑌):(Base‘𝐶)–1-1-onto→(Base‘𝐸)))) |
| 88 | 44, 83, 87 | mpbir2and 957 |
1
⊢ (𝜑 → 𝑌 ∈ (𝐶𝐼𝐸)) |