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 )
invfval.x ( 𝜑𝑋𝐵 )
invfval.y ( 𝜑𝑌𝐵 )
isoval.n 𝐼 = ( Iso ‘ 𝐶 )
Assertion invf ( 𝜑 → ( 𝑋 𝑁 𝑌 ) : ( 𝑋 𝐼 𝑌 ) ⟶ ( 𝑌 𝐼 𝑋 ) )

Proof

Step Hyp Ref Expression
1 invfval.b 𝐵 = ( Base ‘ 𝐶 )
2 invfval.n 𝑁 = ( Inv ‘ 𝐶 )
3 invfval.c ( 𝜑𝐶 ∈ Cat )
4 invfval.x ( 𝜑𝑋𝐵 )
5 invfval.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 ( 𝜑 → ( 𝑋 𝑁 𝑌 ) : ( 𝑋 𝐼 𝑌 ) ⟶ ( 𝑌 𝐼 𝑋 ) )