Metamath Proof Explorer


Theorem invf

Description: The inverse relation is a function from isomorphisms to isomorphisms. (Contributed by Mario Carneiro, 2-Jan-2017)

Ref Expression
Hypotheses invfval.b ⊢ 𝐵 = ( Base ‘ 𝐶 )
invfval.n ⊢ 𝑁 = ( Inv ‘ 𝐶 )
invfval.c ⊢ ( 𝜑 → 𝐶 ∈ Cat )
invss.x ⊢ ( 𝜑 → 𝑋 ∈ 𝐵 )
invss.y ⊢ ( 𝜑 → 𝑌 ∈ 𝐵 )
isoval.n ⊢ 𝐼 = ( Iso ‘ 𝐶 )
Assertion invf ( 𝜑 → ( 𝑋 𝑁 𝑌 ) : ( 𝑋 𝐼 𝑌 ) ⟶ ( 𝑌 𝐼 𝑋 ) )

Proof

Step Hyp Ref Expression
1 invfval.b ⊢ 𝐵 = ( Base ‘ 𝐶 )
2 invfval.n ⊢ 𝑁 = ( Inv ‘ 𝐶 )
3 invfval.c ⊢ ( 𝜑 → 𝐶 ∈ Cat )
4 invss.x ⊢ ( 𝜑 → 𝑋 ∈ 𝐵 )
5 invss.y ⊢ ( 𝜑 → 𝑌 ∈ 𝐵 )
6 isoval.n ⊢ 𝐼 = ( Iso ‘ 𝐶 )
7 1 2 3 4 5 invfun ⊢ ( 𝜑 → Fun ( 𝑋 𝑁 𝑌 ) )
8 7 funfnd ⊢ ( 𝜑 → ( 𝑋 𝑁 𝑌 ) Fn dom ( 𝑋 𝑁 𝑌 ) )
9 1 2 3 4 5 6 isoval ⊢ ( 𝜑 → ( 𝑋 𝐼 𝑌 ) = dom ( 𝑋 𝑁 𝑌 ) )
10 9 fneq2d ⊢ ( 𝜑 → ( ( 𝑋 𝑁 𝑌 ) Fn ( 𝑋 𝐼 𝑌 ) ↔ ( 𝑋 𝑁 𝑌 ) Fn dom ( 𝑋 𝑁 𝑌 ) ) )
11 8 10 mpbird ⊢ ( 𝜑 → ( 𝑋 𝑁 𝑌 ) Fn ( 𝑋 𝐼 𝑌 ) )
12 df-rn ⊢ ran ( 𝑋 𝑁 𝑌 ) = dom ◡ ( 𝑋 𝑁 𝑌 )
13 1 2 3 4 5 invsym2 ⊢ ( 𝜑 → ◡ ( 𝑋 𝑁 𝑌 ) = ( 𝑌 𝑁 𝑋 ) )
14 13 dmeqd ⊢ ( 𝜑 → dom ◡ ( 𝑋 𝑁 𝑌 ) = dom ( 𝑌 𝑁 𝑋 ) )
15 1 2 3 5 4 6 isoval ⊢ ( 𝜑 → ( 𝑌 𝐼 𝑋 ) = dom ( 𝑌 𝑁 𝑋 ) )
16 14 15 eqtr4d ⊢ ( 𝜑 → dom ◡ ( 𝑋 𝑁 𝑌 ) = ( 𝑌 𝐼 𝑋 ) )
17 12 16 eqtrid ⊢ ( 𝜑 → ran ( 𝑋 𝑁 𝑌 ) = ( 𝑌 𝐼 𝑋 ) )
18 eqimss ⊢ ( ran ( 𝑋 𝑁 𝑌 ) = ( 𝑌 𝐼 𝑋 ) → ran ( 𝑋 𝑁 𝑌 ) ⊆ ( 𝑌 𝐼 𝑋 ) )
19 17 18 syl ⊢ ( 𝜑 → ran ( 𝑋 𝑁 𝑌 ) ⊆ ( 𝑌 𝐼 𝑋 ) )
20 df-f ⊢ ( ( 𝑋 𝑁 𝑌 ) : ( 𝑋 𝐼 𝑌 ) ⟶ ( 𝑌 𝐼 𝑋 ) ↔ ( ( 𝑋 𝑁 𝑌 ) Fn ( 𝑋 𝐼 𝑌 ) ∧ ran ( 𝑋 𝑁 𝑌 ) ⊆ ( 𝑌 𝐼 𝑋 ) ) )
21 11 19 20 sylanbrc ⊢ ( 𝜑 → ( 𝑋 𝑁 𝑌 ) : ( 𝑋 𝐼 𝑌 ) ⟶ ( 𝑌 𝐼 𝑋 ) )