:: PEPIN semantic presentation
Lemma1:
for b1, b2 being Integer
for b3, b4 being Nat st b1 = b3 & b2 = b4 holds
( b1 divides b2 iff b3 divides b4 )
Lemma2:
for b1 being Nat
for b2 being Integer st b1 > 1 & b1 * b2 > 0 holds
b2 > 0
by XREAL_1:133;
Lemma3:
for b1, b2, b3 being Nat st b1 > 1 & b2 >= 1 & b3 >= 0 & 1 = (((b2 * b3) * b1) + b2) + b3 holds
( b2 = 1 & b3 = 0 )
Lemma4:
for b1 being Nat holds 2 |^ (2 |^ b1) > 1
Lemma5:
for b1 being Nat st b1 <> 0 holds
b1 - 1 >= 0
Lemma6:
for b1 being Nat st b1 <> 0 holds
(b1 -' 1) + 1 = (b1 + 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
Lemma15:
for b1, b2 being Nat holds (b1 * (2 |^ (b2 + 1))) div 2 = b1 * (2 |^ b2)
Lemma16:
for b1, b2, b3 being Nat st b1 <= b2 holds
b3 |^ b1 divides b3 |^ b2
Lemma17:
2 |^ 2 = 4
Lemma18:
2 |^ 3 = 8
Lemma19:
2 |^ 4 = 16
Lemma20:
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
Lemma22:
for b1, b2 being Nat st b1 is even & b2 is even holds
b1 * b2 is even
theorem Th19: :: PEPIN:19
for
b1,
b2 being
Nat st not
b1 is
even & not
b2 is
even holds
not
b1 * b2 is
even
theorem Th20: :: PEPIN:20
for
b1,
b2 being
Nat st not
b1 is
even holds
not
b1 |^ b2 is
even
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
for
b1,
b2 being
Nat st
b1 > 1 &
b2 > 0 holds
b1 |^ b2 > 1
Lemma27:
for b1 being Nat holds (2 |^ (2 |^ b1)) ^2 = 2 |^ (2 |^ (b1 + 1))
theorem Th27: :: PEPIN:27
for
b1,
b2 being
Nat st
b1 <> 0 &
b2 <> 0 holds
b1 |^ b2 = b1 * (b1 |^ (b2 -' 1))
theorem Th28: :: PEPIN:28
theorem Th29: :: PEPIN:29
theorem Th30: :: PEPIN:30
for
b1 being
Nat holds 2
|^ (b1 + 1) = (2 |^ b1) + (2 |^ b1)
theorem Th31: :: PEPIN:31
for
b1,
b2,
b3 being
Nat st
b1 > 1 &
b1 |^ b2 = b1 |^ b3 holds
b2 = b3
Lemma32:
for b1, b2, b3 being Nat st b1 > b2 & b3 > 1 holds
b3 |^ b1 > b3 |^ b2
Lemma33:
for b1, b2 being Nat st 2 |^ b1 divides 2 |^ b2 holds
b1 <= b2
theorem Th32: :: PEPIN:32
theorem Th33: :: PEPIN:33
theorem Th34: :: PEPIN:34
theorem Th35: :: PEPIN:35
theorem Th36: :: PEPIN:36
for
b1,
b2,
b3 being
Nat st
b1 > 1 &
b2 mod b1 = 1 holds
(b2 |^ b3) mod b1 = 1
theorem Th37: :: PEPIN:37
theorem Th38: :: PEPIN:38
theorem Th39: :: PEPIN:39
theorem Th40: :: PEPIN:40
Lemma41:
for b1, b2 being Nat st b1 > 1 & b2 > 1 & b2,1 are_congruent_mod b1 holds
b2 mod b1 = 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
for
b1 being
Nat st
b1 <> 0 holds
- b1 < b1 ;
theorem Th47: :: PEPIN:47
canceled;
theorem Th48: :: PEPIN:48
for
b1 being
Nat st
b1 <> 0 holds
b1 div b1 = 1
:: 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
Lemma57:
for b1 being Nat holds Fermat b1 > 1
Lemma58:
for b1 being Nat holds ((Fermat b1) -' 1) mod 2 = 0
Lemma59:
for b1 being Nat holds (Fermat b1) -' 1 > 0
Lemma60:
for b1 being Nat holds (Fermat b1) mod (2 |^ (2 |^ b1)) = 1
Lemma61:
for b1 being Nat holds not Fermat b1 is even
theorem Th61: :: PEPIN:61
theorem Th62: :: PEPIN:62
theorem Th63: :: PEPIN:63
Lemma65:
3 |^ 2 = 9
Lemma66:
3 |^ 4 = 81
Lemma67:
3 |^ 8 = 6561
Lemma68:
3 |^ 16 = 6561 * 6561
Lemma69:
for b1 being Nat holds Fermat 1 divides (3 |^ ((4 * b1) + 2)) + 1
Lemma70:
for b1 being Nat st b1 = 1 holds
3 |^ (((Fermat b1) -' 1) div 2), - 1 are_congruent_mod Fermat b1
Lemma71:
for b1 being Nat holds Fermat 2 divides (3 |^ ((16 * b1) + 8)) + 1
Lemma72:
(3 |^ 1) mod (Fermat 3) = 3
Lemma73:
(3 |^ 2) mod (Fermat 3) = 9
Lemma74:
(3 |^ 4) mod (Fermat 3) = 81
Lemma75:
(3 |^ 8) mod (Fermat 3) = 136
Lemma76:
(3 |^ 16) mod (Fermat 3) = 83 * 3
Lemma77:
(3 |^ 32) mod (Fermat 3) = 64
Lemma78:
(3 |^ 64) mod (Fermat 3) = 241
Lemma79:
(3 |^ 128) mod (Fermat 3) = 256
Lemma80:
(3 |^ 1) mod (Fermat 4) = 3
Lemma81:
(3 |^ 2) mod (Fermat 4) = 9
Lemma82:
(3 |^ 4) mod (Fermat 4) = 81
Lemma83:
(3 |^ 8) mod (Fermat 4) = 6561
Lemma84:
(3 |^ 16) mod (Fermat 4) = (164 * 332) + 1
Lemma85:
(3 |^ 32) mod (Fermat 4) = 123 * 503
Lemma86:
(3 |^ 64) mod (Fermat 4) = (14 * 1367) + 1
Lemma87:
(3 |^ 128) mod (Fermat 4) = 52 * 289
Lemma88:
(3 |^ 256) mod (Fermat 4) = 282
Lemma89:
(3 |^ (256 * 2)) mod (Fermat 4) = 71 * 197
Lemma90:
(3 |^ (256 * 4)) mod (Fermat 4) = 32 * 257
Lemma91:
(3 |^ (256 * 8)) mod (Fermat 4) = 81 * 809
Lemma92:
(3 |^ (256 * 16)) mod (Fermat 4) = 64
Lemma93:
(3 |^ (256 * 32)) mod (Fermat 4) = 256 * 16
Lemma94:
(3 |^ (256 * 64)) mod (Fermat 4) = 673 * 97
Lemma95:
(3 |^ (256 * 128)) mod (Fermat 4) = 256 * 256
Lemma96:
Fermat 3 divides (3 |^ ((32 * 0) + 128)) + 1
Lemma97:
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