2016年9月29日木曜日

学習環境

集合・位相入門(松坂 和夫(著)、岩波書店)の第1章(集合と写像)、2(集合の間の演算)、問題4.を取り組んでみる。

問題4.


  1. x∈A−( B∪C ) ⇔x∈A∧x∉B∪C ⇔x∈A∧( x∉B∧x∉C ) ⇔( x∈A∩ B c )∧( x∈A∩ C c ) ⇔x∈( A−B )∩( A−C )

  2. x∈A−( B∩C ) ⇔x∈A∧x∉B∩C ⇔x∈A∧( x∈ B c ∨x∈ C c ) ⇔x∈A∩ B c ∨x∈A∩ C c ⇔x∈A−B∨x∈A−C ⇔x∈( A−B )∪( A−C )

  3. x∈( A∪B )−C ⇔x∈( A∪B )∧x∈ C c ⇔( x∈A∨x∈B )∧x∈ C c ⇔( x∈A∧x∈ C c )∨( x∈B∧x∈ C c ) ⇔x∈( A−C )∨x∈( B−C ) ⇔x∈( A−C )∪( B−C )

  4. x∈( A∩B )−C ⇔x∈A∩B∧x∈ C c ⇔( x∈A∧x∈B )∧x∈ C c ⇔( x∈A∧x∈ C c )∧( x∈B∧x∈ C c ) ⇔x∈A−C∧x∈B−C ⇔x∈( A−C )∩( B−C )

  5. x∈A∩( B−C ) ⇔x∈A∧x∈B∧x∈ C c ⇔x∈A∩B∧x∈ C c ⇔( x∈A∧x∈B )∧x∈ C c ⇔( x∈A∧x∈B )∧( x∈ A c ∨x∈ C c ) ⇔x∈A∩B∧x∉A∩C ⇔x∈( A∩B )−( A∩C )

コード(Emacs)

python 3.5

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from matplotlib_venn import venn3_unweighted
import matplotlib.pyplot as plt
import sympy

a = sympy.FiniteSet(*range(15))
b = sympy.FiniteSet(*range(5, 20))
c = sympy.FiniteSet(*range(10, 25))

print('a')
print(a - (b | c) == (a - b) & (a - c))

print('b')
print(a - (b & c) == (a - b) | (a - c))

print('c')
print((a | b) - c == (a - c) | (b - c))

print('d')
print((a & b) - c == (a - c) & (b - c))

print('e')
print(a & (b - c) == (a & b) - (a & c))

plt.figure(figsize=(6, 6))
venn3_unweighted(subsets=(a, b, c), set_labels=('A', 'B', 'C'))
plt.savefig('sample4.svg')
plt.show()

入出力結果(Terminal, IPython)

$ ./sample4.py
a
True
b
True
c
True
d
True
e
True
$

0 コメント:

コメントを投稿