let n, i, j, k be Element of NAT ; ( (2 to_power n) + 1 is prime & i is_expressible_by n & j is_expressible_by n & k is_expressible_by n implies MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),n )
assume that
A1:
(2 to_power n) + 1 is prime
and
A2:
i is_expressible_by n
and
A3:
j is_expressible_by n
and
A4:
k is_expressible_by n
; MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),n
set J = ChangeVal_1 j,n;
A5:
ChangeVal_1 j,n > 0
by A3, Th18;
set I = ChangeVal_1 i,n;
ChangeVal_1 i,n <= 2 to_power n
by A2, Th18;
then A6:
ChangeVal_1 i,n < (2 to_power n) + 1
by NAT_1:13;
ChangeVal_1 j,n <= 2 to_power n
by A3, Th18;
then A7:
ChangeVal_1 j,n < (2 to_power n) + 1
by NAT_1:13;
set K = ChangeVal_1 k,n;
A8:
ChangeVal_1 k,n > 0
by A4, Th18;
ChangeVal_1 k,n <= 2 to_power n
by A4, Th18;
then A9:
ChangeVal_1 k,n < (2 to_power n) + 1
by NAT_1:13;
A10:
ChangeVal_1 i,n > 0
by A2, Th18;
now set CV =
((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1);
((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1) < (2 to_power n) + 1
by NAT_D:1;
then A11:
((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1) <= 2
to_power n
by NAT_1:13;
A12:
((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1) <> 0
by A1, A6, A10, A7, A5, Th5;
now per cases
( ((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1) = 2 to_power n or ((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1) < 2 to_power n )
by A11, XXREAL_0:1;
suppose A13:
((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1) = 2
to_power n
;
MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),nthen A14:
MUL_MOD (MUL_MOD i,j,n),
k,
n =
ChangeVal_2 (((ChangeVal_1 0 ,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
by Def8
.=
ChangeVal_2 (((((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1)) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
by A13, Def7
.=
ChangeVal_2 ((((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
by EULER_2:10
;
set CV2 =
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1);
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) < (2 to_power n) + 1
by NAT_D:1;
then A15:
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) <= 2
to_power n
by NAT_1:13;
A16:
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) <> 0
by A1, A7, A5, A9, A8, Th5;
now per cases
( ((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) = 2 to_power n or ((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) < 2 to_power n )
by A15, XXREAL_0:1;
suppose A17:
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) = 2
to_power n
;
MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),nthen MUL_MOD i,
(MUL_MOD j,k,n),
n =
ChangeVal_2 (((ChangeVal_1 i,n) * (ChangeVal_1 0 ,n)) mod ((2 to_power n) + 1)),
n
by Def8
.=
ChangeVal_2 (((ChangeVal_1 i,n) * (((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1))) mod ((2 to_power n) + 1)),
n
by A17, Def7
.=
ChangeVal_2 (((ChangeVal_1 i,n) * ((ChangeVal_1 j,n) * (ChangeVal_1 k,n))) mod ((2 to_power n) + 1)),
n
by EULER_2:10
.=
ChangeVal_2 ((((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
;
hence
MUL_MOD (MUL_MOD i,j,n),
k,
n = MUL_MOD i,
(MUL_MOD j,k,n),
n
by A14;
verum end; suppose
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) < 2
to_power n
;
MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),nthen
MUL_MOD j,
k,
n = ((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)
by Def8;
then MUL_MOD i,
(MUL_MOD j,k,n),
n =
ChangeVal_2 (((ChangeVal_1 i,n) * (((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1))) mod ((2 to_power n) + 1)),
n
by A16, Def7
.=
ChangeVal_2 (((ChangeVal_1 i,n) * ((ChangeVal_1 j,n) * (ChangeVal_1 k,n))) mod ((2 to_power n) + 1)),
n
by EULER_2:10
.=
ChangeVal_2 ((((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
;
hence
MUL_MOD (MUL_MOD i,j,n),
k,
n = MUL_MOD i,
(MUL_MOD j,k,n),
n
by A14;
verum end; end; end; hence
MUL_MOD (MUL_MOD i,j,n),
k,
n = MUL_MOD i,
(MUL_MOD j,k,n),
n
;
verum end; suppose
((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1) < 2
to_power n
;
MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),nthen A18:
MUL_MOD (MUL_MOD i,j,n),
k,
n =
ChangeVal_2 (((ChangeVal_1 (((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1)),n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
by Def8
.=
ChangeVal_2 (((((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) mod ((2 to_power n) + 1)) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
by A12, Def7
.=
ChangeVal_2 ((((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
by EULER_2:10
;
set CV2 =
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1);
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) < (2 to_power n) + 1
by NAT_D:1;
then A19:
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) <= 2
to_power n
by NAT_1:13;
A20:
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) <> 0
by A1, A7, A5, A9, A8, Th5;
now per cases
( ((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) = 2 to_power n or ((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) < 2 to_power n )
by A19, XXREAL_0:1;
suppose A21:
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) = 2
to_power n
;
MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),nthen MUL_MOD i,
(MUL_MOD j,k,n),
n =
ChangeVal_2 (((ChangeVal_1 i,n) * (ChangeVal_1 0 ,n)) mod ((2 to_power n) + 1)),
n
by Def8
.=
ChangeVal_2 (((ChangeVal_1 i,n) * (((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1))) mod ((2 to_power n) + 1)),
n
by A21, Def7
.=
ChangeVal_2 (((ChangeVal_1 i,n) * ((ChangeVal_1 j,n) * (ChangeVal_1 k,n))) mod ((2 to_power n) + 1)),
n
by EULER_2:10
.=
ChangeVal_2 ((((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
;
hence
MUL_MOD (MUL_MOD i,j,n),
k,
n = MUL_MOD i,
(MUL_MOD j,k,n),
n
by A18;
verum end; suppose
((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1) < 2
to_power n
;
MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),nthen
MUL_MOD j,
k,
n = ((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)
by Def8;
then MUL_MOD i,
(MUL_MOD j,k,n),
n =
ChangeVal_2 (((ChangeVal_1 i,n) * (((ChangeVal_1 j,n) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1))) mod ((2 to_power n) + 1)),
n
by A20, Def7
.=
ChangeVal_2 (((ChangeVal_1 i,n) * ((ChangeVal_1 j,n) * (ChangeVal_1 k,n))) mod ((2 to_power n) + 1)),
n
by EULER_2:10
.=
ChangeVal_2 ((((ChangeVal_1 i,n) * (ChangeVal_1 j,n)) * (ChangeVal_1 k,n)) mod ((2 to_power n) + 1)),
n
;
hence
MUL_MOD (MUL_MOD i,j,n),
k,
n = MUL_MOD i,
(MUL_MOD j,k,n),
n
by A18;
verum end; end; end; hence
MUL_MOD (MUL_MOD i,j,n),
k,
n = MUL_MOD i,
(MUL_MOD j,k,n),
n
;
verum end; end; end; hence
MUL_MOD (MUL_MOD i,j,n),
k,
n = MUL_MOD i,
(MUL_MOD j,k,n),
n
;
verum end;
hence
MUL_MOD (MUL_MOD i,j,n),k,n = MUL_MOD i,(MUL_MOD j,k,n),n
; verum