I'll start with what is computing:
Yes, there are some deep questions and
answers about some of what can or cannot
be done with the current, usual concept of
computers, or if something can be done,
what is the fastest it can be done?
But for what computers really are:
A guy has a calculator. He stands in
front of a wall with cubby holes like
behind the desk of an old hotel. Ah,
there's a picture at
https://www.amazon.com/Happybuy-Storage-Classroom-Plywood-Cu...
Each cubby hole has an address, e.g., room
number of some room in the hotel. The
example at Amazon is missing the
addresses!
Some of the cubby holes have in them a
small piece of paper.
The guy has been instructed to start with
the cubby hole with address 1 and do what
its piece of paper says to do. When he
has done that, unless the paper tells him
otherwise, he is to move to the next cubby
hole and do what it says.
Another example is a recipe:
Cut a large onion into small pieces.
Place a frozen ground beef steak of about
1/2 pound in a cast iron skillet.
Surround it with the onions. Add pepper.
Put a cover on the skillet and turn the
heat to low.
In about 20 minutes, flip the steak.
In another 10 minutes move the steak to a
serving bowl.
Add to the skillet the contents of a 10.5
ounce can of Campbell's Beef Consomme.
Use a spatula to scrape the bottom of the
skillet until nothing is stuck.
Move the contents of the skillet to a
strainer set over the skillet and press
liquid out of the onions.
Put the onions with the beef.
Over high heat, boil down the liquid in
the skillet to a light syrup.
Add the syrup to a bowl with 1 T
(tablespoon, 15 ml) of each of
Worcestershire Sauce, Dijon mustard,
minced garlic, and 4 T of heavy cream and,
to make a sauce, mix the contents of the
bowl.
Pour over the onions and beef.
Warm in a microwave oven.
So, a recipe is some instructions, step by
step.
A more complicated recipe might have uses
of
if-then-else
do-while
If we want we can also get into
computability, the halting problem (a
self-referencing paradox), computational
complexity, e.g., the question of P
versus NP, numerical linear algebra,
numerical partial differential equations,
ray tracing graphics, cryptography, etc.,
but still the computing itself can be
regarded as just following some recipes.
Since I'm trying to get a business going
and am not trying for academic tenure,
that view of computing is enough for me.
Yes, the steps in a computer recipe might
be from the results of some math theorems
and proofs. A good example is the Gauss
elimination in linear algebra.
For math, one view is to start with the
truth table and propositional logic
(calculus). The truth table defines
AND, OR, NOT, and IF-THEN, that is, the
results, TRUE or FALSE, depending on the
inputs TRUE or FALSE.
From that can argue that math can be
reduced to just symbol substitution and
uses of the truth table. The result
refutes counterexamples.
Might insert: A math statement such as
x + 1 = 0
can be read: There is a number, call it
x, such that .... So, in this way we
make more clear the meaning of variables
in math. Then get to use such notation
when working with truth tables, etc.
A little deeper and closer to math, we can
have sets:
So, a set is a collection of elements.
We're supposed already to know what the
elements are.
Given a set A and an element x, x is
either in set A or it is not. When
x is in set A, it is in that set
exactly once, i.e., never twice or more.
The elements in set A are distinct.
They are not in the set in any particular
order; e.g., we can't say what is the
first element in the set. Suppose
x = y
that is, x and y are just two names
for the same element. Then if x is in
A, also y is in A. That is, it is
possible to have x and y both in A
when x and y are not distinct -- this
is easy, just have
x = y
From that we can move to a book on
axiomatic set theory and see some more --
axioms -- have to assume, e.g., to get
rid of self-referencing paradoxes.
From sets, in particular, starting with
just the empty set, we can give
definitions of everything else in math.
The definitions are often tricky and even
weird, still in principle it is possible
to go through some elaborate constructions,
starting with only the empty set, to
define everything else. Since the results
are so elaborate, even bizarre, we don't
think of the math that way; instead, for
skeptics or people who worry, we can say
"if you just believe in the empty set, we
can define everything else". When this is
done, everything in math is a set -- the
natural numbers, relations, functions,
groups, rings, fields, vector spaces,
curves, surfaces, etc.
Then, in fundamental terms, the proofs in
math are essentially just using
propositional logic on sets.
In common high school courses in plane
geometry, proofs are written in a special
style based on a table. Those proofs are
valid as proofs.
In practice in the rest of math proofs are
essentially always written with an
especially precise use of some natural
language, e.g., English, but it is
possible to convert such proofs to a table
such as in plane geometry or just back to
symbol substitution.
For what I've seen, done, and do in math,
that description is enough.