2017年12月18日月曜日

学習環境

代数系入門 (松坂 和夫(著)、岩波書店)の第1章(整数)、5(素数、素因数分解)、問題14.を取り組んでみる。


    1. h を

      2 h n < 2 · 2 h

      を満たす正の整数とする。

      2は素数である。

      このとき、

      1 , , n n > 1

      のなかで、

      2 h

      だけが

      2 h

      で割り切れる。

      よって、前問の問13より、(a)は整数ではない。


    2. h を

      3 h 2 n - 1 < 3 · 3 h

      を満たす正の整数とする。

      3は素数。

      また、

      1 , 3 , , 2 n - 1 n > 1

      のなかで、

      3 h

      のみが

      3 h

      で割り切れる。

      よって、前問の問13より、(b)は整数ではない。

コード(Emacs)

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, summation
import random

k, n = symbols('k, n', integer=True)
s1 = summation(1 / k, (k, 1, n))
s2 = summation(1 / (2 * k - 1), (k, 1, n))

for i, s in enumerate([s1, s2]):
    print(f'({chr(ord("a") + i)})')
    pprint(s)
    for _ in range(5):
        n0 = random.randrange(10)
        print(f'n = {n0}\n')
        s0 = s.subs({n: n0}).doit()
        for t in [s0, s0.is_integer]:
            pprint(t)
            print()
        print()

入出力結果(Terminal, Jupyter(IPython))

$ ./sample14.py
(a)
harmonic(n)
n = 7

363
───
140

False


n = 5

137
───
 60

False


n = 6

49
──
20

False


n = 7

363
───
140

False


n = 2

3/2

False


(b)
  n          
 ____        
 ╲           
  ╲      1   
   ╲  ───────
   ╱  2⋅k - 1
  ╱          
 ╱           
 ‾‾‾‾        
k = 1        
n = 3

23
──
15

False


n = 3

23
──
15

False


n = 8

91072
─────
45045

False


n = 8

91072
─────
45045

False


n = 6

6508
────
3465

False


$

0 コメント:

コメントを投稿