:: PEPIN semantic presentation
Lemma43:
for i1, i2 being Integer
for n1, n2 being Element of NAT st i1 = n1 & i2 = n2 holds
( i1 divides i2 iff n1 divides n2 )
Lemma46:
for n being Element of NAT
for a being Integer st n > 1 & n * a > 0 holds
a > 0
by XREAL_1:133;
Lemma47:
for n, x, y being Nat st n > 1 & x >= 1 & y >= 0 & 1 = (((x * y) * n) + x) + y holds
( x = 1 & y = 0 )
Lemma54:
for n being Element of NAT holds 2 |^ (2 |^ n) > 1
Lemma56:
for n being Element of NAT st n <> 0 holds
n - 1 >= 0
Lemma57:
for n being Element of NAT st n <> 0 holds
(n -' 1) + 1 = (n + 1) -' 1
theorem Th1: :: PEPIN:1
theorem Th2: :: PEPIN:2
theorem Th3: :: PEPIN:3
theorem Th4: :: PEPIN:4
theorem Th5: :: PEPIN:5
theorem Th6: :: PEPIN:6
theorem Th7: :: PEPIN:7
theorem Th8: :: PEPIN:8
theorem Th9: :: PEPIN:9
theorem Th10: :: PEPIN:10
theorem Th11: :: PEPIN:11
theorem Th12: :: PEPIN:12
Lemma72:
for k, n being Element of NAT holds (k * (2 |^ (n + 1))) div 2 = k * (2 |^ n)
Lemma73:
for k, n, m being Element of NAT st k <= n holds
m |^ k divides m |^ n
Lemma74:
2 |^ 2 = 4
Lemma75:
2 |^ 3 = 8
Lemma76:
2 |^ 4 = 16
Lemma77:
2 |^ 8 = 256
theorem Th13: :: PEPIN:13
theorem Th14: :: PEPIN:14
theorem Th15: :: PEPIN:15
theorem Th16: :: PEPIN:16
theorem Th17: :: PEPIN:17
theorem Th18: :: PEPIN:18
Lemma82:
for i, j being Element of NAT st i is even & j is even holds
i * j is even
theorem Th19: :: PEPIN:19
theorem Th20: :: PEPIN:20
theorem Th21: :: PEPIN:21
theorem Th22: :: PEPIN:22
theorem Th23: :: PEPIN:23
theorem Th24: :: PEPIN:24
theorem Th25: :: PEPIN:25
canceled;
theorem Th26: :: PEPIN:26
Lemma89:
for n being Element of NAT holds (2 |^ (2 |^ n)) ^2 = 2 |^ (2 |^ (n + 1))
theorem Th27: :: PEPIN:27
theorem Th28: :: PEPIN:28
theorem Th29: :: PEPIN:29
theorem Th30: :: PEPIN:30
theorem Th31: :: PEPIN:31
Lemma94:
for k, n, x being Element of NAT st k > n & x > 1 holds
x |^ k > x |^ n
Lemma95:
for m, n being Element of NAT st 2 |^ m divides 2 |^ n holds
m <= n
theorem Th32: :: PEPIN:32
theorem Th33: :: PEPIN:33
theorem Th34: :: PEPIN:34
theorem Th35: :: PEPIN:35
theorem Th36: :: PEPIN:36
theorem Th37: :: PEPIN:37
theorem Th38: :: PEPIN:38
theorem Th39: :: PEPIN:39
theorem Th40: :: PEPIN:40
Lemma114:
for n, m being Element of NAT st n > 1 & m > 1 & m,1 are_congruent_mod n holds
m mod n = 1
theorem Th41: :: PEPIN:41
theorem Th42: :: PEPIN:42
canceled;
theorem Th43: :: PEPIN:43
theorem Th44: :: PEPIN:44
theorem Th45: :: PEPIN:45
theorem Th46: :: PEPIN:46
theorem Th47: :: PEPIN:47
canceled;
theorem Th48: :: PEPIN:48
:: deftheorem Def1 defines Crypto PEPIN:def 1 :
theorem Th49: :: PEPIN:49
:: deftheorem Def2 defines order PEPIN:def 2 :
theorem Th50: :: PEPIN:50
theorem Th51: :: PEPIN:51
canceled;
theorem Th52: :: PEPIN:52
theorem Th53: :: PEPIN:53
theorem Th54: :: PEPIN:54
:: deftheorem Def3 defines Fermat PEPIN:def 3 :
theorem Th55: :: PEPIN:55
theorem Th56: :: PEPIN:56
theorem Th57: :: PEPIN:57
theorem Th58: :: PEPIN:58
theorem Th59: :: PEPIN:59
theorem Th60: :: PEPIN:60
Lemma147:
for n being Element of NAT holds Fermat n > 1
Lemma148:
for n being Element of NAT holds ((Fermat n) -' 1) mod 2 = 0
Lemma149:
for n being Element of NAT holds (Fermat n) -' 1 > 0
Lemma150:
for n being Element of NAT holds (Fermat n) mod (2 |^ (2 |^ n)) = 1
Lemma151:
for n being Element of NAT holds not Fermat n is even
theorem Th61: :: PEPIN:61
theorem Th62: :: PEPIN:62
theorem Th63: :: PEPIN:63
Lemma167:
3 |^ 2 = 9
Lemma168:
3 |^ 4 = 81
Lemma169:
3 |^ 8 = 6561
Lemma170:
3 |^ 16 = 6561 * 6561
Lemma171:
for i being Element of NAT holds Fermat 1 divides (3 |^ ((4 * i) + 2)) + 1
Lemma172:
for n being Element of NAT st n = 1 holds
3 |^ (((Fermat n) -' 1) div 2), - 1 are_congruent_mod Fermat n
Lemma173:
for n being Element of NAT holds Fermat 2 divides (3 |^ ((16 * n) + 8)) + 1
Lemma174:
(3 |^ 1) mod (Fermat 3) = 3
Lemma175:
(3 |^ 2) mod (Fermat 3) = 9
Lemma176:
(3 |^ 4) mod (Fermat 3) = 81
Lemma177:
(3 |^ 8) mod (Fermat 3) = 136
Lemma178:
(3 |^ 16) mod (Fermat 3) = 83 * 3
Lemma179:
(3 |^ 32) mod (Fermat 3) = 64
Lemma180:
(3 |^ 64) mod (Fermat 3) = 241
Lemma181:
(3 |^ 128) mod (Fermat 3) = 256
Lemma182:
(3 |^ 1) mod (Fermat 4) = 3
Lemma183:
(3 |^ 2) mod (Fermat 4) = 9
Lemma184:
(3 |^ 4) mod (Fermat 4) = 81
Lemma185:
(3 |^ 8) mod (Fermat 4) = 6561
Lemma186:
(3 |^ 16) mod (Fermat 4) = (164 * 332) + 1
Lemma187:
(3 |^ 32) mod (Fermat 4) = 123 * 503
Lemma188:
(3 |^ 64) mod (Fermat 4) = (14 * 1367) + 1
Lemma189:
(3 |^ 128) mod (Fermat 4) = 52 * 289
Lemma190:
(3 |^ 256) mod (Fermat 4) = 282
Lemma191:
(3 |^ (256 * 2)) mod (Fermat 4) = 71 * 197
Lemma192:
(3 |^ (256 * 4)) mod (Fermat 4) = 32 * 257
Lemma193:
(3 |^ (256 * 8)) mod (Fermat 4) = 81 * 809
Lemma194:
(3 |^ (256 * 16)) mod (Fermat 4) = 64
Lemma195:
(3 |^ (256 * 32)) mod (Fermat 4) = 256 * 16
Lemma196:
(3 |^ (256 * 64)) mod (Fermat 4) = 673 * 97
Lemma197:
(3 |^ (256 * 128)) mod (Fermat 4) = 256 * 256
Lemma198:
Fermat 3 divides (3 |^ ((32 * 0) + 128)) + 1
Lemma199:
Fermat 4 divides (3 |^ ((64 * 0) + (256 * 128))) + 1
theorem Th64: :: PEPIN:64
theorem Th65: :: PEPIN:65
theorem Th66: :: PEPIN:66
theorem Th67: :: PEPIN:67
theorem Th68: :: PEPIN:68
theorem Th69: :: PEPIN:69
theorem Th70: :: PEPIN:70
theorem Th71: :: PEPIN:71