# 2DM3-2019-M1-ThmList semi-blank 2DM3 2019 — M1 Theorem List
Equivalence, Negation and Inequivalence
“Definition of ≡”: (p ≡ q) = (p = q)
(3.2) “Symmetry of ≡”: ?
(3.3) “Identity of ≡”: ?
(3.5) “Reflexivity of ≡”: p ≡ p
(3.9) “Commutativity of &not; with ≡”: ?
(3.11) “&not; connection”: &not; p ≡ q ≡ p ≡ &not; q
(3.14): (p ≡
/ q) ≡ (&not; p ≡ q)
(3.15) “Definition of &not; via ≡”: &not; p ≡ (p ≡ false)
Disjunction and Conjunction
(3.32): ?
(3.35) “Golden rule”: ?
(3.48): ?
(3.49) “Semi-distributivity of ∧ over ≡”: ?
(3.50) “Strong Modus Ponens”: ?
(3.51) “Replacement”: (p ≡ q) ∧ (r ≡ p) ≡ (p ≡ q) ∧ (r ≡ q)
(3.52) “Alternative definition of ≡”: ?
(3.53) “Exclusive or” “Alternative definition of ≡
/ ”: ?
Implication
(3.57) “Definition of ⇒”: ?
(3.58) “Definition of ⇐” “Consequence”: ?
(3.59) “Definition of ⇒”: ?
(3.60) “Definition of ⇒”: ?
(3.61) “Contrapositive”: ?
(3.62): p ⇒ (q ≡ r) ≡ (p ∧ q ≡ p ∧ r)
(3.63) “Distributivity of ⇒ over ≡”: ?
(3.64) “Self-distributivity of ⇒”: ?
(3.65) “Shunting”: ?
(3.66): p ∧ (p ⇒ q) ≡ p ∧ q
(3.67): p ∧ (q ⇒ p) ≡ p
(3.68): p ∨ (p ⇒ q) ≡ true
(3.69): p ∨ (q ⇒ p) ≡ q ⇒ p
(3.70): p ∨ q ⇒ p ∧ q ≡ (p ≡ q)
(3.71) “Reflexivity of ⇒”: ?
(3.72) “Right-zero of ⇒”: ?
(3.73) “Left-identity of ⇒”: ?
“Definition of &not; via ⇒” (3.74): ?
(3.75) “ex falso quodlibet”: ?
(3.76a) “Weakening”: ?
(3.76a) “Weakening”: ?
(3.76b) “Weakening”: ?
(3.76c) “Weakening”: ?
(3.76d) “Weakening”: ?
(3.76e) “Weakening”: ?
“Reflexivity of ⇒”: ?
(3.77) “Modus ponens”: ?
(3.78) “Case analysis”: ?
(3.79) “Case analysis”: ?
(3.80) “Mutual implication”: ?
(3.81) “Antisymmetry of ⇒”: ?
(3.82a) “Transitivity of ⇒”: ?
(3.82b) “Transitivity of ⇒”: ?
(3.82c) “Transitivity of ⇒”: ?
“Implication strengthening”: p ⇒ q ≡ p ⇒ p ∧ q
Leibniz as Axiom and Replacement Laws
(3.83) “Leibniz”: e = f ⇒ E[z ∶= e] = E[z ∶= f]
(3.84a) “Replacement”: e = f ∧ E[z ∶= e] ≡ e = f ∧ E[z ∶= f]
(3.84b) “Replacement”: e = f ⇒ E[z ∶= e] ≡ e = f ⇒ E[z ∶= f]
(3.84c) “Replacement”: q ∧ e = f ⇒ E[z ∶= e] ≡ q ∧ e = f ⇒ E[z ∶= f]
“Transitivity of =”: e = f ∧ f = g ⇒ e = g
(3.85a) “Replace by ‘true‘”: p ⇒ E[z ∶= p] ≡ p ⇒ E[z ∶= true]
(3.85b) “Replace by ‘true‘”: q ∧ p ⇒ E[z ∶= p] ≡ q ∧ p ⇒ E[z ∶= true]
(3.85c) “Replace by ‘false‘”: &not; p ⇒ E[z ∶= p] ≡ &not; p ⇒ E[z ∶= false]
(3.85e) “Replace by ‘true‘”: p ⇒ E[z ∶= p] = E[z ∶= true]
(3.86a) “Replace by ‘false‘”: E[z ∶= p] ⇒ p ≡ E[z ∶= false] ⇒ p
(3.86b) “Replace by ‘false‘”: E[z ∶= p] ⇒ p ∨ q ≡ E[z ∶= false] ⇒ p ∨ q
(3.87) “Replace by ‘true‘”: p ∧ E[z ∶= p] ≡ p ∧ E[z ∶= true]
(3.88) “Replace by ‘false‘”: p ∨ E[z ∶= p] ≡ p ∨ E[z ∶= false]
Monotonicity with Respect to Implication
(4.2) “Left-monotonicity of ∨” “Monotonicity of ∨”: ?
“Monotonicity of ∨”: (p ⇒ q) ⇒ ((r ⇒ s) ⇒ (p ∨ r ⇒ q ∨ s))
(4.3) “Left-monotonicity of ∧” “Monotonicity of ∧”: ?
“Monotonicity of ∧”: (p ⇒ p’) ⇒ ((q ⇒ q’) ⇒ (p ∧ q ⇒ p’ ∧ q’))
“Antitonicity of &not;”: ?
“Monotonicity of ⇒” “Right-monotonicity of ⇒”: ?
“Antitonicity of ⇒” “Left-antitonicity of ⇒”: ?
Equational Theory of Integers
(15.17) “Self-inverse of unary minus”: ?
(15.18) “Fixpoint of unary minus”: ?
(15.20): - a = - 1 ⋅ a
(15.19) “Distributivity of unary minus over +”: ?
(15.21): - a ⋅ b = a ⋅ - b
(15.22): a ⋅ - b = - (a ⋅ b)
(15.23): - a ⋅ - b = a ⋅ b
(15.24) “Right-identity of -”: ?
(15.25): (a - b) + (c - d) = (a + c) - (b + d)
(15.25a) “Mutual associativity of + and -”: ?
(15.25c): (a - b) + (b - c) = a - c
(15.26): (a - b) - (c - d) = (a + d) - (b + c)
(15.27): (a - b) ⋅ (c - d) = (a ⋅ c + b ⋅ d) - (a ⋅ d + b ⋅ c)
(15.29) “Distributivity of ⋅ over -”: ?
Cancellation Laws for Integers
(15.7) “Cancellation of ⋅”: ?
(15.8) “Cancellation of +”: ?
“Non-zero multiplication”: ?
“Cancellation of unary minus”: ?
Inductive Theory of the Natural Numbers
“Definition of + for 0” “Left-identity of +”: 0 + n = n
“Definition of + for ‘suc‘”: suc m + n = suc (m + n)
“Right-identity of +”: m + 0 = m
“Successor”: suc n = n + 1
“Adding the successor”: m + suc n = suc (m + n)
“Symmetry of +”: m + n = n + m
“Zero is even”: even 0
“Odd is not even”: odd n ≡ &not; even n
“Even successor”: even (suc n) ≡ odd n
“Odd successor”: odd (suc n) ≡ even n
“Even double”: even (n + n)
“Successor”: suc n = n + 1
“Associativity of +”: (a + b) + c = a + (b + c)
“Even addition”: even (m + n) ≡ (even m ≡ even n)
Multiplication
“Definition of ⋅ for 0”: 0 ⋅ n = 0
“Definition of ⋅ for ‘suc‘”: suc m ⋅ n = n + m ⋅ n
“Left-identity of ⋅”: 1 ⋅ n = n
“Right-zero of ⋅”: m ⋅ 0 = 0
“Multiplying the successor”: m ⋅ suc n = m + m ⋅ n
“Symmetry of ⋅”: m ⋅ n = n ⋅ m
“Distributivity of ⋅ over +”: (k + m) ⋅ n = k ⋅ n + m ⋅ n
“Associativity of ⋅”: (k ⋅ m) ⋅ n = k ⋅ (m ⋅ n)
“Right-identity of ⋅”: a ⋅ 1 = a
“Zero product”: 0 = a ⋅ b ≡ 0 = a ∨ 0 = b
“Zero is not product of successors”: suc a ⋅ suc b = 0 ≡ false
“Cancellation of multiplication with successor”: suc c ⋅ a = suc c ⋅ b ≡ a = b
“Cancellation of ⋅”: c ≠ 0 ⇒ (c ⋅ a = c ⋅ b ≡ a = b)
“Cancellation of ⋅”: c ≠ 0 ⇒ (a ⋅ c = b ⋅ c ≡ a = b)
Equality on the Natural Numbers
“Zero is not successor”: ?
“Zero is not successor”: ?
“Cancellation of ‘suc‘”: ?
“Cancellation of +”: ?
“Zero sum”: 0 = a + b ≡ 0 = a ∧ 0 = b
The Order ≤ on the Natural Numbers
“Zero is least element”: 0 ≤ a
“Isotonicity of successor”: suc a ≤ suc b ≡ a ≤ b
“Successor is not at most zero”: suc a ≤ 0 ≡ false
“Zero is unique least element”: a ≤ 0 ≡ a = 0
“Predecessor of zero”: ?
“Predecessor of successor”: ?
“Predecessor of non-zero”: n ≠ 0 ⇒ suc (pred n) = n
“Isotonicity of +”: ?
“Monotonicity of +”: a ≤ b ⇒ (c ≤ d ⇒ a + c ≤ b + d)
b
“Monotonicity of predecessor”: ?
“Successor is non-decreasing”: a ≤ suc a
“Subtraction is non-increasing”: a - b ≤ a
Strict-Order on the Natural Numbers
“Zero is less than successor”: 0 &lt; suc a
“&lt;-Isotonicity of successor”: suc a &lt; suc b ≡ a &lt; b
“Nothing is less than zero”: a &lt; 0 ≡ false
“Irreflexivity of &lt;”: a &lt; a ≡ false
“Zero is &lt;-least element”: 0 &lt; a ∨ 0 = a
“Less than successor”: a &lt; suc b ≡ a &lt; b ∨ a = b
“Less than successor”: a &lt; suc a
“Only zero is less than one”: a &lt; 1 ≡ a = 0
“Transitivity of &lt;”: ?
“Irreflexivity of &lt;”: a &lt; b ⇒ &not; (a = b)
“Empty range”: a &lt; b &lt; a ⇒ false
“Empty range”: a &lt; b &lt; a ≡ false
“Asymmetry of &lt;”: a &lt; b ⇒ &not; (b &lt; a)
CALCCHECK Structured Proofs
Simple Induction
%\ LQGXFWLRQ RQ CYDU
7\C
%DVH FDVH
&quot;
,QGXFWLRQ VWHS
&quot;
,QGXFWLRQ K\SRWKHVLV
&quot;
Making base case, induction step, and induction hypothesis explicit:
%\ LQGXFWLRQ RQ CYDU
7\C
%DVH FDVH C&quot;C
&quot;
,QGXFWLRQ VWHS C&quot;C
&quot;
,QGXFWLRQ K\SRWKHVLV C&quot;C
&quot;
(Remember that in nested inductions, induction hypotheses always need to be
Facts that can be shown by “Evaluation”
Only where enabled:
Fact 6 ⋅ 7 = 42,
≡ false
Fact 6 &gt; 7
Assuming the Antecedent
$VVXPLQJ CSC CTC &quot;$VVXPSWLRQ CSC
&quot;
$VVXPLQJ CSC DQG XVLQJ ZLWK &quot;$VVXPSWLRQ CSC
&quot;
The following key bindings work the same
in both edit and command modes:
Ctrl-Enter performs a syntax check on
the contents of all code cells before
and up to the current cell.
Ctrl-Alt-Enter performs proof checks (if
enabled) on the contents of all code
cells before and up to the current
Subproofs
cell. During Midterm 1: Same as
Ctrl-Enter.
&quot;
Shift-Alt-RightArrow enlarges
the
8G 6XESURRI IRU C
C
I SURRI LQGHQWHG DV IDU DV QHHGHG
width of the current code cell entry
WR DYRLG SDUVH HUURU J
area by a small amount
H
&quot;
Ctrl-Shift-Alt-RightArrow enlarges
the width of the current code cell
entry area by a large amount
Shift-Alt-LeftArrow reduces the width
Theorems Used as Proof Methods (Exof the current code cell entry area
ample)
by a small amount
8VLQJ !0XWXDO LPSOLFDWLRQ&quot;
Ctrl-Shift-Alt-LeftArrow reduces
6XESURRI IRU C
&aelig;
C
the width of the current code cell
&quot;
entry area by a large amount
6XESURRI IRU C
&aelig;
C
Ctrl-Shift-v (for visible spaces) toggles
&quot;
display of initial spaces on each line
as “␣” characters.
Side Proofs
ONLY if you are logged in via Avenue:
6LGH SURRI IRU C3C
Ctrl-Shift-s saves the notebook on the
&quot;
server.
&amp;RQWLQXLQJ ZLWK JRDO C&quot;C
To be safest, use in command
&quot;
mode, e.g. after clicking on the
ORFDO SURSHUW\ C3C
area of a code box where the line
&quot;
number would be displayed.
Check the pop-up whether it is
Disabling Hints Producing Time-outs
the CalcCheckWeb pop-up saying
“. . . Notebook saved to . . . ”.
Add “?, ” at the beginning of the hint:
e{ &quot; !*ROGHQ UXOH&quot; |
saved versions are displayed when
you view the notebook again.)
%\ FDVHV CSC CTC CUC
&amp;RPSOHWHQHVV
&quot;
&amp;DVH CSC
&quot;
\$VVXPSWLRQ CSC
&quot;
Selected CALCCHECKWeb Key Bindings
Case Analysis
(See Getting Started with CALCCHECKWeb
for the complete listing.)
In edit mode, you have the following key
bindings:
Esc enters command mode
Alt-i or Alt-SPACE inserts one space in
the current line and in all non-empty
lines below it, until a line is encountered that is not indented more than
to the cursor position.
Alt-BACKSPACE deletes only a space
character to the left of the current
cursor position, and also from lines
below it, until a line is encountered
that is not indented at least to the
cursor position.
Alt-DELETE deletes only a space character to the right of the current cursor position, and also from lines below it, until a line is encountered
that is not indented more than to the
cursor position.
The last three bindings also work with
Shift.
Some important symbols:
Symbol
Key sequence(s)
≡
\equiv, \==
≡
/
\nequiv
&not;
\lnot
∧
\land
∨
\lor
⇒
\implies, \=&gt;
⇐
\follows
≠
\neq
∀
\forall
∃
\exists
∑
\sum
∏
\product
\with
●
\spot
↓
\min
↑
\max
B
\BB, \bool
N
\NN, \nat
Z
\ZZ, \int