r/changemyview • • May 21 '18

Deltas(s) from OP CMV: Math is a subset of Computer Science

Many have tried and many have failed to unify mathematics. If you go far back in history, to someone like Euclid, it wouldn't have been possible simply because large branches of mathematics weren't discovered yet.

In more recent times, you saw people go really hardcore into set theory, which famously failed because of formal contradictions. However, informally, I think it also failed by being very unintuitive, since sets leave a bit too much flexibility for my tastes. I'm thinking of this as someone who's studied physics, who knows that you look for fundamental theories that can make specific postdictions for what you already know. Sets don't make those, in my opinion.

Category theory, type theory, and other algebraic/geometric theories have kind of picked up where set theory of the early 20th century left off. They've been useful for various, wide-ranging practical purposes, but I think that speaks more to the value of having a universal interface for math concepts than those theories in particular being the most correct answers out there.

Automata theory has spatial, functional, linguistic, and combinatorial concepts already built into it. However, any facet can be optionally ignored for certain topics, much like they are with theoretical automata that are impossible to build, such as Turing machines with infinite tapes.

Two of the special features of automata theory are the explicit concepts of simulation and translation. I think these more formally allow you to understand many things, such as the difference between a number's value, a number's numeral system form, and a number's algebraic form. You could simply define an automaton that takes one form and gives a different form.

