Metamath Proof Explorer


Theorem mvhf1

Description: The function mapping variables to variable expressions is one-to-one. (Contributed by Mario Carneiro, 18-Jul-2016)

Ref Expression
Hypotheses mvhf.v 𝑉 = ( mVR ‘ 𝑇 )
mvhf.e 𝐸 = ( mEx ‘ 𝑇 )
mvhf.h 𝐻 = ( mVH ‘ 𝑇 )
Assertion mvhf1 ( 𝑇 ∈ mFS → 𝐻 : 𝑉1-1𝐸 )

Proof

Step Hyp Ref Expression
1 mvhf.v 𝑉 = ( mVR ‘ 𝑇 )
2 mvhf.e 𝐸 = ( mEx ‘ 𝑇 )
3 mvhf.h 𝐻 = ( mVH ‘ 𝑇 )
4 1 2 3 mvhf ( 𝑇 ∈ mFS → 𝐻 : 𝑉𝐸 )
5 eqid ( mType ‘ 𝑇 ) = ( mType ‘ 𝑇 )
6 1 5 3 mvhval ( 𝑣𝑉 → ( 𝐻𝑣 ) = ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑣 ) , ⟨“ 𝑣 ”⟩ ⟩ )
7 1 5 3 mvhval ( 𝑤𝑉 → ( 𝐻𝑤 ) = ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑤 ) , ⟨“ 𝑤 ”⟩ ⟩ )
8 6 7 eqeqan12d ( ( 𝑣𝑉𝑤𝑉 ) → ( ( 𝐻𝑣 ) = ( 𝐻𝑤 ) ↔ ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑣 ) , ⟨“ 𝑣 ”⟩ ⟩ = ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑤 ) , ⟨“ 𝑤 ”⟩ ⟩ ) )
9 8 adantl ( ( 𝑇 ∈ mFS ∧ ( 𝑣𝑉𝑤𝑉 ) ) → ( ( 𝐻𝑣 ) = ( 𝐻𝑤 ) ↔ ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑣 ) , ⟨“ 𝑣 ”⟩ ⟩ = ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑤 ) , ⟨“ 𝑤 ”⟩ ⟩ ) )
10 fvex ( ( mType ‘ 𝑇 ) ‘ 𝑣 ) ∈ V
11 s1cli ⟨“ 𝑣 ”⟩ ∈ Word V
12 11 elexi ⟨“ 𝑣 ”⟩ ∈ V
13 10 12 opth ( ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑣 ) , ⟨“ 𝑣 ”⟩ ⟩ = ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑤 ) , ⟨“ 𝑤 ”⟩ ⟩ ↔ ( ( ( mType ‘ 𝑇 ) ‘ 𝑣 ) = ( ( mType ‘ 𝑇 ) ‘ 𝑤 ) ∧ ⟨“ 𝑣 ”⟩ = ⟨“ 𝑤 ”⟩ ) )
14 13 simprbi ( ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑣 ) , ⟨“ 𝑣 ”⟩ ⟩ = ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑤 ) , ⟨“ 𝑤 ”⟩ ⟩ → ⟨“ 𝑣 ”⟩ = ⟨“ 𝑤 ”⟩ )
15 s111 ( ( 𝑣𝑉𝑤𝑉 ) → ( ⟨“ 𝑣 ”⟩ = ⟨“ 𝑤 ”⟩ ↔ 𝑣 = 𝑤 ) )
16 15 adantl ( ( 𝑇 ∈ mFS ∧ ( 𝑣𝑉𝑤𝑉 ) ) → ( ⟨“ 𝑣 ”⟩ = ⟨“ 𝑤 ”⟩ ↔ 𝑣 = 𝑤 ) )
17 14 16 syl5ib ( ( 𝑇 ∈ mFS ∧ ( 𝑣𝑉𝑤𝑉 ) ) → ( ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑣 ) , ⟨“ 𝑣 ”⟩ ⟩ = ⟨ ( ( mType ‘ 𝑇 ) ‘ 𝑤 ) , ⟨“ 𝑤 ”⟩ ⟩ → 𝑣 = 𝑤 ) )
18 9 17 sylbid ( ( 𝑇 ∈ mFS ∧ ( 𝑣𝑉𝑤𝑉 ) ) → ( ( 𝐻𝑣 ) = ( 𝐻𝑤 ) → 𝑣 = 𝑤 ) )
19 18 ralrimivva ( 𝑇 ∈ mFS → ∀ 𝑣𝑉𝑤𝑉 ( ( 𝐻𝑣 ) = ( 𝐻𝑤 ) → 𝑣 = 𝑤 ) )
20 dff13 ( 𝐻 : 𝑉1-1𝐸 ↔ ( 𝐻 : 𝑉𝐸 ∧ ∀ 𝑣𝑉𝑤𝑉 ( ( 𝐻𝑣 ) = ( 𝐻𝑤 ) → 𝑣 = 𝑤 ) ) )
21 4 19 20 sylanbrc ( 𝑇 ∈ mFS → 𝐻 : 𝑉1-1𝐸 )