学習環境
- Surface 3 (4G LTE)、Surface 3 タイプ カバー、Surface ペン(端末)
- Windows 10 Pro (OS)
- 数式入力ソフト(TeX, MathML): MathType
- MathML対応ブラウザ: Firefox、Safari
- MathML非対応ブラウザ(Internet Explorer, Microsoft Edge, Google Chrome...)用JavaScript Library: MathJax
- 参考書籍
集合論入門(基礎数学シリーズ)(松村 英之(著)、朝倉書店)の1.(集合算)、1.3(和集合と共通部分)の練習問題1、2.を取り組んでみる。
コード(Emacs)
Python 3
#!/usr/bin/env python3 # -*- coding: utf-8 -*- from matplotlib_venn import venn3_unweighted import matplotlib.pyplot as plt from sympy import pprint, FiniteSet A = FiniteSet(*range(10)) B = FiniteSet(*range(2, 11)) C = FiniteSet(*range(3, 12)) D = FiniteSet(*range(4, 14)) for X in [A, B, C, D]: pprint(X) print('1.') X1 = (A | B) & (C | D) X2 = (A & C) | (A & D) | (B & C) | (B & D) for X in [X1, X2]: pprint(X) print(X1 == X2) print('2.') X1 = (A & B) | (B & C) | (C & A) X2 = (A | B) & (B | C) & (C | A) for X in [X1, X2]: pprint(X) print(X1 == X2) venn3_unweighted(subsets=(A, B, C)) plt.savefig('sample2.svg')
入出力結果(Terminal, Jupyter(IPython))
$ ./sample1.py {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} {2, 3, 4, 5, 6, 7, 8, 9, 10} {3, 4, 5, 6, 7, 8, 9, 10, 11} {4, 5, 6, 7, 8, 9, 10, 11, 12, 13} 1. {3, 4, 5, 6, 7, 8, 9, 10} {3, 4, 5, 6, 7, 8, 9, 10} True 2. {2, 3, 4, 5, 6, 7, 8, 9, 10} {2, 3, 4, 5, 6, 7, 8, 9, 10} True $
0 コメント:
コメントを投稿