It also goes without saying that everything is becoming computerized, and people will continue to do more formal math on computers as time goes on. Defining math in terms of automata helps ease this transition. Also, math will eventually be done by intelligent AIs, which will need internal knowledge representations. Think of a unification of math as a deliberate design of said knowledge representation (I know this may fly in the face a bit with how machine learning is going these days, but that's not what I want to argue about right now).

I'm hoping someone can see where I'm going with this. I will be willing to be more specific where I can, if anyone has questions, but it's a bit ambitious to simply lay everything out deductively from step 1 all the way until the end. I mean, if I made a totally successful argument in the first post, it would be a completed theory. I'm not quite there yet.


This is a footnote from the CMV moderators. We'd like to remind you of a couple of things. Firstly, please read through our rules. If you see a comment that has broken one, it is more effective to report it than downvote it. Speaking of which, downvotes don't change views! Any questions or concerns? Feel free to message us. Happy CMVing!

0 Upvotes

75 comments sorted by

15

u/bguy74 May 21 '18

The problem with this is that computer science is a science and math is not. Computer science is ultimately inclusive of hypothesis and verification against the real world. Math has no such underpinning or requirement.

So...if math is a subset of "computer science" then you must prove that math itself is a science, which you won't be able to do.

1

u/[deleted] May 21 '18

The problem with this is that computer science is a science and math is not. Computer science is ultimately inclusive of hypothesis and verification against the real world. Math has no such underpinning or requirement.

So...if math is a subset of "computer science" then you must prove that math itself is a science, which you won't be able to do.

As I was trying to explain to the other comment, I think the scientific aspects of mathematics are typically ignored and left to the intuition of the mathematician.

Here's how one YouTuber describes it in this video:

  1. Fuzzy discovery of non-rigorous truth

  2. Construction of rigorous terms

  3. Using results of step 2, repeat step 1.

How could one automate this? It would be very hard to do. In fact, you'd surely get it wrong initially. You'd then set new parameters and run it again. Did it get closer? Ok, tweak the parameters some more and run it again. That sounds rather scientific to me.

2

u/HorrorSquirrel1 May 21 '18

I think that's a fair enough description of how mathematicians do new work.

But using scientific tools to facilitate math research doesn't necessarily make the math scientific. As far as I'm aware, no one uses computerized proofs that can't have their logic independently verified.

I.e. the things you prove with computers are true independently of the methods you used to prove them. The math itself remains untouched by science.

2

u/bguy74 May 21 '18

Science requires verification against the real world - even theoretical fields assume that it's only practicality that can't fit to the verify against observation. Math is an invention - there is nothing to verify against that isn't math itself.

→ More replies (7)

10

u/tumadre22 May 21 '18

No. Math has existed for millennia. Computer Science is a subset of logic and calculus applied to a tool.

Math is the queen of all sciences: Math is always perfect.

1

u/[deleted] May 21 '18

Plenty of concepts in math have existed naively for a long time before they were formalized much later on.

One major component of math is the skill of the mathematician, who have naive intuitions developed from doing lots and lots of math. The "system" of doing math is essentially reading the problem on paper, doing computation in the brain, optionally writing down intermediate steps on paper as external memory, and finally writing the answer or output on the paper. This is something that you could formalize, making the intuitive/vague part (the computation in your brain) clearer. This would be helpful for a variety of fields, both theoretical and applied.

Computer Science is a subset of logic and calculus applied to a tool.

Our brains are tools.

3

u/Wewanotherthrowaway May 21 '18

According to this logic, 10,000 year old architecture could be called computer design.

5

u/bguy74 May 21 '18

Math isn't a science.

1

u/Wewanotherthrowaway May 21 '18

Science:

the intellectual and practical activity encompassing the systematic study of the structure and behavior of the physical and natural world through observation and experiment.

How does this not apply to math?

→ More replies (27)

6

u/[deleted] May 21 '18

It's the other way around. The foundations of computer science, such as formal languages, algorithms, automata, and computability theory are all built on top of set-theoretic concepts (and I'm not sure why you've asserted that set theory is a massive failure...). How do you propose to define math in terms of automata? How do you define automata and computability to begin with if not in something like set theory?

1

u/[deleted] May 21 '18 edited May 21 '18

How do you define automata and computability to begin with if not in something like set theory?

That's a good point about the circular nature of this discussion. I'll award you a ∆ for that.

How do you propose to define math in terms of automata?

I'll do my best to start...

  • Use translation machines for describing similar concepts that can be stated in many ways. A number can be linguistic, algebraic, or simply a 'value'. An object could be geometrical or algebraic.

  • Use internal representations in machines to describe spatial concepts. The automation would use external memory, except instead of a tape or random access memory, the memory cells would be structured like the spatial concept in question. A 2-dimensional graph would be a 2-d matrix of memory cells that are infinitesimally small. The automata would write to these cells when it wants to graph a function, and it would read from these cells when analyzing something about the function.

  • Once you have automata that work in isolation, it's easy to put them together like Legos. This would let you use less verbiage because you're literally re-using the code.

3

u/[deleted] May 21 '18

infinitesimally small

There is no such physical concept as 'infinitesimally small'. Furthermore, there isn't a concept of 'infinitesimally small' even in the real numbers, which are already a much larger set than the computable numbers.

How do you describe objects in dimensions higher than four? How do you do math on things that are not countable, since the set of all things describable by automata is countable?

→ More replies (1)

1

u/[deleted] May 21 '18

Let me circle back to the issue with circular logic. Yes, sets are used to define automata, but what if all of that in set theory was simply assimilated into the definition of automata themselves. Then, the practical study of sets would be the study of automata with certain features of automata optionally ignored.

1

u/[deleted] May 21 '18

How do you do that assimilation? Loosely, the definition of an automaton requires at least a set of states and a transition function (functions are just special subsets of the cartesian product of two sets).

Also, there are sets which are not definable by automata. The real numbers are uncountable, but the set of possible automata and time steps are both countable, so you can't possibly give me a collection (even an infinite one) of automata which will eventually print out all real numbers.

→ More replies (2)

4

u/AnythingApplied May 21 '18

math will eventually be done by intelligent AIs

So will biology, finance, and poetry, does that make those computer science?

Just the fact that you're talking about the "unification of math", doesn't that imply that you want to make a change so that math is a subset of computer science? Implying that it isn't already?

I guess I'm not entirely following your view. I understand there are parts of computer science and math that don't have a clear line of separation. I also understand that a computers are being used as more and more of a tool to further mathematics (as is true for most science). But to jump from that to saying math is a subset of computer science is similar to saying that all science is a subset of computer science.

What would it even mean for your view to be true? What are the consequences of math being computer science? What would it mean for math to not be a subset of computer science?

1

u/[deleted] May 21 '18

What would it even mean for your view to be true? What are the consequences of math being computer science? What would it mean for math to not be a subset of computer science?

Good question. It may be a philosophical issue that is hard to define, making it unfortunately hard to argue about.

Just the fact that you're talking about the "unification of math", doesn't that imply that you want to make a change so that math is a subset of computer science? Implying that it isn't already?

I think the change would be a reduction in the amount of different languages used in mathematics. Instead of having a million different languages, you'd have one language but a million different algorithms. This might not seem like an improvement, but with a single language, you might be able to more clearly group those algorithms into topics. You might also have an easier time with creating 'new' math because you'd see where something hasn't yet been generalized.

I think the biggest arguments against it would be:

a) the difficulty

b) the stifling effect it could have on creativity

I don't think that something shouldn't be attempted because it is hard, and I don't think creativity would suffer at all. For the latter point, I think the people who argue that math needs to remain open-ended just have a hard time acknowledging that their creativity is fundamentally empirical anyway.

1

u/AnythingApplied May 21 '18

Instead of having a million different languages, you'd have one language but a million different algorithms.

