Metamath Proof Explorer


Theorem crctcshlem4

Description: Lemma for crctcsh . (Contributed by AV, 10-Mar-2021)

Ref Expression
Hypotheses crctcsh.v V=VtxG
crctcsh.i I=iEdgG
crctcsh.d φFCircuitsGP
crctcsh.n N=F
crctcsh.s φS0..^N
crctcsh.h H=FcyclShiftS
crctcsh.q Q=x0NifxNSPx+SPx+S-N
Assertion crctcshlem4 φS=0H=FQ=P

Proof

Step Hyp Ref Expression
1 crctcsh.v V=VtxG
2 crctcsh.i I=iEdgG
3 crctcsh.d φFCircuitsGP
4 crctcsh.n N=F
5 crctcsh.s φS0..^N
6 crctcsh.h H=FcyclShiftS
7 crctcsh.q Q=x0NifxNSPx+SPx+S-N
8 oveq2 S=0FcyclShiftS=FcyclShift0
9 crctiswlk FCircuitsGPFWalksGP
10 2 wlkf FWalksGPFWorddomI
11 3 9 10 3syl φFWorddomI
12 cshw0 FWorddomIFcyclShift0=F
13 11 12 syl φFcyclShift0=F
14 8 13 sylan9eqr φS=0FcyclShiftS=F
15 6 14 eqtrid φS=0H=F
16 oveq2 S=0NS=N0
17 1 2 3 4 crctcshlem1 φN0
18 17 nn0cnd φN
19 18 subid1d φN0=N
20 16 19 sylan9eqr φS=0NS=N
21 20 breq2d φS=0xNSxN
22 21 adantr φS=0x0NxNSxN
23 oveq2 S=0x+S=x+0
24 23 adantl φS=0x+S=x+0
25 elfzelz x0Nx
26 25 zcnd x0Nx
27 26 addridd x0Nx+0=x
28 24 27 sylan9eq φS=0x0Nx+S=x
29 28 fveq2d φS=0x0NPx+S=Px
30 28 fvoveq1d φS=0x0NPx+S-N=PxN
31 22 29 30 ifbieq12d φS=0x0NifxNSPx+SPx+S-N=ifxNPxPxN
32 31 mpteq2dva φS=0x0NifxNSPx+SPx+S-N=x0NifxNPxPxN
33 elfzle2 x0NxN
34 33 adantl φx0NxN
35 34 iftrued φx0NifxNPxPxN=Px
36 35 mpteq2dva φx0NifxNPxPxN=x0NPx
37 1 wlkp FWalksGPP:0FV
38 3 9 37 3syl φP:0FV
39 ffn P:0FVPFn0F
40 4 eqcomi F=N
41 40 oveq2i 0F=0N
42 41 fneq2i PFn0FPFn0N
43 39 42 sylib P:0FVPFn0N
44 43 adantl φP:0FVPFn0N
45 dffn5 PFn0NP=x0NPx
46 44 45 sylib φP:0FVP=x0NPx
47 46 eqcomd φP:0FVx0NPx=P
48 38 47 mpdan φx0NPx=P
49 36 48 eqtrd φx0NifxNPxPxN=P
50 49 adantr φS=0x0NifxNPxPxN=P
51 32 50 eqtrd φS=0x0NifxNSPx+SPx+S-N=P
52 7 51 eqtrid φS=0Q=P
53 15 52 jca φS=0H=FQ=P