|
Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
% (find-angg "LATEX/2016-2-LA-zhas.tex")
% (find-angg "LATEX/2016-2-LA-zhas.lua")
% (defun c () (interactive) (find-LATEXsh "lualatex -record 2016-2-LA-zhas.tex"))
% (defun d () (interactive) (find-xpdfpage "~/LATEX/2016-2-LA-zhas.pdf"))
% (defun e () (interactive) (find-LATEX "2016-2-LA-zhas.tex"))
% (defun u () (interactive) (find-latex-upload-links "2016-2-LA-zhas"))
% (find-xpdfpage "~/LATEX/2016-2-LA-zhas.pdf")
% (find-sh0 "cp -v ~/LATEX/2016-2-LA-zhas.pdf /tmp/")
% (find-sh0 "cp -v ~/LATEX/2016-2-LA-zhas.pdf /tmp/pen/")
% file:///home/edrx/LATEX/2016-2-LA-zhas.pdf
% file:///tmp/2016-2-LA-zhas.pdf
% file:///tmp/pen/2016-2-LA-zhas.pdf
% http://angg.twu.net/LATEX/2016-2-LA-zhas.pdf
% «.comprehension» (to "comprehension")
% «.comprehension-2» (to "comprehension-2")
% «.comprehension-3» (to "comprehension-3")
\documentclass[oneside]{book}
\usepackage[colorlinks]{hyperref} % (find-es "tex" "hyperref")
%\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{pict2e}
\usepackage{color} % (find-LATEX "edrx15.sty" "colors")
\usepackage{colorweb} % (find-es "tex" "colorweb")
\usepackage{tikz}
%
\usepackage{edrx15} % (find-angg "LATEX/edrx15.sty")
\input edrxaccents.tex % (find-angg "LATEX/edrxaccents.tex")
\input edrxchars.tex % (find-LATEX "edrxchars.tex")
\input edrxheadfoot.tex % (find-dn4ex "edrxheadfoot.tex")
\input edrxgac2.tex % (find-LATEX "edrxgac2.tex")
%
\begin{document}
\catcode`\^^J=10
\directlua{dednat6dir = "dednat6/"}
\directlua{dofile(dednat6dir.."dednat6.lua")}
\directlua{texfile(tex.jobname)}
\directlua{verbose()}
\directlua{output(preamble1)}
\def\expr#1{\directlua{output(tostring(#1))}}
\def\eval#1{\directlua{#1}}
\def\pu{\directlua{pu()}}
\directlua{dofile "edrxtikz.lua"} % (find-LATEX "edrxtikz.lua")
\directlua{dofile "edrxpict.lua"} % (find-LATEX "edrxpict.lua")
%L V.__tostring = function (v) return format("(%.3f,%.3f)", v[1], v[2]) end
\pu
\unitlength=9pt
\def\closeddot{\circle*{0.3}}
\def\opendot {\circle*{0.3}\color{white}\circle*{0.2}}
% ____ _ _
% / ___|___ _ __ ___ _ __ _ __ ___| |__ ___ _ __ ___(_) ___ _ __
% | | / _ \| '_ ` _ \| '_ \| '__/ _ \ '_ \ / _ \ '_ \/ __| |/ _ \| '_ \
% | |__| (_) | | | | | | |_) | | | __/ | | | __/ | | \__ \ | (_) | | | |
% \____\___/|_| |_| |_| .__/|_| \___|_| |_|\___|_| |_|___/_|\___/|_| |_|
% |_|
%
% «comprehension» (to ".comprehension")
% (find-LATEX "2016-2-GA-algebra.tex" "comprehension")
% (laz162p 1 "comprehension")
% (lalp 8)
\def\und#1#2{\underbrace{#1}_{#2}}
\def\und#1#2{\underbrace{#1}_{\text{#2}}}
\def\ug#1{\und{#1}{gen}}
\def\uf#1{\und{#1}{filt}}
\def\ue#1{\und{#1}{expr}}
\def\uv#1{\und{#1}{var}}
{\bf Set comprehensions}
\ssk
In the (non-standard) explicit notation for set comprehensions
we have generators and filters separated by commas,
then a ``;'', then the output expression:
\ssk
$\begin{array}{lll}
\{\ug{a∈\{1,2,3,4\}}; \ue{10a}\} &=& \{10,20,30,40\} \\
\{\ug{a∈\{1,2,3,4\}}; \ue{a}\} &=& \{1,2,3,4\} \\
\{\ug{a∈\{1,2,3,4\}}, \uf{a≥3}; \ue{a}\} &=& \{3,4\} \\
\{\ug{a∈\{1,2,3,4\}}, \uf{a≥3}; \ue{10a}\} &=& \{30,40\} \\
\{\ug{a∈\{10,20\}}, \ug{b∈\{3,4\}}; \ue{a+b}\} &=& \{13,14,23,24\} \\
\{\ug{a∈\{1,2\}}, \ug{b∈\{3,4\}}; \ue{(a,b)}\} &=& \{(1,3),(1,4),(2,3),(2,4)\} \\
\end{array}
$
\bsk
We can calculate set comprehensions using tables.
Here are two examples.
\def\tbl#1#2{\fbox{$\begin{array}{#1}#2\end{array}$}}
\def\tbl#1#2{\fbox{$\sm{#2}$}}
\def\V{\mathbf{T}}
\def\F{\mathbf{F}}
% "Stop":
\def\S{\omit$|$\hss}
\def\S{\omit\vrule\hss}
\def\S{\omit\vrule$($\hss}
\def\S{\omit\vrule$\scriptstyle($\hss}
\def\S{\omit\vrule\phantom{$\scriptstyle($}\hss} % stop
% strut:
\def\s{\mathstrut}
\def\s{\phantom{$|$}}
\def\s{\phantom{|}}
\def\s{}
\msk
$\{\ug{x∈\{1,2,3\}}, \ug{y∈\{3,4\}}, \uf{x+y<6}; \ue{(x,y)}\}
= \{(1,3),(1,4),(2,3)\}
$
\tbl{ccc}{
\s x & y & x+y<6 & (x,y) \\\hline
\s 1 & 3 & \V & (1,3) \\
\s 1 & 4 & \V & (1,4) \\
\s 2 & 3 & \V & (2,3) \\
\s 2 & 4 & \F & \S \\
\s 3 & 3 & \F & \S \\
\s 3 & 4 & \F & \S \\
}
\bsk
$\{\ug{(x,y)∈\{1,2,3\}^2}, \uf{x>y}; \ue{(x,y)}\}
= \{(2,1), (3,1), (3,2)\}
$
\tbl{ccc}{
\s (x,y) & x & y & x>y & (x,y) \\\hline
\s (1,1) & 1 & 1 & \F & \S \\
\s (1,2) & 1 & 2 & \F & \S \\
\s (1,3) & 1 & 3 & \F & \S \\
\s (2,1) & 2 & 1 & \V & (2,1) \\
\s (2,2) & 2 & 2 & \F & \S \\
\s (2,3) & 2 & 3 & \F & \S \\
\s (3,1) & 3 & 1 & \V & (3,1) \\
\s (3,2) & 3 & 2 & \V & (3,2) \\
\s (3,3) & 3 & 3 & \F & \S \\
}
\newpage
% «comprehension-2» (to ".comprehension-2")
% (laz162p 2 "comprehension-2")
% (lazp 2)
{\bf Set comprehensions (2)}
There are {\sl two} standard notations for set comprehensions --
they both use ``$|$'', but one is ``$\setofst{\text{generator}}{\text{filters}}$'' (``g$|$f'')
the other ``$\setofst{\text{expr}}{\text{generators and filters}}$'' (``e$|$gf'')...
Here are some examples of translations standard$↔$explicit:
\msk
$\begin{array}{llll}
& \text{(standard)} & & \text{(explicit)} \\[5pt]
& \setofst{\ue{10a}}{\ug{a∈\{1,2,3,4\}}} &=&
\{\ug{a∈\{1,2,3,4\}}; \ue{10a}\} \\
& \setofst{\ue{a}}{\ug{a∈\{1,2,3,4\}}} &=&
\{\ug{a∈\{1,2,3,4\}}; \ue{a}\} \\
& \setofst{\ug{a∈\{1,2,3,4\}}}{\uf{a≥3}} &=&
\{\ug{a∈\{1,2,3,4\}}, \uf{a≥3}; \ue{a}\} \\
& \setofst{\ue{a}}{\ug{a∈\{1,2,3,4\}}, \uf{a≥3}} &=&
\{\ug{a∈\{1,2,3,4\}}, \uf{a≥3}; \ue{a}\} \\
& \setofst{\ue{10a}}{\ug{a∈\{1,2,3,4\}}, \uf{a≥3}} &=&
\{\ug{a∈\{1,2,3,4\}}, \uf{a≥3}; \ue{10a}\} \\
% & \{\ug{a∈\{10,20\}}, \ug{b∈\{3,4\}}; \ue{a+b}\} \\
% & \{\ug{a∈\{1,2\}}, \ug{b∈\{3,4\}}; \ue{(a,b)}\} \\
\end{array}
$
\msk
\msk
In the ``g$|$f'' case the trick is that the ``expr''
is the variable of the generator... examples:
\msk
$\begin{array}{llll}
& \text{(standard)} & & \text{(explicit)} \\[5pt]
& \setofst{\ug{\uv{a}∈\{1,2,3,4\}}}{\uf{a≥3}} &=&
\{\ug{a∈\{1,2,3,4\}}, \uf{a≥3}; \ue{a}\} \\
& \setofst {\ug{\uv{(x,y)}∈\{1,2,3\}^2}} {\uf{x>y}} &=&
\{\ug{(x,y)∈\{1,2,3\}^2}, \uf{x>y}; \ue{(x,y)}\} \\
\end{array}
$
\bsk
{\bf Exercises}
\msk
$\begin{array}{rcl}
A &:=& \{x∈\{0,1,2,3\}; (x,3-x)\} \\ % 2C
B &:=& \{x∈\{1,2,3\}, y∈\{3,4\}; (x,y)\} \\ % 2E
C &:=& \{x∈\{3,4\}, y∈\{1,2,3\}; (y,x)\} \\ % 2G
D &:=& \{x∈\{3,4\}, y∈\{1,2,3\}; (x,2)\} \\ % 2H
E &:=& \{x∈\{1,2,3\}, y∈\{3,4\}, x+y>4; (x,y)\} \\ % 2J
F &:=& \{x,y∈\{0,1,2,3,4\}; (x,y)\} \\ % 2L
G &:=& \{x,y∈\{0,1,2,3,4\}, y=3; (x,y)\} \\ % 2M
H &:=& \{x,y∈\{0,1,2,3,4\}, x=2; (x,y)\} \\ % 2N
I &:=& \{x,y∈\{0,1,2,3,4\}, x+y=3; (x,y)\} \\ % 2O
J &:=& \{x,y∈\{0,1,2,3\};(x,y)\} \\ % 5A
K &:=& \{x,y∈\{0,1,2,3\}, y=2; (x,y)\} \\ % 5B
L &:=& \{x,y∈\{0,1,2,3,4\}, y=2x; (x,y)\} \\ % 5E
M &:=& \{(x,y)∈\{0,1,2,3,4\}^2, y=2x; (x,y)\} \\ % 5F
\end{array}
$
\newpage
% «comprehension-3» (to ".comprehension-3")
% (laz162p 3 "comprehension-3")
$\begin{array}{rcl}
N &:=& \setofst{(x,x)}{x∈\{0,1,2,3\}} \\ % 3C
O &:=& \setofst{(x,2)}{x∈\{0,1,2,3\}} \\ % 3M
P &:=& \setofst {(x,y)∈\{0,1,2,3,4\}^2} {y=2x} \\ % 5J
Q &:=& \setofst {(x,y)∈\{1,2,3\}^2} {0x+0y=0} \\ % 5N
R &:=& \setofst {(x,y)∈\{1,2,3\}^2} {0x+0y=2} \\ % 5O
S &:=& \setofst {(x,y)∈\{1,2,3\}^2} {x≥y} \\ % 5P
\end{array}
$
%$\picturepiecewise(-1,-2)(5,2){
% (-2,1)--(2,1)c (2,-1)o--(3,-1)o (3,0)c--(6,0)
% }
%$
% (find-angg ".emacs" "find-planarhas")
% (find-LATEX "2015planar-has.tex" "connectives")
\bsk
\bsk
\def∧{\mathbin{\&}}
$$\def\o#1{\mathop{\mathsf{#1}}}
\def\o#1{\mathbin{\mathsf{#1}}}
\def\a#1#2{\ang{#1,#2}}
\def\ab{\a ab}
\def\cd{\a cd}
\begin{array}{rcl}
%
\ab ≤ \cd &:=& a≤c∧b≤d \\
\ab ≥ \cd &:=& a≥c∧b≥d \\[5pt]
%
\ab \o{above} \cd &:=& a≥c∧b≥d \\
\ab \o{below} \cd &:=& a≥c∧b≥d \\
\ab \o{leftof} \cd &:=& a≥c∧b≤d \\
\ab \o{rightof} \cd &:=& a≤c∧b≥d \\[5pt]
%
\o{ne}(\ab) &:=& \o{if} \o{valid}(\a a{b+1})
\o{then} \o{ne}(\a a{b+1})
\o{else} \ab
\o{end} \\
\o{nw}(\ab) &:=& \o{if} \o{valid}(\a {a+1}b)
\o{then} \o{nw}(\a {a+1}b)
\o{else} \ab
\o{end} \\\\
%
\ab ∧ \cd &:=& \a{\o{min}(a,c)}{\o{min}(b,d)} \\
\ab ∨ \cd &:=& \a{\o{max}(a,c)}{\o{max}(b,d)} \\[5pt]
%
\ab \to \cd &:=& \begin{array}[t]{llll}
\o{if} & \ab \o{below} \cd & \o{then} & ⊤ \\
\o{elseif} & \ab \o{leftof} \cd & \o{then} & \o{ne}(\ab∧\cd) \\
\o{elseif} & \ab \o{rightof} \cd & \o{then} & \o{nw}(\ab∧\cd) \\
\o{elseif} & \ab \o{above} \cd & \o{then} & \cd \\
\o{end}
\end{array} \\\\
%
⊥ &:=& \a00 \\
¬\ab &:=& \ab→⊥ \\
\end{array}
$$
\end{document}
% Local Variables:
% coding: utf-8-unix
% ee-anchor-format: "«%s»"
% End: