2019年12月15日日曜日

学習環境

解析入門 原書第3版 (S.ラング(著)、松坂 和夫(翻訳)、片山 孝次(翻訳)、岩波書店)の第Ⅴ部(“ε-δ”その他)、付録2(帰納法)の練習問題9を求めてみる。


  1. x + y 0 = 1 k = 0 0 0 k x k y 0 - k = 0 ! 0 ! 0 - 0 ! x 0 y 0 = 1

    よって、

    x + y 0 = k = 0 0 0 k x k y 0 - k

    また、

    x + y n = x + y x + y n - 1 = x + y k = 0 n - 1 n - 1 k x k y n - 1 - k = k = 0 n - 1 n - 1 k x k + 1 y n - k - 1 + k = 0 n - 1 n - 1 k x k y n - k = k = 1 n n - 1 k - 1 x k y n - k - 1 - 1 + k = 0 n - 1 n - 1 k x k y n - k = k = 1 n - 1 n - 1 k - 1 x k y n - k + x n + y n + k = 1 n - 1 n - 1 k x k y n - k = k = 1 n - 1 n - 1 k - 1 + n - 1 k x k y n - k + x n + y n = k = 1 n - 1 n k x k y n - k + n n x n y n - n + n 0 x 0 y n - 0 = k = 1 n n k x k y n - k

    よって、 帰納法によりすべての自然数に対して成り立つ。

    (証明終)

コード

#!/usr/bin/env python3
from unittest import TestCase, main
from sympy import symbols, binomial, summation

print('9.')


class MyTestCase(TestCase):
    def test(self):
        x, y = symbols('x, y')
        k = symbols('k', integer=True, nonnegative=True)
        for n in range(10):
            self.assertEqual(((x + y) ** n).expand(),
                             summation(binomial(n, k) * x ** k * y ** (n - k), (k, 0, n)))


if __name__ == '__main__':
    main()

入出力結果(Zsh、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))

% ./sample9.py -v
9.
test (__main__.MyTestCase) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.093s

OK
%

0 コメント:

コメントを投稿