This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: A functor into a smaller category of sets is a functor into the larger category. (Contributed by Mario Carneiro, 28-Jan-2017)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | resssetc.c | ⊢ 𝐶 = ( SetCat ‘ 𝑈 ) | |
| resssetc.d | ⊢ 𝐷 = ( SetCat ‘ 𝑉 ) | ||
| resssetc.1 | ⊢ ( 𝜑 → 𝑈 ∈ 𝑊 ) | ||
| resssetc.2 | ⊢ ( 𝜑 → 𝑉 ⊆ 𝑈 ) | ||
| Assertion | funcsetcres2 | ⊢ ( 𝜑 → ( 𝐸 Func 𝐷 ) ⊆ ( 𝐸 Func 𝐶 ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | resssetc.c | ⊢ 𝐶 = ( SetCat ‘ 𝑈 ) | |
| 2 | resssetc.d | ⊢ 𝐷 = ( SetCat ‘ 𝑉 ) | |
| 3 | resssetc.1 | ⊢ ( 𝜑 → 𝑈 ∈ 𝑊 ) | |
| 4 | resssetc.2 | ⊢ ( 𝜑 → 𝑉 ⊆ 𝑈 ) | |
| 5 | eqidd | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( Homf ‘ 𝐸 ) = ( Homf ‘ 𝐸 ) ) | |
| 6 | eqidd | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( compf ‘ 𝐸 ) = ( compf ‘ 𝐸 ) ) | |
| 7 | eqid | ⊢ ( Base ‘ 𝐶 ) = ( Base ‘ 𝐶 ) | |
| 8 | eqid | ⊢ ( Homf ‘ 𝐶 ) = ( Homf ‘ 𝐶 ) | |
| 9 | 1 | setccat | ⊢ ( 𝑈 ∈ 𝑊 → 𝐶 ∈ Cat ) |
| 10 | 3 9 | syl | ⊢ ( 𝜑 → 𝐶 ∈ Cat ) |
| 11 | 10 | adantr | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → 𝐶 ∈ Cat ) |
| 12 | 1 3 | setcbas | ⊢ ( 𝜑 → 𝑈 = ( Base ‘ 𝐶 ) ) |
| 13 | 4 12 | sseqtrd | ⊢ ( 𝜑 → 𝑉 ⊆ ( Base ‘ 𝐶 ) ) |
| 14 | 13 | adantr | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → 𝑉 ⊆ ( Base ‘ 𝐶 ) ) |
| 15 | eqid | ⊢ ( 𝐶 ↾s 𝑉 ) = ( 𝐶 ↾s 𝑉 ) | |
| 16 | eqid | ⊢ ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) = ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) | |
| 17 | 7 8 11 14 15 16 | fullresc | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( ( Homf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( Homf ‘ ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) ∧ ( compf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( compf ‘ ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) ) ) |
| 18 | 17 | simpld | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( Homf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( Homf ‘ ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) ) |
| 19 | 1 2 3 4 | resssetc | ⊢ ( 𝜑 → ( ( Homf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( Homf ‘ 𝐷 ) ∧ ( compf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( compf ‘ 𝐷 ) ) ) |
| 20 | 19 | adantr | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( ( Homf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( Homf ‘ 𝐷 ) ∧ ( compf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( compf ‘ 𝐷 ) ) ) |
| 21 | 20 | simpld | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( Homf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( Homf ‘ 𝐷 ) ) |
| 22 | 18 21 | eqtr3d | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( Homf ‘ ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) = ( Homf ‘ 𝐷 ) ) |
| 23 | 17 | simprd | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( compf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( compf ‘ ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) ) |
| 24 | 20 | simprd | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( compf ‘ ( 𝐶 ↾s 𝑉 ) ) = ( compf ‘ 𝐷 ) ) |
| 25 | 23 24 | eqtr3d | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( compf ‘ ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) = ( compf ‘ 𝐷 ) ) |
| 26 | funcrcl | ⊢ ( 𝑓 ∈ ( 𝐸 Func 𝐷 ) → ( 𝐸 ∈ Cat ∧ 𝐷 ∈ Cat ) ) | |
| 27 | 26 | adantl | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( 𝐸 ∈ Cat ∧ 𝐷 ∈ Cat ) ) |
| 28 | 27 | simpld | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → 𝐸 ∈ Cat ) |
| 29 | 7 8 11 14 | fullsubc | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ∈ ( Subcat ‘ 𝐶 ) ) |
| 30 | 16 29 | subccat | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ∈ Cat ) |
| 31 | 27 | simprd | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → 𝐷 ∈ Cat ) |
| 32 | 5 6 22 25 28 28 30 31 | funcpropd | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( 𝐸 Func ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) = ( 𝐸 Func 𝐷 ) ) |
| 33 | funcres2 | ⊢ ( ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ∈ ( Subcat ‘ 𝐶 ) → ( 𝐸 Func ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) ⊆ ( 𝐸 Func 𝐶 ) ) | |
| 34 | 29 33 | syl | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( 𝐸 Func ( 𝐶 ↾cat ( ( Homf ‘ 𝐶 ) ↾ ( 𝑉 × 𝑉 ) ) ) ) ⊆ ( 𝐸 Func 𝐶 ) ) |
| 35 | 32 34 | eqsstrrd | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → ( 𝐸 Func 𝐷 ) ⊆ ( 𝐸 Func 𝐶 ) ) |
| 36 | simpr | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) | |
| 37 | 35 36 | sseldd | ⊢ ( ( 𝜑 ∧ 𝑓 ∈ ( 𝐸 Func 𝐷 ) ) → 𝑓 ∈ ( 𝐸 Func 𝐶 ) ) |
| 38 | 37 | ex | ⊢ ( 𝜑 → ( 𝑓 ∈ ( 𝐸 Func 𝐷 ) → 𝑓 ∈ ( 𝐸 Func 𝐶 ) ) ) |
| 39 | 38 | ssrdv | ⊢ ( 𝜑 → ( 𝐸 Func 𝐷 ) ⊆ ( 𝐸 Func 𝐶 ) ) |