Jump to content

Menu

Logic for Computer Science Majors


Recommended Posts

My boys are interested in working with computers in some capacity.  Math is definitely something we are focused on, but I was wondering if anyone knew the importance of logic.  I have my oldest child working through Introduction to Logic by Gensler and he likes it.  The book is big and should take quite a bit of time to go through.  Is this worth the investment of time?  Traditional Logic by Memoria Press failed miserably.  He felt it was all reading comprehension and did not like it at all.

  • Like 1
Link to comment
Share on other sites

Intro to Logic by Gensler looks to cover (from a teacher's guide written by the author):

 

  • syllogisms
  • informal aspects of reasoning (like meaning and fallacies)
  • inductive reasoning;
  • propositional and quantificational logic
  • modal, deontic, and belief logic;
  • the formalization of an ethical theory about the golden rule; and
  • metalogic, historyof logic, deviant logic, and philosophy of logic

 

 

except in the general sense that the topics, above, are helpful in constructing and analyzing written arguments, they aren't especially relevant to CompSci.  I was a CompSci undergrad.  I took epistemology and philosophy courses and enjoyed them...I do think they appeal to the generally structured and logical reasoning sense that 'computer people' have...but they aren't really related. IMO.

 

Beyond learning to program and the usual math sequence, you might look @ discrete math, stats, and graph theory.  Graph algorithms/theory, in particular, can be lots of fun as they provide a good way to model/solve lots of every-day sounding problems (like, for example, how your phone finds the path you should take to drive to work or how Amazon decides what to put next to eachother in their warehouses based on what people often order together).

 

 

 

 

Edited by AEC
  • Like 3
Link to comment
Share on other sites

Just to add...

 

An article on why discrete math is important + recommended books

http://www.artofproblemsolving.com/articles/discrete-math

 

A free high school course from MIT

Combinatorics: The Fine Art of Counting

http://ocw.mit.edu/high-school/mathematics/combinatorics-the-fine-art-of-counting/

 

A summer class 

http://algorithmicthinking.org/registration/

The prof also runs an online algorithm class during the school year.

 

+ lots of coding/programming.

 

 

 

  • Like 3
Link to comment
Share on other sites

There are some neat computer and logic problems (past contests and their solutions) to try on this website from the University of Waterloo, Canada. Scroll down to Beaver Computing Challenge.

http://cemc.uwaterloo.ca/contests/past_contests.html

Thanks Wintermom!

 

We are in Ontario and my oldest son did the Beaver Computing Challenge this year.  We hope to do lots of other University of Waterloo contests.

  • Like 1
Link to comment
Share on other sites

Guest hopeingrace

I think logic is important no matter what your child's interest. Both my boys have taken logic and it has been a big blessing. We did it online through Biola Youth Academics.

 

 

Sent from my iPad using Tapatalk

Link to comment
Share on other sites

While homeschooling ds did informal logic, formal logic, a book on epistemology, and some informal study of ethics. All have served him well even if not directly. He's headed into a computer field. With the exception of ethics, we used books geared toward high school students so they fit in our schedule.

Link to comment
Share on other sites

I began as an Assembly Language programmer, back in the dark ages. Very tough sledding.  If someone is going to do something like that, a lot of concentration and patience and persistence are required. Sometimes, one screws up, and you lose a week or 2, but that is incredibly rare.  Today, with all of the Programming Tools and the Languages that are used, it is different, and not that it is easy, but it is much more organized.  Many years ago, when I was doing Assembly Language on government projects, we considered C.S. not to be a real Science, but I believe over the years things have improved.  I would suggest giving consideration to Electronic Engineering or Physics, as an alternate Major.  The ability to work closely with the Hardware is a very big advantage when one is up to their neck    trying to get something to work.  Once, the Software group I was a member of redesigned the Hardware I was working with, because the Hardware Engineer had no clue about what he was doing. That shows the worst case example of the advantage of Software people knowing Hardware...  That was my only experience with an incompetent Hardware person, fortunately.  My late uncle, the one with the Ph.D. in Electrical Engineering, told me, when I was the age my DD is now, that he wished he had gone into Physics instead.  Broader education...  The DD of someone I do business with is in her first year as an E.E. Major and she is contemplating changing her Major, or adding C.S. or something as a 2nd Major.  I think rather than worrying about Logic, I would just try to be as competent as possible with Math and with Physics.  GL

  • Like 1
Link to comment
Share on other sites

While homeschooling ds did informal logic, formal logic, a book on epistemology, and some informal study of ethics. All have served him well even if not directly. He's headed into a computer field. With the exception of ethics, we used books geared toward high school students so they fit in our schedule.

 

I certainly didn't mean to imply that formal & informal logic aren't useful to the compSci oriented person - they certainly are (plus they're interesting).  All SWEngineers will write and read more 'lines of english' than 'lines of code'.

 

I do think it's worth clarifying, though, that the logic you see in a philosophy course isn't quite like the logic one finds as the basis of computational theory (or software engineering).  CompSci 'logic' is more like mathematical proof.  Clearly, that's related to the study of things like logical falicies, but if you want to directly prepare for CompSci I'd suggest practice at mathmetical proof.  Further, that's what all your college math classes will look like, and you're going to have a lot of those, so you might as well start learning to love it now. :D

Link to comment
Share on other sites

I certainly didn't mean to imply that formal & informal logic aren't useful to the compSci oriented person - they certainly are (plus they're interesting).  All SWEngineers will write and read more 'lines of english' than 'lines of code'.

 

I do think it's worth clarifying, though, that the logic you see in a philosophy course isn't quite like the logic one finds as the basis of computational theory (or software engineering).  CompSci 'logic' is more like mathematical proof.  Clearly, that's related to the study of things like logical falicies, but if you want to directly prepare for CompSci I'd suggest practice at mathmetical proof.  Further, that's what all your college math classes will look like, and you're going to have a lot of those, so you might as well start learning to love it now. :D

 

I understood and was mostly replying to OP's question of if your student had studied logic. Because we used materials made for high school students, they were easier to fit into a schedule. Even if the philosophy angle was not relevant to comp sci, he still enjoyed it and readily understood it. 

 

I should have expanded my post (early morning postings!) We did logic for other reasons, not comp sci, but it seemed to have hit his happy spot much like programming. 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...