...
 
Commits (1)
......@@ -9,8 +9,8 @@ import ibl;
pair codomain_offset=(4,0);
transform codomain_shift=shift(codomain_offset);
filldraw(bean,fillpen=color_light2);
filldraw(codomain_shift*bean,fillpen=color_light2);
filldraw(bean,fillpen=color_base);
filldraw(codomain_shift*bean,fillpen=color_base);
// label("$\mapsvia{f}$",(2,1.5),E);
real r=.1cm;
......
No preview for this file type
......@@ -6,9 +6,9 @@ import ibl;
pair codomain_offset=(4,0);
transform codomain_shift=shift(codomain_offset);
transform cocodomain_shift=shift(2*codomain_offset);
filldraw(bean,fillpen=color_light2);
filldraw(codomain_shift*bean,fillpen=color_light2);
filldraw(cocodomain_shift*bean,fillpen=color_light2);
filldraw(bean,fillpen=color_base);
filldraw(codomain_shift*bean,fillpen=color_base);
filldraw(cocodomain_shift*bean,fillpen=color_base);
// label("$\mapsvia{f}$",(2,1.5),E);
real r=.1cm;
......
No preview for this file type
......@@ -9,8 +9,8 @@ import ibl;
pair codomain_offset=(4,0);
transform codomain_shift=shift(codomain_offset);
filldraw(bean,fillpen=color_light2);
filldraw(codomain_shift*bean,fillpen=color_light2);
filldraw(bean,fillpen=color_base);
filldraw(codomain_shift*bean,fillpen=color_base);
real r=.1cm;
real bar_length=2.5pt;
......
No preview for this file type
......@@ -5,9 +5,9 @@ import ibl;
pair codomain_offset=(4,0);
transform codomain_shift=shift(codomain_offset);
transform cocodomain_shift=shift(2*codomain_offset);
filldraw(bean,fillpen=color_light2);
filldraw(codomain_shift*bean,fillpen=color_light2);
filldraw(cocodomain_shift*bean,fillpen=color_light2);
filldraw(bean,fillpen=color_base);
filldraw(codomain_shift*bean,fillpen=color_base);
filldraw(cocodomain_shift*bean,fillpen=color_base);
// label("$\mapsvia{f}$",(2,1.5),E);
// Points
......
......@@ -5,9 +5,9 @@ import ibl;
pair codomain_offset=(4,0);
transform codomain_shift=shift(codomain_offset);
transform cocodomain_shift=shift(2*codomain_offset);
filldraw(bean,fillpen=color_light2);
filldraw(codomain_shift*bean,fillpen=color_light2);
filldraw(cocodomain_shift*bean,fillpen=color_light2);
filldraw(bean,fillpen=color_base);
filldraw(codomain_shift*bean,fillpen=color_base);
filldraw(cocodomain_shift*bean,fillpen=color_base);
// label("$\mapsvia{f}$",(2,1.5),E);
real r=.1cm;
......
// bean_partition.asy
size(2cm,0);
// Colors from "Still not getting any" by sp613g, https://kuler.adobe.com/#themeID/181115
size(1.85cm,0);
import ibl;
filldraw(bean,fillpen=color_light2);
filldraw(bean,fillpen=color_base);
path p1 = (-1,1.7){dir(-10)}..(2,1.75);
draw(p1,dotted);
path p2 = (-1,0.2){dir(20)}..(2,0.25);
......
No preview for this file type
......@@ -2,7 +2,7 @@ size(3cm,2cm);
// Colors from "Still not getting any" by sp613g, https://kuler.adobe.com/#themeID/181115
import ibl;
filldraw(bean,fillpen=color_light1);
filldraw(bean,fillpen=color_base);
real r=.1cm;
real label_offset_x=0.12*r, label_offset_y=0.23*r;
......
......@@ -3,11 +3,18 @@
// Jim Hefferon jhefferon at smcvt.edu
// Colors from "Still not getting any" by sp613g, https://kuler.adobe.com/#themeID/181115
pen color_light1=rgb(219,213,242);
pen color_dark1=rgb(22,64,89);
pen color_base=rgb(201,235,242);
pen color_dark2=rgb(69,115,110);
pen color_light2=rgb(242,226,196);
// pen color_light1=rgb(219,213,242);
// pen color_dark1=rgb(22,64,89);
// pen color_base=rgb(201,235,242);
// pen color_dark2=rgb(69,115,110);
// pen color_light2=rgb(242,226,196);
// Colors from "Cote Azur" by Wong Tim
pen color_light1=rgb("F0EDBB");
pen color_dark1=rgb("009393");
pen color_base=rgb("FFFCC4");
// adobe's original: pen color_dark2=rgb(0,88,94);
pen color_dark2=rgb("005B5E");
pen color_light2=rgb("FF3800"); // highlight color
// Make a bean picture of a set
pair bean0=(0,0);
......
size(3cm,2cm);
// Colors from "Still not getting any" by sp613g, https://kuler.adobe.com/#themeID/181115
// pen color_light1=rgb(219,213,242);
// pen color_dark1=rgb(22,64,89);
// pen color_base=rgb(201,235,242);
// pen color_dark2=rgb(69,115,110);
// pen color_light2=rgb(242,226,196);
import ibl;
pair z0=(0,0);
pair z1=(0,0); // center of circle1
real r=1.5; // radius
path c1=circle(z1,r);
fill(c1,color_base);
fill(c1,white);
draw(c1);
......@@ -22,4 +16,4 @@ add(a_box,filltype=Fill(white));
draw((-1-r,0)--(1+r,0),nullpen); // empty line to make universal box same size as other two
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_light1)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_dark1)));
No preview for this file type
......@@ -11,7 +11,7 @@ pair z0=(0,0);
pair z1=(0,0); // center of circle1
real r=1.5; // radius
path c1=circle(z1,r);
fill(c1,color_light1);
fill(c1,color_dark1);
draw(c1);
......@@ -22,4 +22,4 @@ add(a_box,filltype=Fill(white));
draw((-1-r,0)--(1+r,0),nullpen); // empty line to make universal box same size as other two
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
No preview for this file type
......@@ -13,8 +13,8 @@ pair z2=(1,0); // center of circle2
real r=1.5; // radius
path c1=circle(z1,r);
path c2=circle(z2,r);
fill(c1,color_light1);
// fill(c2,color_base);
fill(c2,color_base);
fill(c1,color_dark1);
picture intersection=new picture;
fill(intersection,c1,color_base);
......@@ -40,4 +40,4 @@ label("{\scriptsize $B$}",z2+(label_offset_x,label_offset_y));
// draw(z--z1,Arrow,Margin(0,m));
// draw(z--z2,Arrow,Margin(0,m));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
No preview for this file type
......@@ -19,7 +19,7 @@ fill(c1,color_base);
fill(c2,color_base);
picture intersection=new picture;
fill(intersection,c1,color_light1);
fill(intersection,c1,color_dark1);
clip(intersection,c2);
add(intersection);
......@@ -44,4 +44,4 @@ add(b_box,filltype=Fill(white));
// draw(z--z1,Arrow,Margin(0,m));
// draw(z--z2,Arrow,Margin(0,m));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
No preview for this file type
......@@ -25,4 +25,4 @@ label("{\scriptsize $\emptyset$}",dot_loc,E);
draw((-1-r,0)--(1+r,0),nullpen); // empty line to make universal box same size as other two
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
......@@ -11,7 +11,7 @@ pair z0=(0,0);
pair z1=(0,0); // center of circle1
real r=1.5; // radius
path c1=circle(z1,r);
fill(c1,color_light1);
fill(c1,color_base);
draw(c1);
......@@ -20,4 +20,4 @@ label("{\scriptsize $A$}",z1+(-1*label_offset_x,label_offset_y));
draw((-1-r,0)--(1+r,0),nullpen); // empty line to make universal box same size as other two
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
No preview for this file type
......@@ -13,8 +13,8 @@ pair z2=(1,0); // center of circle2
real r=1.5; // radius
path c1=circle(z1,r);
path c2=circle(z2,r);
fill(c1,color_light1);
fill(c2,color_light1);
fill(c1,color_dark1);
fill(c2,color_dark1);
picture intersection=new picture;
fill(intersection,c1,color_base);
......@@ -40,4 +40,4 @@ label("{\scriptsize $B$}",z2+(label_offset_x,label_offset_y));
// draw(z--z1,Arrow,Margin(0,m));
// draw(z--z2,Arrow,Margin(0,m));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
No preview for this file type
......@@ -12,9 +12,9 @@ real venn_circle_rad=1.5;
path c1=circle(z1,venn_circle_rad);
path c2=circle(z2,venn_circle_rad);
path c3=circle(z3,venn_circle_rad);
fill(c1,color_light1);
fill(c2,color_light1);
fill(c3,color_light1);
fill(c1,color_base);
fill(c2,color_base);
fill(c3,color_base);
draw(c1);
draw(c2);
draw(c3);
......@@ -44,4 +44,4 @@ label("{\tiny $5$}",point(int_pts,2+(1/3))+jiggle(0.05*venn_circle_rad));
label("{\tiny $3$}",point(int_pts,3+(2/3))+jiggle(0.05*venn_circle_rad));
label("{\tiny $7$}",z0+jiggle(0.05*venn_circle_rad));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
No preview for this file type
......@@ -9,8 +9,8 @@ pair z2=(1,0); // center of circle2
real r=1.5; // radius
path c1=circle(z1,r);
path c2=circle(z2,r);
fill(c1,color_light1);
fill(c2,color_light1);
fill(c1,color_base);
fill(c2,color_base);
draw(c1);
draw(c2);
......@@ -39,4 +39,4 @@ label("{\tiny $3$}",z0+jiggle(.05*r));
// draw(z--z1,Arrow,Margin(0,m));
// draw(z--z2,Arrow,Margin(0,m));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
No preview for this file type
......@@ -15,8 +15,8 @@ pair z2=(1,0); // center of circle2
real r=1.5; // radius
path c1=circle(z1,r);
path c2=circle(z2,r);
fill(c1,color_light1);
fill(c2,color_light1);
fill(c1,color_dark1);
fill(c2,color_dark1);
// picture intersection=new picture;
// fill(intersection,c1,colour1+colour2);
......@@ -44,4 +44,4 @@ add(b_box,filltype=Fill(white));
// draw(z--z1,Arrow,Margin(0,m));
// draw(z--z2,Arrow,Margin(0,m));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=color_base)));
shipout(bbox(0.25cm, filltype=FillDraw(fillpen=white)));
No preview for this file type
......@@ -3,7 +3,7 @@
% Jim Hefferon jhefferon (at) smcvt.edu
% --- Class structure: identification part
% ---
\ProvidesClass{ibl}[2013/04/13 version 1.1 of Inquiry-based Learning book class (Jim Hefferon)]
\ProvidesClass{ibl}[2018/08/06 version 2.0 of Inquiry-based Learning book class (Jim Hefferon)]
\NeedsTeXFormat{LaTeX2e}
% ========================================
......@@ -86,14 +86,22 @@
% \usepackage{jh}
\usepackage{ibl}
\usepackage[RGB]{xcolor}
% Colors from "Still not getting any" by sp613g, https://kuler.adobe.com/#themeID/181115
\usepackage{xcolor}
% See also the asy files
\definecolor{lighti}{RGB}{219,213,242}
\definecolor{darki}{RGB}{22,64,89}
\definecolor{base}{RGB}{201,235,242}
\definecolor{darkii}{RGB}{69,115,110}
\definecolor{lightii}{RGB}{242,226,196}
% Colors from "Still not getting any" by sp613g, https://kuler.adobe.com/#themeID/181115
% 2018-Aug-06 JH This is gone off adobe's site.
% \definecolor{lighti}{RGB}{219,213,242}
% \definecolor{darki}{RGB}{22,64,89}
% \definecolor{base}{RGB}{201,235,242}
% \definecolor{darkii}{RGB}{69,115,110}
% \definecolor{lightii}{RGB}{242,226,196}
% % Colors from "Coet Azur" https://color.adobe.com/Cote-Azur-color-theme-1440313/edit/?copy=true&base=4&rule=Custom&selected=1&name=Copy%20of%20Cote%20Azur&mode=cmyk&rgbvalues=0,0.34586062940000006,0.3718,0,0.576,0.576,1,0.99,0.77,0.94,0.9306,0.7332000000000001,1,0.21999999999999997,0&swatchOrder=0,1,2,3,4
% From Wong Tim
\definecolor{lighti}{HTML}{F0EDBB}
\definecolor{darki}{HTML}{009393}
\definecolor{base}{HTML}{FFFCC4}
\definecolor{darkii}{HTML}{005B5F}
\definecolor{highlight}{HTML}{FF3800}
% Hyper references
\RequirePackage{hyperref}
......@@ -291,7 +299,7 @@ qed=\qedsymbol
\end{center}
\vspace*{\fill}
\begin{flushright}
\large\color{darki}
\large\color{darkii}
\begin{tabular}{@{}l@{}}
Jim Hef{}feron \\
Saint Michael's College \\
......@@ -363,6 +371,6 @@ qed=\qedsymbol
% ====================================================
% VERSION number
\newcommand{\version}{1.1}
\newcommand{\version}{2.0}
\endinput
......@@ -289,7 +289,9 @@ possible if $j_0=j_1$).
\begin{problem} Prove that each of these infinite sets is not countable.
\begin{exes}
\begin{exercise}
$\powerset(\N)$
$\powerset(\N)$
\ \hint let $\map{f}{\powerset(\N)}{\N}$
and consider $\setbuilder{n\in\N}{n\notin f(n)}$
\end{exercise}
\begin{answer}
We will prove that no function $\map{f}{\powerset(\N)}{\N}$ is onto.
......@@ -309,6 +311,7 @@ possible if $j_0=j_1$).
\end{answer}
\begin{exercise}
$\R$
\ \hint find a one-to-one map from $\powerset(\N)$ to $\R$
\end{exercise}
\begin{answer}
We will show that there is a one-to-one
......
No preview for this file type
......@@ -4,17 +4,15 @@ This is a course in mathematical proof.
It is for math majors, typically sophomores.
Its only prerequisite is high school mathematics.
\medskip
\smallskip
\noindent\textsc{Approach.}
This course is inquiry-based (sometimes called Moore method
or discovery method).
This text is a sequence of exercises
This course is inquiry-based (sometimes called discovery method or
Moore method).
Students get a sequence of exercises
along with definitions and a few remarks.
Students work through the material together by
They work through the material together, by
proving statements or providing examples.
This makes each person grapple directly with the
This means that each person must grapple directly with the
mathematics\Dash the instructor only
lightly guides and the students pledge not to use outside sources\Dash
talking out misunderstandings,
......@@ -25,7 +23,7 @@ this is the best way to develop mathematical maturity.
Besides, it is a great deal of fun.
\medskip
\smallskip
\noindent\textsc{Topics.}
We cover sets, functions and relations, and elementary number theory.
......@@ -38,16 +36,16 @@ divisibility and primes,
whereas weeks of preliminary material is less of a lure.
But the background is good stuff also and
students are on board once they see where it is going.
In the second and third chapters we do
students get on board quickly.
The second and third chapters does
the other material, keeping the
intellectual habits that we established at the start.
\medskip
\smallskip
\noindent\textsc{Exercises.}
As much as possible,
Where possible,
nearby exercises have about the same difficulty.
This gradually rises.
......@@ -69,57 +67,73 @@ to do each one while for the others I ask a single student to do them all.
% 4*3*15=180
\medskip
\noindent\textsc{Home page.}
This book is Free; see \url{http://joshua.smcvt.edu/proofs}.
That site has other material related to this text, including
its \LaTeX{} source.
\ifbool{jiblm}{%
\medskip
\smallskip
\noindent\textsc{For students.}
This course asks you to write
proofs.
We start with simple statements, things that you already
know.
You will ask yourself:~if I can't assume this, what can I
assume?
For one thing, you can always use a prior result.
Also,
you can use the rules of high school algebra such as associativity
You need to know what you can assume.
You can always use a prior result.
You can also use the rules of high school algebra such as associativity
of addition $x+(y+z)=(x+y)+z$, or distributivity of multiplication
over addtion $x\cdot(y+z)=xy+xz$, or that a positive times a positive
equals a positive.
Finally, you can use elementary
logic, such as that a statement like ``$P$ and~$Q$'' is true if and only if
both halves are true.
(For the logic, perhaps your instructor will
go over some of this with you.
Certainly you'll get better at it as
you move through the course.
But in any event, the proofs at the
start require only logic that is obvious to people with a
mathematical turn of mind.)
Perhaps your instructor will
go over some of the logic with you
but in any event the proofs at the
start require only logic that is natural for people with a
mathematical turn of mind.
}{}
\vspace*{.1in}
\vspace{\fill}
\noindent\parbox{.95\textwidth}{\textit{The most important thing [is that] proving things in math [i]s a skill like any other that you get good at through practice.}\hspace{1.5em}---Cathy O'Neil} % mathbabe blog
%% \vspace{.1in}
\ifbool{jiblm}{%
\smallskip
\noindent\textsc{For instructors.}
I cover all of the first three chapters, averaging
four assignments per class session.
The fourth chaper is suitable as a lecture
on the final day or two,
or perhaps as extra credit.
The home page has other material, including
classroom slides that I use to introduce logic.
It also has a version of the text that you may prefer because it
is compact\Dash it fits on seven two-sided sheets\Dash so you can
just hand those sheets out on the first day.
This is what I do.
}
\smallskip
\noindent\textsc{License.}
This book is Free; see \url{http://joshua.smcvt.edu/proofs}.
In particular, instructors are free to copy the text and hand out those copies.
In addition, I make the book's \LaTeX{} source available so they can fine tune
the material to suit a class.
\smallskip
\vspace*{0.1in plus 1fill}
\noindent\parbox{.95\textwidth}{\textit{The most important thing [is that] proving things in math [i]s a skill like any other that you get good at through practice.}\hspace{1.5em}---Cathy O'Neil} % mathbabe blog; got permission
%% \smallskip
%% \noindent\parbox{.95\textwidth}{\raggedright\textit{At the first meeting of the class Moore would define the basic terms and either challenge the class to discover the relations among them, or, depending on the subject, the level, and the students, explicitly state a theorem, or two, or three. Class dismissed. Next meeting: "Mr Smith, please prove Theorem 1. Oh, you can't? Very well, Mr Jones, you? No? Mr Robinson? No? Well, let's skip Theorem 1 and come back to it later. How about Theorem 2, Mr Smith?" Someone almost always could do something. If not, class dismissed. It didn't take the class long to discover that Moore really meant it, and presently the students would be proving theorems and watching the proofs of others with the eyes of eagles.}\hspace{1.5em}---Paul Halmos}
\vspace{.1in}
\smallskip
\noindent\parbox{.95\textwidth}{\textit{It's a kind of art that may change lives.}\hspace{1.5em}---Peter Schjeldahl} % , \textit{New Yorker}
\vspace*{.15in}
\smallskip
\begin{flushright}
\begin{tabular}{@{}l@{}}
Jim Hef{}feron \\
Saint Michael's College \\
Saint Michael's College, \\
Colchester, Vermont USA \\
2015-Spring
2018-Fall
\end{tabular}
\end{flushright}
......@@ -52,9 +52,9 @@
\ifbool{optioncompact}{\titleclass{\chapter}{straight}}{} % possibilities are: straight, part, top, page
% Format the chapter and section heads
\titleformat{\chapter}[block]{\color{darki}\Large\scshape}{Chapter \thechapter}{1em}{}[\thispagestyle{firstpage}]
\titleformat{\chapter}[block]{\color{darkii}\Large\scshape}{Chapter \thechapter}{1em}{}[\thispagestyle{firstpage}]
\titlespacing*{\chapter}{0em}{4ex}{2ex}
\titleformat{\section}[block]{\color{darki}\large\scshape}{}{0em}{}[]
\titleformat{\section}[block]{\color{darkii}\large\scshape}{}{0em}{}[]
\titlespacing*{\section}{0em}{4ex}{1ex}
% Here is the interaction with answers package.
......