Metamath Proof Explorer


Theorem reldmprcof2

Description: The domain of the morphism part of the pre-composition functor is a relation. (Contributed by Zhi Wang, 2-Nov-2025)

Ref Expression
Assertion reldmprcof2 Rel dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) )

Proof

Step Hyp Ref Expression
1 eqid ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) ) = ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) )
2 1 reldmmpo Rel dom ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) )
3 eqid ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) = ( ( 1st𝑃 ) Func ( 2nd𝑃 ) )
4 eqid ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) = ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) )
5 simpr ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → 𝐹 ∈ V )
6 simpl ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → 𝑃 ∈ V )
7 eqidd ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( 1st𝑃 ) = ( 1st𝑃 ) )
8 eqidd ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( 2nd𝑃 ) = ( 2nd𝑃 ) )
9 3 4 5 6 7 8 prcofvalg ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( 𝑃 −∘F 𝐹 ) = ⟨ ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑘func 𝐹 ) ) , ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) ) ⟩ )
10 ovex ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ∈ V
11 10 mptex ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑘func 𝐹 ) ) ∈ V
12 10 10 mpoex ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) ) ∈ V
13 11 12 op2ndd ( ( 𝑃 −∘F 𝐹 ) = ⟨ ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑘func 𝐹 ) ) , ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) ) ⟩ → ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) = ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) ) )
14 9 13 syl ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) = ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) ) )
15 14 dmeqd ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) = dom ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) ) )
16 15 releqd ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( Rel dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) ↔ Rel dom ( 𝑘 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) , 𝑙 ∈ ( ( 1st𝑃 ) Func ( 2nd𝑃 ) ) ↦ ( 𝑎 ∈ ( 𝑘 ( ( 1st𝑃 ) Nat ( 2nd𝑃 ) ) 𝑙 ) ↦ ( 𝑎 ∘ ( 1st𝐹 ) ) ) ) ) )
17 2 16 mpbiri ( ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → Rel dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) )
18 rel0 Rel ∅
19 reldmprcof Rel dom −∘F
20 19 ovprc ( ¬ ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( 𝑃 −∘F 𝐹 ) = ∅ )
21 20 fveq2d ( ¬ ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) = ( 2nd ‘ ∅ ) )
22 2nd0 ( 2nd ‘ ∅ ) = ∅
23 21 22 eqtrdi ( ¬ ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) = ∅ )
24 23 dmeqd ( ¬ ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) = dom ∅ )
25 dm0 dom ∅ = ∅
26 24 25 eqtrdi ( ¬ ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) = ∅ )
27 26 releqd ( ¬ ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → ( Rel dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) ↔ Rel ∅ ) )
28 18 27 mpbiri ( ¬ ( 𝑃 ∈ V ∧ 𝐹 ∈ V ) → Rel dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) ) )
29 17 28 pm2.61i Rel dom ( 2nd ‘ ( 𝑃 −∘F 𝐹 ) )