| Step |
Hyp |
Ref |
Expression |
| 1 |
|
fuconuniq2.c |
⊢ 𝐶 = ( SetCat ‘ 1o ) |
| 2 |
|
fuconuniq2.e |
⊢ 𝐸 = { 〈 ( Base ‘ ndx ) , 2o 〉 , 〈 ( Hom ‘ ndx ) , ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 〉 , 〈 ( comp ‘ ndx ) , ( 𝑝 ∈ ( 2o × 2o ) , 𝑞 ∈ 2o ↦ ( 𝑟 ∈ 3o , 𝑠 ∈ 3o ↦ ( 𝑟 ∩ 𝑠 ) ) ) 〉 } |
| 3 |
|
fuconuniq2.q |
⊢ 𝑄 = ( 𝐶 FuncCat 𝐸 ) |
| 4 |
|
fuconuniq2.l |
⊢ 𝐿 = ( 〈 𝐶 , 𝐶 〉 ∘F 𝐸 ) |
| 5 |
|
fuconuniq.a |
⊢ 𝐴 = ( 𝑏 ∈ 3o ↦ if ( 𝑏 = 2o , 2o , if ( 𝑏 = ∅ , 1o , ∅ ) ) ) |
| 6 |
|
fuconuniq.m |
⊢ 𝑀 = ( 𝑢 ∈ 2o , 𝑣 ∈ 2o ↦ ( 𝑎 ∈ ( 𝑢 ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 𝑣 ) ↦ ( 𝐴 ‘ 𝑎 ) ) ) |
| 7 |
|
fuconuniq.s |
⊢ 𝑆 = 〈 ( I ↾ 2o ) , 𝑀 〉 |
| 8 |
|
fuconuniq.r |
⊢ 𝑅 = ( 𝐸 FuncCat 𝐸 ) |
| 9 |
|
fuconuniq.o |
⊢ ⚬ = ( 〈 𝑅 , 𝑄 〉 curryF ( 〈 𝐶 , 𝐸 〉 ∘F 𝐸 ) ) |
| 10 |
|
fuconuniq.k |
⊢ 𝐾 = ( ( 1st ‘ ⚬ ) ‘ 𝑆 ) |
| 11 |
|
fuconuniqlem.t |
⊢ 𝑇 = ( ( 𝐶 FuncCat 𝐸 ) ×c ( 𝐶 FuncCat 𝐶 ) ) |
| 12 |
|
fuconuniqlem.d |
⊢ 𝐷 = ( 𝐸 Δfunc 𝐶 ) |
| 13 |
|
fuconuniqlem.f |
⊢ 𝐹 = ( ( 1st ‘ 𝐷 ) ‘ ∅ ) |
| 14 |
|
fuconuniqlem.g |
⊢ 𝐺 = ( ( 1st ‘ 𝐷 ) ‘ 1o ) |
| 15 |
|
fuconuniqlem.n |
⊢ 𝑁 = ( 1o × { ∅ } ) |
| 16 |
|
setc1oterm |
⊢ ( SetCat ‘ 1o ) ∈ TermCat |
| 17 |
1 16
|
eqeltri |
⊢ 𝐶 ∈ TermCat |
| 18 |
17
|
a1i |
⊢ ( ⊤ → 𝐶 ∈ TermCat ) |
| 19 |
18
|
termccatd |
⊢ ( ⊤ → 𝐶 ∈ Cat ) |
| 20 |
2
|
par2catid |
⊢ ( 𝐸 ∈ Cat ∧ ( Id ‘ 𝐸 ) = ( 𝑦 ∈ 2o ↦ 2o ) ) |
| 21 |
20
|
simpli |
⊢ 𝐸 ∈ Cat |
| 22 |
21
|
a1i |
⊢ ( ⊤ → 𝐸 ∈ Cat ) |
| 23 |
2 5 6
|
parswapfunc |
⊢ 〈 ( I ↾ 2o ) , 𝑀 〉 ∈ ( 𝐸 Func 𝐸 ) |
| 24 |
7 23
|
eqeltri |
⊢ 𝑆 ∈ ( 𝐸 Func 𝐸 ) |
| 25 |
24
|
a1i |
⊢ ( ⊤ → 𝑆 ∈ ( 𝐸 Func 𝐸 ) ) |
| 26 |
|
mptresid |
⊢ ( I ↾ 2o ) = ( 𝑥 ∈ 2o ↦ 𝑥 ) |
| 27 |
|
2oex |
⊢ 2o ∈ V |
| 28 |
27
|
mptex |
⊢ ( 𝑥 ∈ 2o ↦ 𝑥 ) ∈ V |
| 29 |
26 28
|
eqeltri |
⊢ ( I ↾ 2o ) ∈ V |
| 30 |
27 27
|
mpoex |
⊢ ( 𝑢 ∈ 2o , 𝑣 ∈ 2o ↦ ( 𝑎 ∈ ( 𝑢 ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 𝑣 ) ↦ ( 𝐴 ‘ 𝑎 ) ) ) ∈ V |
| 31 |
6 30
|
eqeltri |
⊢ 𝑀 ∈ V |
| 32 |
29 31
|
op1std |
⊢ ( 𝑆 = 〈 ( I ↾ 2o ) , 𝑀 〉 → ( 1st ‘ 𝑆 ) = ( I ↾ 2o ) ) |
| 33 |
7 32
|
mp1i |
⊢ ( ⊤ → ( 1st ‘ 𝑆 ) = ( I ↾ 2o ) ) |
| 34 |
18 3 8 9 10 25 33
|
termcpostfix |
⊢ ( ⊤ → ( 𝐾 ∈ ( 𝑄 Func 𝑄 ) ∧ ( 1st ‘ 𝐾 ) = ( I ↾ ( 𝐶 Func 𝐸 ) ) ) ) |
| 35 |
34
|
simpld |
⊢ ( ⊤ → 𝐾 ∈ ( 𝑄 Func 𝑄 ) ) |
| 36 |
34
|
simprd |
⊢ ( ⊤ → ( 1st ‘ 𝐾 ) = ( I ↾ ( 𝐶 Func 𝐸 ) ) ) |
| 37 |
3 11 4 19 19 22 35 36
|
fucoaltfunc |
⊢ ( ⊤ → ( 1st ‘ 𝐿 ) ( 𝑇 Func 𝑄 ) ( 2nd ‘ ( 𝐾 ∘func 𝐿 ) ) ) |
| 38 |
1 2 12 13 14 15
|
par2diag |
⊢ ( ( 𝐹 ∈ ( 𝐶 Func 𝐸 ) ∧ 𝐺 ∈ ( 𝐶 Func 𝐸 ) ) ∧ ( 𝑁 ∈ ( 𝐹 ( 𝐶 Nat 𝐸 ) 𝐺 ) ∧ ( 𝑁 ‘ ∅ ) = ∅ ) ∧ ( ( ( 1st ‘ 𝐹 ) ‘ ∅ ) = ∅ ∧ ( ( 1st ‘ 𝐺 ) ‘ ∅ ) = 1o ) ) |
| 39 |
38
|
simp1i |
⊢ ( 𝐹 ∈ ( 𝐶 Func 𝐸 ) ∧ 𝐺 ∈ ( 𝐶 Func 𝐸 ) ) |
| 40 |
39
|
simpli |
⊢ 𝐹 ∈ ( 𝐶 Func 𝐸 ) |
| 41 |
40
|
a1i |
⊢ ( ⊤ → 𝐹 ∈ ( 𝐶 Func 𝐸 ) ) |
| 42 |
39
|
simpri |
⊢ 𝐺 ∈ ( 𝐶 Func 𝐸 ) |
| 43 |
42
|
a1i |
⊢ ( ⊤ → 𝐺 ∈ ( 𝐶 Func 𝐸 ) ) |
| 44 |
38
|
simp2i |
⊢ ( 𝑁 ∈ ( 𝐹 ( 𝐶 Nat 𝐸 ) 𝐺 ) ∧ ( 𝑁 ‘ ∅ ) = ∅ ) |
| 45 |
44
|
simpli |
⊢ 𝑁 ∈ ( 𝐹 ( 𝐶 Nat 𝐸 ) 𝐺 ) |
| 46 |
45
|
a1i |
⊢ ( ⊤ → 𝑁 ∈ ( 𝐹 ( 𝐶 Nat 𝐸 ) 𝐺 ) ) |
| 47 |
|
0lt1o |
⊢ ∅ ∈ 1o |
| 48 |
1
|
setc1obas |
⊢ 1o = ( Base ‘ 𝐶 ) |
| 49 |
47 48
|
eleqtri |
⊢ ∅ ∈ ( Base ‘ 𝐶 ) |
| 50 |
49
|
a1i |
⊢ ( ⊤ → ∅ ∈ ( Base ‘ 𝐶 ) ) |
| 51 |
3 8 9 25 19 10 41 43 46 50
|
postcof2 |
⊢ ( ⊤ → ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ‘ ∅ ) = ( ( ( ( 1st ‘ 𝐹 ) ‘ ∅ ) ( 2nd ‘ 𝑆 ) ( ( 1st ‘ 𝐺 ) ‘ ∅ ) ) ‘ ( 𝑁 ‘ ∅ ) ) ) |
| 52 |
51
|
mptru |
⊢ ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ‘ ∅ ) = ( ( ( ( 1st ‘ 𝐹 ) ‘ ∅ ) ( 2nd ‘ 𝑆 ) ( ( 1st ‘ 𝐺 ) ‘ ∅ ) ) ‘ ( 𝑁 ‘ ∅ ) ) |
| 53 |
38
|
simp3i |
⊢ ( ( ( 1st ‘ 𝐹 ) ‘ ∅ ) = ∅ ∧ ( ( 1st ‘ 𝐺 ) ‘ ∅ ) = 1o ) |
| 54 |
53
|
simpli |
⊢ ( ( 1st ‘ 𝐹 ) ‘ ∅ ) = ∅ |
| 55 |
53
|
simpri |
⊢ ( ( 1st ‘ 𝐺 ) ‘ ∅ ) = 1o |
| 56 |
29 31
|
op2ndd |
⊢ ( 𝑆 = 〈 ( I ↾ 2o ) , 𝑀 〉 → ( 2nd ‘ 𝑆 ) = 𝑀 ) |
| 57 |
7 56
|
ax-mp |
⊢ ( 2nd ‘ 𝑆 ) = 𝑀 |
| 58 |
54 55 57
|
oveq123i |
⊢ ( ( ( 1st ‘ 𝐹 ) ‘ ∅ ) ( 2nd ‘ 𝑆 ) ( ( 1st ‘ 𝐺 ) ‘ ∅ ) ) = ( ∅ 𝑀 1o ) |
| 59 |
44
|
simpri |
⊢ ( 𝑁 ‘ ∅ ) = ∅ |
| 60 |
58 59
|
fveq12i |
⊢ ( ( ( ( 1st ‘ 𝐹 ) ‘ ∅ ) ( 2nd ‘ 𝑆 ) ( ( 1st ‘ 𝐺 ) ‘ ∅ ) ) ‘ ( 𝑁 ‘ ∅ ) ) = ( ( ∅ 𝑀 1o ) ‘ ∅ ) |
| 61 |
52 60
|
eqtri |
⊢ ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ‘ ∅ ) = ( ( ∅ 𝑀 1o ) ‘ ∅ ) |
| 62 |
|
0ex |
⊢ ∅ ∈ V |
| 63 |
62
|
prid1 |
⊢ ∅ ∈ { ∅ , 1o } |
| 64 |
|
df2o3 |
⊢ 2o = { ∅ , 1o } |
| 65 |
63 64
|
eleqtrri |
⊢ ∅ ∈ 2o |
| 66 |
65
|
a1i |
⊢ ( ⊤ → ∅ ∈ 2o ) |
| 67 |
|
1oelpr |
⊢ 1o ∈ { ∅ , 1o } |
| 68 |
67 64
|
eleqtrri |
⊢ 1o ∈ 2o |
| 69 |
68
|
a1i |
⊢ ( ⊤ → 1o ∈ 2o ) |
| 70 |
|
eqid |
⊢ ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) = ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) |
| 71 |
70
|
par2hom |
⊢ ( ( ∅ ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) ∅ ) = { 2o } ∧ ( 1o ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 1o ) = { 2o } ∧ ( ( ∅ ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 1o ) = 2o ∧ ( 1o ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) ∅ ) = ∅ ) ) |
| 72 |
71
|
simp3i |
⊢ ( ( ∅ ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 1o ) = 2o ∧ ( 1o ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) ∅ ) = ∅ ) |
| 73 |
72
|
simpli |
⊢ ( ∅ ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 1o ) = 2o |
| 74 |
65 73
|
eleqtrri |
⊢ ∅ ∈ ( ∅ ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 1o ) |
| 75 |
74
|
a1i |
⊢ ( ⊤ → ∅ ∈ ( ∅ ( 𝑚 ∈ 2o , 𝑛 ∈ 2o ↦ if ( 𝑚 = 𝑛 , { 2o } , if ( ( 𝑚 = ∅ ∧ 𝑛 = 1o ) , 2o , ∅ ) ) ) 1o ) ) |
| 76 |
6 66 69 75
|
fvmpomptd |
⊢ ( ⊤ → ( ( ∅ 𝑀 1o ) ‘ ∅ ) = ( 𝐴 ‘ ∅ ) ) |
| 77 |
76
|
mptru |
⊢ ( ( ∅ 𝑀 1o ) ‘ ∅ ) = ( 𝐴 ‘ ∅ ) |
| 78 |
5
|
parswapprop |
⊢ ( ( 𝐴 ‘ 2o ) = 2o ∧ ∀ 𝑡 ∈ 2o ( 𝐴 ‘ 𝑡 ) ∈ 2o ∧ ( 𝐴 ‘ ∅ ) = 1o ) |
| 79 |
78
|
simp3i |
⊢ ( 𝐴 ‘ ∅ ) = 1o |
| 80 |
61 77 79
|
3eqtri |
⊢ ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ‘ ∅ ) = 1o |
| 81 |
|
1n0 |
⊢ 1o ≠ ∅ |
| 82 |
80 81
|
eqnetri |
⊢ ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ‘ ∅ ) ≠ ∅ |
| 83 |
82 59
|
neeqtrri |
⊢ ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ‘ ∅ ) ≠ ( 𝑁 ‘ ∅ ) |
| 84 |
|
fveq1 |
⊢ ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) = 𝑁 → ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ‘ ∅ ) = ( 𝑁 ‘ ∅ ) ) |
| 85 |
84
|
necon3i |
⊢ ( ( ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ‘ ∅ ) ≠ ( 𝑁 ‘ ∅ ) → ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ≠ 𝑁 ) |
| 86 |
83 85
|
mp1i |
⊢ ( ⊤ → ( ( 𝐹 ( 2nd ‘ 𝐾 ) 𝐺 ) ‘ 𝑁 ) ≠ 𝑁 ) |
| 87 |
3 4 19 22 35 41 43 46 86
|
fucoaltne |
⊢ ( ⊤ → ( 2nd ‘ ( 𝐾 ∘func 𝐿 ) ) ≠ ( 2nd ‘ 𝐿 ) ) |
| 88 |
37 87
|
jca |
⊢ ( ⊤ → ( ( 1st ‘ 𝐿 ) ( 𝑇 Func 𝑄 ) ( 2nd ‘ ( 𝐾 ∘func 𝐿 ) ) ∧ ( 2nd ‘ ( 𝐾 ∘func 𝐿 ) ) ≠ ( 2nd ‘ 𝐿 ) ) ) |
| 89 |
88
|
mptru |
⊢ ( ( 1st ‘ 𝐿 ) ( 𝑇 Func 𝑄 ) ( 2nd ‘ ( 𝐾 ∘func 𝐿 ) ) ∧ ( 2nd ‘ ( 𝐾 ∘func 𝐿 ) ) ≠ ( 2nd ‘ 𝐿 ) ) |