Metamath Proof Explorer


Theorem cshf1o

Description: Condition for the cyclic shift to be a bijection. (Contributed by Thierry Arnoux, 4-Oct-2023)

Ref Expression
Assertion cshf1o WWordDW:domW1-1DNWcyclShiftN:domW1-1 ontoranW

Proof

Step Hyp Ref Expression
1 cshwrnid WWordDNranWcyclShiftN=ranW
2 1 3adant2 WWordDW:domW1-1DNranWcyclShiftN=ranW
3 wrddm WWordDdomW=0..^W
4 3 3ad2ant1 WWordDW:domW1-1DNdomW=0..^W
5 simp2 WWordDW:domW1-1DNW:domW1-1D
6 f1eq2 domW=0..^WW:domW1-1DW:0..^W1-1D
7 6 biimpa domW=0..^WW:domW1-1DW:0..^W1-1D
8 4 5 7 syl2anc WWordDW:domW1-1DNW:0..^W1-1D
9 simp3 WWordDW:domW1-1DNN
10 eqid WcyclShiftN=WcyclShiftN
11 cshf1 W:0..^W1-1DNWcyclShiftN=WcyclShiftNWcyclShiftN:0..^W1-1D
12 10 11 mp3an3 W:0..^W1-1DNWcyclShiftN:0..^W1-1D
13 8 9 12 syl2anc WWordDW:domW1-1DNWcyclShiftN:0..^W1-1D
14 f1eq2 domW=0..^WWcyclShiftN:domW1-1DWcyclShiftN:0..^W1-1D
15 14 biimpar domW=0..^WWcyclShiftN:0..^W1-1DWcyclShiftN:domW1-1D
16 4 13 15 syl2anc WWordDW:domW1-1DNWcyclShiftN:domW1-1D
17 f1f1orn WcyclShiftN:domW1-1DWcyclShiftN:domW1-1 ontoranWcyclShiftN
18 16 17 syl WWordDW:domW1-1DNWcyclShiftN:domW1-1 ontoranWcyclShiftN
19 f1oeq3 ranWcyclShiftN=ranWWcyclShiftN:domW1-1 ontoranWcyclShiftNWcyclShiftN:domW1-1 ontoranW
20 19 biimpa ranWcyclShiftN=ranWWcyclShiftN:domW1-1 ontoranWcyclShiftNWcyclShiftN:domW1-1 ontoranW
21 2 18 20 syl2anc WWordDW:domW1-1DNWcyclShiftN:domW1-1 ontoranW