| Step |
Hyp |
Ref |
Expression |
| 1 |
|
rel0 |
⊢ Rel ∅ |
| 2 |
|
df-ov |
⊢ ( 𝑃 Ran 𝐸 ) = ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) |
| 3 |
|
id |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) = ∅ → ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) = ∅ ) |
| 4 |
2 3
|
eqtrid |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) = ∅ → ( 𝑃 Ran 𝐸 ) = ∅ ) |
| 5 |
4
|
dmeqd |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) = ∅ → dom ( 𝑃 Ran 𝐸 ) = dom ∅ ) |
| 6 |
|
dm0 |
⊢ dom ∅ = ∅ |
| 7 |
5 6
|
eqtrdi |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) = ∅ → dom ( 𝑃 Ran 𝐸 ) = ∅ ) |
| 8 |
7
|
releqd |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) = ∅ → ( Rel dom ( 𝑃 Ran 𝐸 ) ↔ Rel ∅ ) ) |
| 9 |
1 8
|
mpbiri |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) = ∅ → Rel dom ( 𝑃 Ran 𝐸 ) ) |
| 10 |
|
eqid |
⊢ ( 𝑓 ∈ ( ( 1st ‘ 𝑃 ) Func ( 2nd ‘ 𝑃 ) ) , 𝑥 ∈ ( ( 1st ‘ 𝑃 ) Func 𝐸 ) ↦ ( ( oppFunc ‘ ( 〈 ( 2nd ‘ 𝑃 ) , 𝐸 〉 −∘F 𝑓 ) ) ( ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) UP ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) ) 𝑥 ) ) = ( 𝑓 ∈ ( ( 1st ‘ 𝑃 ) Func ( 2nd ‘ 𝑃 ) ) , 𝑥 ∈ ( ( 1st ‘ 𝑃 ) Func 𝐸 ) ↦ ( ( oppFunc ‘ ( 〈 ( 2nd ‘ 𝑃 ) , 𝐸 〉 −∘F 𝑓 ) ) ( ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) UP ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) ) 𝑥 ) ) |
| 11 |
10
|
reldmmpo |
⊢ Rel dom ( 𝑓 ∈ ( ( 1st ‘ 𝑃 ) Func ( 2nd ‘ 𝑃 ) ) , 𝑥 ∈ ( ( 1st ‘ 𝑃 ) Func 𝐸 ) ↦ ( ( oppFunc ‘ ( 〈 ( 2nd ‘ 𝑃 ) , 𝐸 〉 −∘F 𝑓 ) ) ( ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) UP ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) ) 𝑥 ) ) |
| 12 |
|
fvfundmfvn0 |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → ( 〈 𝑃 , 𝐸 〉 ∈ dom Ran ∧ Fun ( Ran ↾ { 〈 𝑃 , 𝐸 〉 } ) ) ) |
| 13 |
12
|
simpld |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → 〈 𝑃 , 𝐸 〉 ∈ dom Ran ) |
| 14 |
|
ranfn |
⊢ Ran Fn ( ( V × V ) × V ) |
| 15 |
14
|
fndmi |
⊢ dom Ran = ( ( V × V ) × V ) |
| 16 |
13 15
|
eleqtrdi |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → 〈 𝑃 , 𝐸 〉 ∈ ( ( V × V ) × V ) ) |
| 17 |
|
opelxp1 |
⊢ ( 〈 𝑃 , 𝐸 〉 ∈ ( ( V × V ) × V ) → 𝑃 ∈ ( V × V ) ) |
| 18 |
|
1st2nd2 |
⊢ ( 𝑃 ∈ ( V × V ) → 𝑃 = 〈 ( 1st ‘ 𝑃 ) , ( 2nd ‘ 𝑃 ) 〉 ) |
| 19 |
16 17 18
|
3syl |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → 𝑃 = 〈 ( 1st ‘ 𝑃 ) , ( 2nd ‘ 𝑃 ) 〉 ) |
| 20 |
19
|
oveq1d |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → ( 𝑃 Ran 𝐸 ) = ( 〈 ( 1st ‘ 𝑃 ) , ( 2nd ‘ 𝑃 ) 〉 Ran 𝐸 ) ) |
| 21 |
|
eqid |
⊢ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) = ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) |
| 22 |
|
eqid |
⊢ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) = ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) |
| 23 |
|
fvexd |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → ( 1st ‘ 𝑃 ) ∈ V ) |
| 24 |
|
fvexd |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → ( 2nd ‘ 𝑃 ) ∈ V ) |
| 25 |
|
opelxp2 |
⊢ ( 〈 𝑃 , 𝐸 〉 ∈ ( ( V × V ) × V ) → 𝐸 ∈ V ) |
| 26 |
16 25
|
syl |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → 𝐸 ∈ V ) |
| 27 |
|
eqid |
⊢ ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) = ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) |
| 28 |
|
eqid |
⊢ ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) = ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) |
| 29 |
21 22 23 24 26 27 28
|
ranfval |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → ( 〈 ( 1st ‘ 𝑃 ) , ( 2nd ‘ 𝑃 ) 〉 Ran 𝐸 ) = ( 𝑓 ∈ ( ( 1st ‘ 𝑃 ) Func ( 2nd ‘ 𝑃 ) ) , 𝑥 ∈ ( ( 1st ‘ 𝑃 ) Func 𝐸 ) ↦ ( ( oppFunc ‘ ( 〈 ( 2nd ‘ 𝑃 ) , 𝐸 〉 −∘F 𝑓 ) ) ( ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) UP ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) ) 𝑥 ) ) ) |
| 30 |
20 29
|
eqtrd |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → ( 𝑃 Ran 𝐸 ) = ( 𝑓 ∈ ( ( 1st ‘ 𝑃 ) Func ( 2nd ‘ 𝑃 ) ) , 𝑥 ∈ ( ( 1st ‘ 𝑃 ) Func 𝐸 ) ↦ ( ( oppFunc ‘ ( 〈 ( 2nd ‘ 𝑃 ) , 𝐸 〉 −∘F 𝑓 ) ) ( ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) UP ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) ) 𝑥 ) ) ) |
| 31 |
30
|
dmeqd |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → dom ( 𝑃 Ran 𝐸 ) = dom ( 𝑓 ∈ ( ( 1st ‘ 𝑃 ) Func ( 2nd ‘ 𝑃 ) ) , 𝑥 ∈ ( ( 1st ‘ 𝑃 ) Func 𝐸 ) ↦ ( ( oppFunc ‘ ( 〈 ( 2nd ‘ 𝑃 ) , 𝐸 〉 −∘F 𝑓 ) ) ( ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) UP ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) ) 𝑥 ) ) ) |
| 32 |
31
|
releqd |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → ( Rel dom ( 𝑃 Ran 𝐸 ) ↔ Rel dom ( 𝑓 ∈ ( ( 1st ‘ 𝑃 ) Func ( 2nd ‘ 𝑃 ) ) , 𝑥 ∈ ( ( 1st ‘ 𝑃 ) Func 𝐸 ) ↦ ( ( oppFunc ‘ ( 〈 ( 2nd ‘ 𝑃 ) , 𝐸 〉 −∘F 𝑓 ) ) ( ( oppCat ‘ ( ( 2nd ‘ 𝑃 ) FuncCat 𝐸 ) ) UP ( oppCat ‘ ( ( 1st ‘ 𝑃 ) FuncCat 𝐸 ) ) ) 𝑥 ) ) ) ) |
| 33 |
11 32
|
mpbiri |
⊢ ( ( Ran ‘ 〈 𝑃 , 𝐸 〉 ) ≠ ∅ → Rel dom ( 𝑃 Ran 𝐸 ) ) |
| 34 |
9 33
|
pm2.61ine |
⊢ Rel dom ( 𝑃 Ran 𝐸 ) |