Metamath Proof Explorer


Theorem msubff1

Description: When restricted to complete mappings, the substitution-producing function is one-to-one. (Contributed by Mario Carneiro, 18-Jul-2016)

Ref Expression
Hypotheses msubff1.v ⊢ V = mVR ⁡ T
msubff1.r ⊢ R = mREx ⁡ T
msubff1.s ⊢ S = mSubst ⁡ T
msubff1.e ⊢ E = mEx ⁡ T
Assertion msubff1 ⊢ T ∈ mFS → S ↾ R V : R V ⟶ 1-1 E E

Proof

Step Hyp Ref Expression
1 msubff1.v ⊢ V = mVR ⁡ T
2 msubff1.r ⊢ R = mREx ⁡ T
3 msubff1.s ⊢ S = mSubst ⁡ T
4 msubff1.e ⊢ E = mEx ⁡ T
5 1 2 3 4 msubff ⊢ T ∈ mFS → S : R ↑ 𝑝𝑚 V ⟶ E E
6 mapsspm ⊢ R V ⊆ R ↑ 𝑝𝑚 V
7 6 a1i ⊢ T ∈ mFS → R V ⊆ R ↑ 𝑝𝑚 V
8 5 7 fssresd ⊢ T ∈ mFS → S ↾ R V : R V ⟶ E E
9 eqid ⊢ mRSubst ⁡ T = mRSubst ⁡ T
10 1 2 9 mrsubff ⊢ T ∈ mFS → mRSubst ⁡ T : R ↑ 𝑝𝑚 V ⟶ R R
11 10 ad2antrr ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → mRSubst ⁡ T : R ↑ 𝑝𝑚 V ⟶ R R
12 simplrl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → f ∈ R V
13 6 12 sselid ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → f ∈ R ↑ 𝑝𝑚 V
14 11 13 ffvelcdmd ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → mRSubst ⁡ T ⁡ f ∈ R R
15 elmapi ⊢ mRSubst ⁡ T ⁡ f ∈ R R → mRSubst ⁡ T ⁡ f : R ⟶ R
16 ffn ⊢ mRSubst ⁡ T ⁡ f : R ⟶ R → mRSubst ⁡ T ⁡ f Fn R
17 14 15 16 3syl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → mRSubst ⁡ T ⁡ f Fn R
18 simplrr ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → g ∈ R V
19 6 18 sselid ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → g ∈ R ↑ 𝑝𝑚 V
20 11 19 ffvelcdmd ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → mRSubst ⁡ T ⁡ g ∈ R R
21 elmapi ⊢ mRSubst ⁡ T ⁡ g ∈ R R → mRSubst ⁡ T ⁡ g : R ⟶ R
22 ffn ⊢ mRSubst ⁡ T ⁡ g : R ⟶ R → mRSubst ⁡ T ⁡ g Fn R
23 20 21 22 3syl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → mRSubst ⁡ T ⁡ g Fn R
24 simplrr ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → S ⁡ f = S ⁡ g
25 24 fveq1d ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → S ⁡ f ⁡ mType ⁡ T ⁡ v r = S ⁡ g ⁡ mType ⁡ T ⁡ v r
26 12 adantr ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → f ∈ R V
27 elmapi ⊢ f ∈ R V → f : V ⟶ R
28 26 27 syl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → f : V ⟶ R
29 ssidd ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → V ⊆ V
30 eqid ⊢ mTC ⁡ T = mTC ⁡ T
31 eqid ⊢ mType ⁡ T = mType ⁡ T
32 1 30 31 mtyf2 ⊢ T ∈ mFS → mType ⁡ T : V ⟶ mTC ⁡ T
33 32 ad3antrrr ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → mType ⁡ T : V ⟶ mTC ⁡ T
34 simplrl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → v ∈ V
35 33 34 ffvelcdmd ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → mType ⁡ T ⁡ v ∈ mTC ⁡ T
36 opelxpi ⊢ mType ⁡ T ⁡ v ∈ mTC ⁡ T ∧ r ∈ R → mType ⁡ T ⁡ v r ∈ mTC ⁡ T × R
37 35 36 sylancom ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → mType ⁡ T ⁡ v r ∈ mTC ⁡ T × R
38 30 4 2 mexval ⊢ E = mTC ⁡ T × R
39 37 38 eleqtrrdi ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → mType ⁡ T ⁡ v r ∈ E
40 1 2 3 4 9 msubval ⊢ f : V ⟶ R ∧ V ⊆ V ∧ mType ⁡ T ⁡ v r ∈ E → S ⁡ f ⁡ mType ⁡ T ⁡ v r = 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r
41 28 29 39 40 syl3anc ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → S ⁡ f ⁡ mType ⁡ T ⁡ v r = 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r
42 18 adantr ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → g ∈ R V
43 elmapi ⊢ g ∈ R V → g : V ⟶ R
44 42 43 syl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → g : V ⟶ R
45 1 2 3 4 9 msubval ⊢ g : V ⟶ R ∧ V ⊆ V ∧ mType ⁡ T ⁡ v r ∈ E → S ⁡ g ⁡ mType ⁡ T ⁡ v r = 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r
46 44 29 39 45 syl3anc ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → S ⁡ g ⁡ mType ⁡ T ⁡ v r = 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r
47 25 41 46 3eqtr3d ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r = 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r
48 fvex ⊢ 1 st ⁡ mType ⁡ T ⁡ v r ∈ V
49 fvex ⊢ mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r ∈ V
50 48 49 opth ⊢ 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r = 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r ↔ 1 st ⁡ mType ⁡ T ⁡ v r = 1 st ⁡ mType ⁡ T ⁡ v r ∧ mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r = mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r
51 50 simprbi ⊢ 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r = 1 st ⁡ mType ⁡ T ⁡ v r mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r → mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r = mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r
52 47 51 syl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r = mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r
53 fvex ⊢ mType ⁡ T ⁡ v ∈ V
54 vex ⊢ r ∈ V
55 53 54 op2nd ⊢ 2 nd ⁡ mType ⁡ T ⁡ v r = r
56 55 fveq2i ⊢ mRSubst ⁡ T ⁡ f ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r = mRSubst ⁡ T ⁡ f ⁡ r
57 55 fveq2i ⊢ mRSubst ⁡ T ⁡ g ⁡ 2 nd ⁡ mType ⁡ T ⁡ v r = mRSubst ⁡ T ⁡ g ⁡ r
58 52 56 57 3eqtr3g ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g ∧ r ∈ R → mRSubst ⁡ T ⁡ f ⁡ r = mRSubst ⁡ T ⁡ g ⁡ r
59 17 23 58 eqfnfvd ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → mRSubst ⁡ T ⁡ f = mRSubst ⁡ T ⁡ g
60 1 2 9 mrsubff1 ⊢ T ∈ mFS → mRSubst ⁡ T ↾ R V : R V ⟶ 1-1 R R
61 f1fveq ⊢ mRSubst ⁡ T ↾ R V : R V ⟶ 1-1 R R ∧ f ∈ R V ∧ g ∈ R V → mRSubst ⁡ T ↾ R V ⁡ f = mRSubst ⁡ T ↾ R V ⁡ g ↔ f = g
62 60 61 sylan ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V → mRSubst ⁡ T ↾ R V ⁡ f = mRSubst ⁡ T ↾ R V ⁡ g ↔ f = g
63 fvres ⊢ f ∈ R V → mRSubst ⁡ T ↾ R V ⁡ f = mRSubst ⁡ T ⁡ f
64 fvres ⊢ g ∈ R V → mRSubst ⁡ T ↾ R V ⁡ g = mRSubst ⁡ T ⁡ g
65 63 64 eqeqan12d ⊢ f ∈ R V ∧ g ∈ R V → mRSubst ⁡ T ↾ R V ⁡ f = mRSubst ⁡ T ↾ R V ⁡ g ↔ mRSubst ⁡ T ⁡ f = mRSubst ⁡ T ⁡ g
66 65 adantl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V → mRSubst ⁡ T ↾ R V ⁡ f = mRSubst ⁡ T ↾ R V ⁡ g ↔ mRSubst ⁡ T ⁡ f = mRSubst ⁡ T ⁡ g
67 62 66 bitr3d ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V → f = g ↔ mRSubst ⁡ T ⁡ f = mRSubst ⁡ T ⁡ g
68 67 adantr ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → f = g ↔ mRSubst ⁡ T ⁡ f = mRSubst ⁡ T ⁡ g
69 59 68 mpbird ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → f = g
70 69 fveq1d ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V ∧ S ⁡ f = S ⁡ g → f ⁡ v = g ⁡ v
71 70 expr ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V ∧ v ∈ V → S ⁡ f = S ⁡ g → f ⁡ v = g ⁡ v
72 71 ralrimdva ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V → S ⁡ f = S ⁡ g → ∀ v ∈ V f ⁡ v = g ⁡ v
73 fvres ⊢ f ∈ R V → S ↾ R V ⁡ f = S ⁡ f
74 fvres ⊢ g ∈ R V → S ↾ R V ⁡ g = S ⁡ g
75 73 74 eqeqan12d ⊢ f ∈ R V ∧ g ∈ R V → S ↾ R V ⁡ f = S ↾ R V ⁡ g ↔ S ⁡ f = S ⁡ g
76 75 adantl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V → S ↾ R V ⁡ f = S ↾ R V ⁡ g ↔ S ⁡ f = S ⁡ g
77 ffn ⊢ f : V ⟶ R → f Fn V
78 ffn ⊢ g : V ⟶ R → g Fn V
79 eqfnfv ⊢ f Fn V ∧ g Fn V → f = g ↔ ∀ v ∈ V f ⁡ v = g ⁡ v
80 77 78 79 syl2an ⊢ f : V ⟶ R ∧ g : V ⟶ R → f = g ↔ ∀ v ∈ V f ⁡ v = g ⁡ v
81 27 43 80 syl2an ⊢ f ∈ R V ∧ g ∈ R V → f = g ↔ ∀ v ∈ V f ⁡ v = g ⁡ v
82 81 adantl ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V → f = g ↔ ∀ v ∈ V f ⁡ v = g ⁡ v
83 72 76 82 3imtr4d ⊢ T ∈ mFS ∧ f ∈ R V ∧ g ∈ R V → S ↾ R V ⁡ f = S ↾ R V ⁡ g → f = g
84 83 ralrimivva ⊢ T ∈ mFS → ∀ f ∈ R V ∀ g ∈ R V S ↾ R V ⁡ f = S ↾ R V ⁡ g → f = g
85 dff13 ⊢ S ↾ R V : R V ⟶ 1-1 E E ↔ S ↾ R V : R V ⟶ E E ∧ ∀ f ∈ R V ∀ g ∈ R V S ↾ R V ⁡ f = S ↾ R V ⁡ g → f = g
86 8 84 85 sylanbrc ⊢ T ∈ mFS → S ↾ R V : R V ⟶ 1-1 E E