2020年7月13日月曜日

学習環境

代数への出発 (新装版 数学入門シリーズ) (松坂 和夫(著)、岩波書店)の第7章(不等式)、3(不等式の証明)、問20の解答を求めてみる。


  1. ( a 1 2 + a 2 2 + a 3 2 ) ( b 1 2 + b 2 2 + b 3 2 ) - ( a 1 b 1 + a 2 b 2 + a 3 b 3 ) 2
    = a 1 2 b 2 2 + a 1 2 b 3 2 + a 2 2 b 1 2 + a 2 2 b 3 2 + a 3 2 b 1 2 + a 3 2 b 2 2 - 2 ( a 1 a 2 b 1 b 2 + a 1 a 3 b 1 b 3 + a 2 a 3 h 2 b 3 )
    = ( a 1 b 2 - a 2 b 1 ) 2 + ( a 2 b 3 - a 3 b 2 ) 2 + ( a 3 b 1 - a 1 b 3 ) 2
    0

    よって例題13の不等式は成り立つ。

    (証明終)

コード

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

print('20.')
a1, a2, a3 = symbols('a:3')
b1, b2, b3 = symbols('b:3')


class Test(TestCase):
    def test(self):
        self.assertEqual(
            (
                sum([o ** 2 for o in [a1, a2, a3]]) *
                sum([o ** 2 for o in [b1, b2, b3]]) -
                sum([ai * bi
                     for ai, bi in zip([a1, a2, a3], [b1, b2, b3])]) ** 2
            ).expand(),
            (
                (a1 * b2 - a2 * b1) ** 2 +
                (a2 * b3 - a3 * b2) ** 2 +
                (a3 * b1 - a1 * b3) ** 2
            ).expand()
        )


if __name__ == "__main__":
    main()

入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))

 % ./sample20.py -v
20.
test (__main__.Test) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.054s

OK
%

0 コメント:

コメントを投稿