| Step |
Hyp |
Ref |
Expression |
| 1 |
|
fuco22a.o |
⊢ ( 𝜑 → ( 〈 𝐶 , 𝐷 〉 ∘F 𝐸 ) = 〈 𝑂 , 𝑃 〉 ) |
| 2 |
|
fuco22a.u |
⊢ ( 𝜑 → 𝑈 = 〈 𝐾 , 𝐹 〉 ) |
| 3 |
|
fuco22a.v |
⊢ ( 𝜑 → 𝑉 = 〈 𝑅 , 𝑀 〉 ) |
| 4 |
|
fuco22a.a |
⊢ ( 𝜑 → 𝐴 ∈ ( 𝐹 ( 𝐶 Nat 𝐷 ) 𝑀 ) ) |
| 5 |
|
fuco22a.b |
⊢ ( 𝜑 → 𝐵 ∈ ( 𝐾 ( 𝐷 Nat 𝐸 ) 𝑅 ) ) |
| 6 |
|
relfunc |
⊢ Rel ( 𝐷 Func 𝐸 ) |
| 7 |
|
df-rel |
⊢ ( Rel ( 𝐷 Func 𝐸 ) ↔ ( 𝐷 Func 𝐸 ) ⊆ ( V × V ) ) |
| 8 |
6 7
|
mpbi |
⊢ ( 𝐷 Func 𝐸 ) ⊆ ( V × V ) |
| 9 |
|
eqid |
⊢ ( 𝐷 Nat 𝐸 ) = ( 𝐷 Nat 𝐸 ) |
| 10 |
9
|
natrcl |
⊢ ( 𝐵 ∈ ( 𝐾 ( 𝐷 Nat 𝐸 ) 𝑅 ) → ( 𝐾 ∈ ( 𝐷 Func 𝐸 ) ∧ 𝑅 ∈ ( 𝐷 Func 𝐸 ) ) ) |
| 11 |
5 10
|
syl |
⊢ ( 𝜑 → ( 𝐾 ∈ ( 𝐷 Func 𝐸 ) ∧ 𝑅 ∈ ( 𝐷 Func 𝐸 ) ) ) |
| 12 |
11
|
simpld |
⊢ ( 𝜑 → 𝐾 ∈ ( 𝐷 Func 𝐸 ) ) |
| 13 |
8 12
|
sselid |
⊢ ( 𝜑 → 𝐾 ∈ ( V × V ) ) |
| 14 |
|
1st2ndb |
⊢ ( 𝐾 ∈ ( V × V ) ↔ 𝐾 = 〈 ( 1st ‘ 𝐾 ) , ( 2nd ‘ 𝐾 ) 〉 ) |
| 15 |
13 14
|
sylib |
⊢ ( 𝜑 → 𝐾 = 〈 ( 1st ‘ 𝐾 ) , ( 2nd ‘ 𝐾 ) 〉 ) |
| 16 |
|
relfunc |
⊢ Rel ( 𝐶 Func 𝐷 ) |
| 17 |
|
df-rel |
⊢ ( Rel ( 𝐶 Func 𝐷 ) ↔ ( 𝐶 Func 𝐷 ) ⊆ ( V × V ) ) |
| 18 |
16 17
|
mpbi |
⊢ ( 𝐶 Func 𝐷 ) ⊆ ( V × V ) |
| 19 |
|
eqid |
⊢ ( 𝐶 Nat 𝐷 ) = ( 𝐶 Nat 𝐷 ) |
| 20 |
19
|
natrcl |
⊢ ( 𝐴 ∈ ( 𝐹 ( 𝐶 Nat 𝐷 ) 𝑀 ) → ( 𝐹 ∈ ( 𝐶 Func 𝐷 ) ∧ 𝑀 ∈ ( 𝐶 Func 𝐷 ) ) ) |
| 21 |
4 20
|
syl |
⊢ ( 𝜑 → ( 𝐹 ∈ ( 𝐶 Func 𝐷 ) ∧ 𝑀 ∈ ( 𝐶 Func 𝐷 ) ) ) |
| 22 |
21
|
simpld |
⊢ ( 𝜑 → 𝐹 ∈ ( 𝐶 Func 𝐷 ) ) |
| 23 |
18 22
|
sselid |
⊢ ( 𝜑 → 𝐹 ∈ ( V × V ) ) |
| 24 |
|
1st2ndb |
⊢ ( 𝐹 ∈ ( V × V ) ↔ 𝐹 = 〈 ( 1st ‘ 𝐹 ) , ( 2nd ‘ 𝐹 ) 〉 ) |
| 25 |
23 24
|
sylib |
⊢ ( 𝜑 → 𝐹 = 〈 ( 1st ‘ 𝐹 ) , ( 2nd ‘ 𝐹 ) 〉 ) |
| 26 |
15 25
|
opeq12d |
⊢ ( 𝜑 → 〈 𝐾 , 𝐹 〉 = 〈 〈 ( 1st ‘ 𝐾 ) , ( 2nd ‘ 𝐾 ) 〉 , 〈 ( 1st ‘ 𝐹 ) , ( 2nd ‘ 𝐹 ) 〉 〉 ) |
| 27 |
2 26
|
eqtrd |
⊢ ( 𝜑 → 𝑈 = 〈 〈 ( 1st ‘ 𝐾 ) , ( 2nd ‘ 𝐾 ) 〉 , 〈 ( 1st ‘ 𝐹 ) , ( 2nd ‘ 𝐹 ) 〉 〉 ) |
| 28 |
11
|
simprd |
⊢ ( 𝜑 → 𝑅 ∈ ( 𝐷 Func 𝐸 ) ) |
| 29 |
8 28
|
sselid |
⊢ ( 𝜑 → 𝑅 ∈ ( V × V ) ) |
| 30 |
|
1st2ndb |
⊢ ( 𝑅 ∈ ( V × V ) ↔ 𝑅 = 〈 ( 1st ‘ 𝑅 ) , ( 2nd ‘ 𝑅 ) 〉 ) |
| 31 |
29 30
|
sylib |
⊢ ( 𝜑 → 𝑅 = 〈 ( 1st ‘ 𝑅 ) , ( 2nd ‘ 𝑅 ) 〉 ) |
| 32 |
21
|
simprd |
⊢ ( 𝜑 → 𝑀 ∈ ( 𝐶 Func 𝐷 ) ) |
| 33 |
18 32
|
sselid |
⊢ ( 𝜑 → 𝑀 ∈ ( V × V ) ) |
| 34 |
|
1st2ndb |
⊢ ( 𝑀 ∈ ( V × V ) ↔ 𝑀 = 〈 ( 1st ‘ 𝑀 ) , ( 2nd ‘ 𝑀 ) 〉 ) |
| 35 |
33 34
|
sylib |
⊢ ( 𝜑 → 𝑀 = 〈 ( 1st ‘ 𝑀 ) , ( 2nd ‘ 𝑀 ) 〉 ) |
| 36 |
31 35
|
opeq12d |
⊢ ( 𝜑 → 〈 𝑅 , 𝑀 〉 = 〈 〈 ( 1st ‘ 𝑅 ) , ( 2nd ‘ 𝑅 ) 〉 , 〈 ( 1st ‘ 𝑀 ) , ( 2nd ‘ 𝑀 ) 〉 〉 ) |
| 37 |
3 36
|
eqtrd |
⊢ ( 𝜑 → 𝑉 = 〈 〈 ( 1st ‘ 𝑅 ) , ( 2nd ‘ 𝑅 ) 〉 , 〈 ( 1st ‘ 𝑀 ) , ( 2nd ‘ 𝑀 ) 〉 〉 ) |
| 38 |
19 4
|
nat1st2nd |
⊢ ( 𝜑 → 𝐴 ∈ ( 〈 ( 1st ‘ 𝐹 ) , ( 2nd ‘ 𝐹 ) 〉 ( 𝐶 Nat 𝐷 ) 〈 ( 1st ‘ 𝑀 ) , ( 2nd ‘ 𝑀 ) 〉 ) ) |
| 39 |
9 5
|
nat1st2nd |
⊢ ( 𝜑 → 𝐵 ∈ ( 〈 ( 1st ‘ 𝐾 ) , ( 2nd ‘ 𝐾 ) 〉 ( 𝐷 Nat 𝐸 ) 〈 ( 1st ‘ 𝑅 ) , ( 2nd ‘ 𝑅 ) 〉 ) ) |
| 40 |
1 27 37 38 39
|
fuco22 |
⊢ ( 𝜑 → ( 𝐵 ( 𝑈 𝑃 𝑉 ) 𝐴 ) = ( 𝑥 ∈ ( Base ‘ 𝐶 ) ↦ ( ( 𝐵 ‘ ( ( 1st ‘ 𝑀 ) ‘ 𝑥 ) ) ( 〈 ( ( 1st ‘ 𝐾 ) ‘ ( ( 1st ‘ 𝐹 ) ‘ 𝑥 ) ) , ( ( 1st ‘ 𝐾 ) ‘ ( ( 1st ‘ 𝑀 ) ‘ 𝑥 ) ) 〉 ( comp ‘ 𝐸 ) ( ( 1st ‘ 𝑅 ) ‘ ( ( 1st ‘ 𝑀 ) ‘ 𝑥 ) ) ) ( ( ( ( 1st ‘ 𝐹 ) ‘ 𝑥 ) ( 2nd ‘ 𝐾 ) ( ( 1st ‘ 𝑀 ) ‘ 𝑥 ) ) ‘ ( 𝐴 ‘ 𝑥 ) ) ) ) ) |