Metamath Proof Explorer


Theorem s3f1

Description: Conditions for a length 3 string to be a one-to-one function. (Contributed by Thierry Arnoux, 19-Sep-2023)

Ref Expression
Hypotheses s3f1.i φID
s3f1.j φJD
s3f1.k φKD
s3f1.1 φIJ
s3f1.2 φJK
s3f1.3 φKI
Assertion s3f1 φ⟨“IJK”⟩:dom⟨“IJK”⟩1-1D

Proof

Step Hyp Ref Expression
1 s3f1.i φID
2 s3f1.j φJD
3 s3f1.k φKD
4 s3f1.1 φIJ
5 s3f1.2 φJK
6 s3f1.3 φKI
7 1 2 3 s3cld φ⟨“IJK”⟩WordD
8 wrdf ⟨“IJK”⟩WordD⟨“IJK”⟩:0..^⟨“IJK”⟩D
9 7 8 syl φ⟨“IJK”⟩:0..^⟨“IJK”⟩D
10 9 ffdmd φ⟨“IJK”⟩:dom⟨“IJK”⟩D
11 simplr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=0i=0
12 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=0j=0
13 11 12 eqtr4d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=0i=j
14 simpllr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=1⟨“IJK”⟩i=⟨“IJK”⟩j
15 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0i=0
16 15 fveq2d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0⟨“IJK”⟩i=⟨“IJK”⟩0
17 s3fv0 ID⟨“IJK”⟩0=I
18 1 17 syl φ⟨“IJK”⟩0=I
19 18 ad4antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0⟨“IJK”⟩0=I
20 16 19 eqtrd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0⟨“IJK”⟩i=I
21 20 adantr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=1⟨“IJK”⟩i=I
22 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=1j=1
23 22 fveq2d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=1⟨“IJK”⟩j=⟨“IJK”⟩1
24 s3fv1 JD⟨“IJK”⟩1=J
25 2 24 syl φ⟨“IJK”⟩1=J
26 25 ad4antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=1⟨“IJK”⟩1=J
27 23 26 eqtrd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=1⟨“IJK”⟩j=J
28 27 adantlr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=1⟨“IJK”⟩j=J
29 14 21 28 3eqtr3d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=1I=J
30 4 ad5antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=1IJ
31 29 30 pm2.21ddne φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=1i=j
32 simpllr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=2⟨“IJK”⟩i=⟨“IJK”⟩j
33 20 adantr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=2⟨“IJK”⟩i=I
34 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=2j=2
35 34 fveq2d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=2⟨“IJK”⟩j=⟨“IJK”⟩2
36 s3fv2 KD⟨“IJK”⟩2=K
37 3 36 syl φ⟨“IJK”⟩2=K
38 37 ad4antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=2⟨“IJK”⟩2=K
39 35 38 eqtrd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=2⟨“IJK”⟩j=K
40 39 adantlr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=2⟨“IJK”⟩j=K
41 32 33 40 3eqtr3rd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=2K=I
42 6 ad5antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=2KI
43 41 42 pm2.21ddne φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=2i=j
44 wrddm ⟨“IJK”⟩WordDdom⟨“IJK”⟩=0..^⟨“IJK”⟩
45 7 44 syl φdom⟨“IJK”⟩=0..^⟨“IJK”⟩
46 s3len ⟨“IJK”⟩=3
47 46 oveq2i 0..^⟨“IJK”⟩=0..^3
48 fzo0to3tp 0..^3=012
49 47 48 eqtri 0..^⟨“IJK”⟩=012
50 45 49 eqtrdi φdom⟨“IJK”⟩=012
51 50 eleq2d φjdom⟨“IJK”⟩j012
52 51 biimpa φjdom⟨“IJK”⟩j012
53 vex jV
54 53 eltp j012j=0j=1j=2
55 52 54 sylib φjdom⟨“IJK”⟩j=0j=1j=2
56 55 adantlr φidom⟨“IJK”⟩jdom⟨“IJK”⟩j=0j=1j=2
57 56 ad2antrr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0j=0j=1j=2
58 13 31 43 57 mpjao3dan φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0i=j
59 simpllr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=0⟨“IJK”⟩i=⟨“IJK”⟩j
60 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1i=1
61 60 fveq2d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1⟨“IJK”⟩i=⟨“IJK”⟩1
62 25 ad4antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1⟨“IJK”⟩1=J
63 61 62 eqtrd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1⟨“IJK”⟩i=J
64 63 adantr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=0⟨“IJK”⟩i=J
65 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=0j=0
66 65 fveq2d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=0⟨“IJK”⟩j=⟨“IJK”⟩0
67 18 ad4antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=0⟨“IJK”⟩0=I
68 66 67 eqtrd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩jj=0⟨“IJK”⟩j=I
69 68 adantlr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=0⟨“IJK”⟩j=I
70 59 64 69 3eqtr3rd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=0I=J
71 4 ad5antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=0IJ
72 70 71 pm2.21ddne φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=0i=j
73 simplr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=1i=1
74 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=1j=1
75 73 74 eqtr4d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=1i=j
76 simpllr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=2⟨“IJK”⟩i=⟨“IJK”⟩j
77 63 adantr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=2⟨“IJK”⟩i=J
78 39 adantlr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=2⟨“IJK”⟩j=K
79 76 77 78 3eqtr3d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=2J=K
80 5 ad5antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=2JK
81 79 80 pm2.21ddne φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=2i=j
82 56 ad2antrr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1j=0j=1j=2
83 72 75 81 82 mpjao3dan φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=1i=j
84 simpllr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=0⟨“IJK”⟩i=⟨“IJK”⟩j
85 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2i=2
86 85 fveq2d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2⟨“IJK”⟩i=⟨“IJK”⟩2
87 37 ad4antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2⟨“IJK”⟩2=K
88 86 87 eqtrd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2⟨“IJK”⟩i=K
89 88 adantr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=0⟨“IJK”⟩i=K
90 68 adantlr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=0⟨“IJK”⟩j=I
91 84 89 90 3eqtr3d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=0K=I
92 6 ad5antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=0KI
93 91 92 pm2.21ddne φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=0i=j
94 simpllr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=1⟨“IJK”⟩i=⟨“IJK”⟩j
95 88 adantr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=1⟨“IJK”⟩i=K
96 27 adantlr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=1⟨“IJK”⟩j=J
97 94 95 96 3eqtr3rd φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=1J=K
98 5 ad5antr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=1JK
99 97 98 pm2.21ddne φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=1i=j
100 simplr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=2i=2
101 simpr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=2j=2
102 100 101 eqtr4d φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=2i=j
103 56 ad2antrr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2j=0j=1j=2
104 93 99 102 103 mpjao3dan φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=2i=j
105 50 eleq2d φidom⟨“IJK”⟩i012
106 105 biimpa φidom⟨“IJK”⟩i012
107 vex iV
108 107 eltp i012i=0i=1i=2
109 106 108 sylib φidom⟨“IJK”⟩i=0i=1i=2
110 109 ad2antrr φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=0i=1i=2
111 58 83 104 110 mpjao3dan φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=j
112 111 ex φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=j
113 112 anasss φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=j
114 113 ralrimivva φidom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=j
115 dff13 ⟨“IJK”⟩:dom⟨“IJK”⟩1-1D⟨“IJK”⟩:dom⟨“IJK”⟩Didom⟨“IJK”⟩jdom⟨“IJK”⟩⟨“IJK”⟩i=⟨“IJK”⟩ji=j
116 10 114 115 sylanbrc φ⟨“IJK”⟩:dom⟨“IJK”⟩1-1D