Questions tagged [computer-science]

All mathematical questions about computer science, including theoretical computer science, formal methods, verification, and artificial intelligence. For questions about Turing computability, please use the (computability) tag instead. For numerical analysis, use the (numerical-methods) tag. For questions from scientific computing, use (computational-mathematics).

Computer science is the study of the theory, experimentation, and engineering that form the basics for the design and use of computers. It is the scientific and practical approach to computation and its applications and the systematic study of the feasibility, structure, expression, and mechanization of the methodical procedures (or algorithms) that underlie the acquisition, representation, processing, storage, communication of, and access to information. An alternate, more succinct definition of computer science is the study of automating algorithmic processes that scale.

Some fields of computer science such as computational complexity theory (which explores the fundamental properties of computational and intractable problems) are highly abstract, while fields such as computer graphics emphasize real-world visual applications.

5160 questions
211
votes
13 answers

Is computer science a branch of mathematics?

I have been wondering, is computer science a branch of mathematics? No one has ever adequately described it to me. It all seems very math-like to me. My second question is, are there any books about computer science/programming that are very…
user107952
  • 13,340
  • 4
  • 16
  • 44
62
votes
2 answers

Computation with a memory wiped computer

Here is another result from Scott Aaronson's blog: If every second or so your computer’s memory were wiped completely clean, except for the input data; the clock; a static, unchanging program; and a counter that could only be set to 1, 2,…
Casebash
  • 8,703
  • 7
  • 50
  • 79
61
votes
18 answers

Unsolved Problems due to Lack of Computational Power

I was recently reading up about computational power and its uses in maths particularly to find counterexamples to conjectures. I was wondering are there any current mathematical problems which we are unable to solve due to our lack of computational…
60
votes
3 answers

Recognizable vs Decidable

What is difference between "recognizable" and "decidable" in context of Turing machines?
metdos
  • 887
  • 2
  • 8
  • 10
57
votes
14 answers

Is there a math expression equivalent to the conditional ternary operator?

Is there a math equivalent of the ternary conditional operator as used in programming? a = b + (c > 0 ? 1 : 2) The above means that if $c$ is greater than $0$ then $a = b + 1$, otherwise $a = b + 2$.
dataphile
  • 752
  • 1
  • 5
  • 14
51
votes
5 answers

Are there dictionaries in math?

Consider the following dictionary in the programming language Python: D = {'A': 1, 'B': 2, 'C': 3} It is saying that the value of A is 1, the value of B is 2, and the value of C is 3. It also has the property that D['A'] = 1 etc. How would I write…
user356363
  • 529
  • 4
  • 5
49
votes
3 answers

How to Prove a Programming Language is Turing Complete?

I had some thoughts about how to prove the turing completeness of a programming language. I came to the conclusion, that if you could write a program that is able to parse a turing machine program, both should be equivalent as you could execute…
bot47
  • 612
  • 1
  • 6
  • 8
45
votes
3 answers

What is the $3$-SAT problem?

In the hopes of improving my knowledge on the question, could someone outline the inputs and outputs for the 3-SAT problem? It would also be helpful if you could express how this problem differs in structure to SAT, 2-SAT or 4-SAT problems.
nubela
  • 801
  • 3
  • 10
  • 9
45
votes
1 answer

Would Relational Calculus be Turing-Complete if it Allowed Unsafe Queries?

My understanding about Codd's concept of "safe queries" was created to ensure that a query would always terminate. One key ability of a Turing machine is that it can work on infinite calculations (and thus isn't guaranteed to terminate). If the…
Jason
  • 1,289
  • 2
  • 11
  • 14
43
votes
4 answers

What books do you recommend before 'Concrete Mathematics'?

What book(s) do you recommend before Concrete Mathematics? Is something like "Introduction to discrete Mathematics" enough?
43
votes
1 answer

A strange occurrence in the decimal digits of $\pi$?

I was messing around with various ways to calculate $\pi$ with my computer, and I noticed something a bit strange. I was using $\frac{1}{1}-\frac{1}{3}+\frac{1}{5}-\frac{1}{7}+... = \frac{\pi}{4}$, and computing this sum to varying degrees of…
41
votes
11 answers

what are the different applications of group theory in CS?

What are some applications of abstract algebra in computer science an undergraduate could begin exploring after a first course? Gallian's text goes into Hamming distance, coding theory, etc., I vaguely recall seeing discussions of abstract algebra…
user237975
40
votes
5 answers

Why do we believe the Church-Turing Thesis?

The Church-Turing Thesis, which says that the Turing Machine model is at least as powerful as any computer that can be built in practice, seems to be pretty unquestioningly accepted in my exposure to computer science. Why? Do we have any more…
GMB
  • 4,016
  • 1
  • 17
  • 32
38
votes
3 answers

Is the $24$ game NP-complete?

The $24$ game is as follows. Four numbers are drawn; the player's objective is to make $24$ from the four numbers using the four basic arithmetic operations (in any order) and parentheses however one pleases. Consider the following generalization.…
Akhil Mathew
  • 29,810
  • 6
  • 87
  • 139
36
votes
3 answers

Under the Curry-Howard correspondence or loosely "proofs-as-programs", do we also have "programs-as-proofs" and what would some arb. program prove?

Curry-Howard Correspondence Now, pick any 5-30 line algorithm in some programming language of choice. What is the program proving? Or, do we not also have "programs-as-proofs"? Take the GCD algorithm written in pseudo-code: function gcd(a, b) …
1
2 3
99 100