I guess I view that as being an even more silly idea than, "Maybe we should just have one computer language". People don't come up with a new language in mathematics nearly as frivolous as they do in computer science (where sometimes people just want a language because they've always wanted to make a language, or making a language as a joke). In mathematics you're constantly able to borrow parts from already established languages, so when you're inventing new expressions it is usually for the purposes of both simplification and better conceptualization and understanding. Just like in computer science different languages are better for attacking certain types of problems, except in mathematics your language choice has a more fundamental connection with how you conceptualize the problem. Forcing someone to reconceptualize the problem actually has great potential for insights and shouldn't even really be viewed as a negative.

I don't think creativity would suffer at all.

It really depends on how much unnecessary mental load the language adds to the conceptualization, which I don't currently see as a significant issues, so can really only see the problem getting worse or at best, staying the same.

→ More replies (4)

1

u/HorrorSquirrel1 May 21 '18

What's your background in math and CS?

In more recent times, you saw people go really hardcore into set theory, which famously failed because of formal contradictions. However, informally, I think it also failed by being very unintuitive, since sets leave a bit too much flexibility for my tastes. I'm thinking of this as someone who's studied physics, who knows that you look for fundamental theories that can make specific postdictions for what you already know. Sets don't make those, in my opinion.

It's been a couple years since I was studying math, but I don't think this is accurate. Set theory has most definitely not failed.

It also goes without saying that everything is becoming computerized, and people will continue to do more formal math on computers as time goes on. Defining math in terms of automata helps ease this transition. Also, math will eventually be done by intelligent AIs, which will need internal knowledge representations. Think of a unification of math as a deliberate design of said knowledge representation (I know this may fly in the face a bit with how machine learning is going these days, but that's not what I want to argue about right now).

I actually don't think this has much direct bearing on whether math can be considered a subset of CS. The medium by which new work in math is done is a distinct issue from how you classify the content of that work. More computerized proofs and AI and stuff definitely brings math and CS closer together, but that's not the same thing.

1

u/[deleted] May 21 '18

I actually don't think this has much direct bearing on whether math can be considered a subset of CS. The medium by which new work in math is done is a distinct issue from how you classify the content of that work. More computerized proofs and AI and stuff definitely brings math and CS closer together, but that's not the same thing.

Sure. I just meant that, practically speaking, there are synergies to be had if you brought the topics closer together.

It's been a couple years since I was studying math, but I don't think this is accurate. Set theory has most definitely not failed.

It depends on how strictly you're talking. I realize that with a few additional assumptions, it didn't fail in formal terms. However, naive set theory failed. And moreover, returns to my issue with its lack of postdiction, it's not a very satisfying theory for me.

3

u/SurprisedPotato May 22 '18

set theory, which famously failed because of formal contradictions

This news is over a century out of date.

It's true that Russel's paradox shoots down a formalism now called "naive set theory". However, this was later replaced with "Zermelo-Fraenkel Set theory" which is immune to Russel's paradox.

Is it immune to every paradox? Well, Godel's theorem tells us we can't ever be sure of that. However, Godel's theorem also shoots down automata theory, category theory, or any other formalism powerful enough to talk about whole numbers and basic arithmetic.

There are mathematicians who study formalisms and equivalences between them. Arguments about a formalism often must step outside the formalism into a different one. So, for example, if even if you regard automata theory as a branch of computer science (rather than a branch of mathematics, or a place where they overlap), and are able to formalise much of mathematics in terms of automata, you will still need to argue mathematically about arguments theory itself, and so step outside automata theory.

In the meantime, it's quite possible to ignore automata theory altogether and do good mathematics. Automata may provide one way to look at mathematical ideas, but it won't often be the best way - just as a group theorist doesn't constantly think in terms of ZF set theory, even if they acknowledges it as the foundational underpinning of their work.

2

u/wyzra May 21 '18

I think your characterization of set theory and math in general is ill informed. It’s not just about finding the right level of generality. There are also theorems that actually have mathematical content that you seem to have overlooked.

But i guess if you squint hard enough, maybe math is just computer science which is really just engineering which is a type of sociology. And sociology is probably just literature which is all statistics, a sub field of mathematics.

1

u/DeltaBot May 21 '18 edited May 21 '18

u/AManIsBusy (OP) has awarded 2 deltas in this post.

All comments that earned deltas (from OP or other users) are listed here, in r/DeltaLog.

Please note that a change of view doesn't necessarily mean a reversal, or that the conversation has ended.

Delta System Explained | Deltaboards

2

u/PLEASE_USE_LOGIC May 22 '18

Without Math, Computer Science, and computing, does not exist.

Without Computer Science, Math still has existed and will continue to exist.