Metamath Proof Explorer


Theorem nat1st2nd

Description: Rewrite the natural transformation predicate with separated functor parts. (Contributed by Mario Carneiro, 6-Jan-2017)

Ref Expression
Hypotheses natrcl.1 𝑁 = ( 𝐶 Nat 𝐷 )
nat1st2nd.2 ( 𝜑𝐴 ∈ ( 𝐹 𝑁 𝐺 ) )
Assertion nat1st2nd ( 𝜑𝐴 ∈ ( ⟨ ( 1st𝐹 ) , ( 2nd𝐹 ) ⟩ 𝑁 ⟨ ( 1st𝐺 ) , ( 2nd𝐺 ) ⟩ ) )

Proof

Step Hyp Ref Expression
1 natrcl.1 𝑁 = ( 𝐶 Nat 𝐷 )
2 nat1st2nd.2 ( 𝜑𝐴 ∈ ( 𝐹 𝑁 𝐺 ) )
3 relfunc Rel ( 𝐶 Func 𝐷 )
4 1 natrcl ( 𝐴 ∈ ( 𝐹 𝑁 𝐺 ) → ( 𝐹 ∈ ( 𝐶 Func 𝐷 ) ∧ 𝐺 ∈ ( 𝐶 Func 𝐷 ) ) )
5 2 4 syl ( 𝜑 → ( 𝐹 ∈ ( 𝐶 Func 𝐷 ) ∧ 𝐺 ∈ ( 𝐶 Func 𝐷 ) ) )
6 5 simpld ( 𝜑𝐹 ∈ ( 𝐶 Func 𝐷 ) )
7 1st2nd ( ( Rel ( 𝐶 Func 𝐷 ) ∧ 𝐹 ∈ ( 𝐶 Func 𝐷 ) ) → 𝐹 = ⟨ ( 1st𝐹 ) , ( 2nd𝐹 ) ⟩ )
8 3 6 7 sylancr ( 𝜑𝐹 = ⟨ ( 1st𝐹 ) , ( 2nd𝐹 ) ⟩ )
9 5 simprd ( 𝜑𝐺 ∈ ( 𝐶 Func 𝐷 ) )
10 1st2nd ( ( Rel ( 𝐶 Func 𝐷 ) ∧ 𝐺 ∈ ( 𝐶 Func 𝐷 ) ) → 𝐺 = ⟨ ( 1st𝐺 ) , ( 2nd𝐺 ) ⟩ )
11 3 9 10 sylancr ( 𝜑𝐺 = ⟨ ( 1st𝐺 ) , ( 2nd𝐺 ) ⟩ )
12 8 11 oveq12d ( 𝜑 → ( 𝐹 𝑁 𝐺 ) = ( ⟨ ( 1st𝐹 ) , ( 2nd𝐹 ) ⟩ 𝑁 ⟨ ( 1st𝐺 ) , ( 2nd𝐺 ) ⟩ ) )
13 2 12 eleqtrd ( 𝜑𝐴 ∈ ( ⟨ ( 1st𝐹 ) , ( 2nd𝐹 ) ⟩ 𝑁 ⟨ ( 1st𝐺 ) , ( 2nd𝐺 ) ⟩ ) )