| Step | Hyp | Ref | Expression | 
						
							| 1 |  | lgsdchr.g |  |-  G = ( DChr ` N ) | 
						
							| 2 |  | lgsdchr.z |  |-  Z = ( Z/nZ ` N ) | 
						
							| 3 |  | lgsdchr.d |  |-  D = ( Base ` G ) | 
						
							| 4 |  | lgsdchr.b |  |-  B = ( Base ` Z ) | 
						
							| 5 |  | lgsdchr.l |  |-  L = ( ZRHom ` Z ) | 
						
							| 6 |  | lgsdchr.x |  |-  X = ( y e. B |-> ( iota h E. m e. ZZ ( y = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 7 |  | nnnn0 |  |-  ( N e. NN -> N e. NN0 ) | 
						
							| 8 | 7 | adantr |  |-  ( ( N e. NN /\ -. 2 || N ) -> N e. NN0 ) | 
						
							| 9 | 2 4 5 | znzrhfo |  |-  ( N e. NN0 -> L : ZZ -onto-> B ) | 
						
							| 10 |  | fof |  |-  ( L : ZZ -onto-> B -> L : ZZ --> B ) | 
						
							| 11 | 8 9 10 | 3syl |  |-  ( ( N e. NN /\ -. 2 || N ) -> L : ZZ --> B ) | 
						
							| 12 | 11 | ffvelcdmda |  |-  ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) -> ( L ` A ) e. B ) | 
						
							| 13 |  | eqeq1 |  |-  ( y = ( L ` A ) -> ( y = ( L ` m ) <-> ( L ` A ) = ( L ` m ) ) ) | 
						
							| 14 | 13 | anbi1d |  |-  ( y = ( L ` A ) -> ( ( y = ( L ` m ) /\ h = ( m /L N ) ) <-> ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 15 | 14 | rexbidv |  |-  ( y = ( L ` A ) -> ( E. m e. ZZ ( y = ( L ` m ) /\ h = ( m /L N ) ) <-> E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 16 | 15 | iotabidv |  |-  ( y = ( L ` A ) -> ( iota h E. m e. ZZ ( y = ( L ` m ) /\ h = ( m /L N ) ) ) = ( iota h E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 17 |  | iotaex |  |-  ( iota h E. m e. ZZ ( y = ( L ` m ) /\ h = ( m /L N ) ) ) e. _V | 
						
							| 18 | 16 6 17 | fvmpt3i |  |-  ( ( L ` A ) e. B -> ( X ` ( L ` A ) ) = ( iota h E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 19 | 12 18 | syl |  |-  ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) -> ( X ` ( L ` A ) ) = ( iota h E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 20 |  | ovex |  |-  ( A /L N ) e. _V | 
						
							| 21 |  | simprr |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( L ` A ) = ( L ` m ) ) | 
						
							| 22 |  | simplll |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> N e. NN ) | 
						
							| 23 | 22 7 | syl |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> N e. NN0 ) | 
						
							| 24 |  | simplr |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> A e. ZZ ) | 
						
							| 25 |  | simprl |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> m e. ZZ ) | 
						
							| 26 | 2 5 | zndvds |  |-  ( ( N e. NN0 /\ A e. ZZ /\ m e. ZZ ) -> ( ( L ` A ) = ( L ` m ) <-> N || ( A - m ) ) ) | 
						
							| 27 | 23 24 25 26 | syl3anc |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( ( L ` A ) = ( L ` m ) <-> N || ( A - m ) ) ) | 
						
							| 28 | 21 27 | mpbid |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> N || ( A - m ) ) | 
						
							| 29 |  | moddvds |  |-  ( ( N e. NN /\ A e. ZZ /\ m e. ZZ ) -> ( ( A mod N ) = ( m mod N ) <-> N || ( A - m ) ) ) | 
						
							| 30 | 22 24 25 29 | syl3anc |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( ( A mod N ) = ( m mod N ) <-> N || ( A - m ) ) ) | 
						
							| 31 | 28 30 | mpbird |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( A mod N ) = ( m mod N ) ) | 
						
							| 32 | 31 | oveq1d |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( ( A mod N ) /L N ) = ( ( m mod N ) /L N ) ) | 
						
							| 33 |  | simpllr |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> -. 2 || N ) | 
						
							| 34 |  | lgsmod |  |-  ( ( A e. ZZ /\ N e. NN /\ -. 2 || N ) -> ( ( A mod N ) /L N ) = ( A /L N ) ) | 
						
							| 35 | 24 22 33 34 | syl3anc |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( ( A mod N ) /L N ) = ( A /L N ) ) | 
						
							| 36 |  | lgsmod |  |-  ( ( m e. ZZ /\ N e. NN /\ -. 2 || N ) -> ( ( m mod N ) /L N ) = ( m /L N ) ) | 
						
							| 37 | 25 22 33 36 | syl3anc |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( ( m mod N ) /L N ) = ( m /L N ) ) | 
						
							| 38 | 32 35 37 | 3eqtr3d |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( A /L N ) = ( m /L N ) ) | 
						
							| 39 | 38 | eqeq2d |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( h = ( A /L N ) <-> h = ( m /L N ) ) ) | 
						
							| 40 | 39 | biimprd |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( m e. ZZ /\ ( L ` A ) = ( L ` m ) ) ) -> ( h = ( m /L N ) -> h = ( A /L N ) ) ) | 
						
							| 41 | 40 | anassrs |  |-  ( ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ m e. ZZ ) /\ ( L ` A ) = ( L ` m ) ) -> ( h = ( m /L N ) -> h = ( A /L N ) ) ) | 
						
							| 42 | 41 | expimpd |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ m e. ZZ ) -> ( ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) -> h = ( A /L N ) ) ) | 
						
							| 43 | 42 | rexlimdva |  |-  ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) -> ( E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) -> h = ( A /L N ) ) ) | 
						
							| 44 |  | fveq2 |  |-  ( m = A -> ( L ` m ) = ( L ` A ) ) | 
						
							| 45 | 44 | eqcomd |  |-  ( m = A -> ( L ` A ) = ( L ` m ) ) | 
						
							| 46 | 45 | biantrurd |  |-  ( m = A -> ( h = ( m /L N ) <-> ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 47 |  | oveq1 |  |-  ( m = A -> ( m /L N ) = ( A /L N ) ) | 
						
							| 48 | 47 | eqeq2d |  |-  ( m = A -> ( h = ( m /L N ) <-> h = ( A /L N ) ) ) | 
						
							| 49 | 46 48 | bitr3d |  |-  ( m = A -> ( ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) <-> h = ( A /L N ) ) ) | 
						
							| 50 | 49 | rspcev |  |-  ( ( A e. ZZ /\ h = ( A /L N ) ) -> E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) | 
						
							| 51 | 50 | ex |  |-  ( A e. ZZ -> ( h = ( A /L N ) -> E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 52 | 51 | adantl |  |-  ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) -> ( h = ( A /L N ) -> E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) ) | 
						
							| 53 | 43 52 | impbid |  |-  ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) -> ( E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) <-> h = ( A /L N ) ) ) | 
						
							| 54 | 53 | adantr |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( A /L N ) e. _V ) -> ( E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) <-> h = ( A /L N ) ) ) | 
						
							| 55 | 54 | iota5 |  |-  ( ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) /\ ( A /L N ) e. _V ) -> ( iota h E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) = ( A /L N ) ) | 
						
							| 56 | 20 55 | mpan2 |  |-  ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) -> ( iota h E. m e. ZZ ( ( L ` A ) = ( L ` m ) /\ h = ( m /L N ) ) ) = ( A /L N ) ) | 
						
							| 57 | 19 56 | eqtrd |  |-  ( ( ( N e. NN /\ -. 2 || N ) /\ A e. ZZ ) -> ( X ` ( L ` A ) ) = ( A /L N ) ) |