Wednesday, 9 February 2011

Fundamentals Concepts in Computer Science: Computability

There is a nice brief introduction to computability over at Good Math, Bad Math. My research has increasingly moved in the direction of this area of formal computer science over the last couple of years as I have developed the Dialogue Game Description Language, a domain specific language underpinned by a formal grammar expressed in EBNF and used to describe inter-agent communication protocols.

From my perspective, if you are interested in finding out more about what Dijkstra meant when he stated that "computer science is no more about computers than astronomy is about telescopes" then this article is a good place to start. Computer science is the study of the theoretical foundations of information and computation as well as the more practically oriented implementation and application aspects. It is these theoretical foundations that computability is concerned with. More specifically computability is a sub-branch of the theory of computation an area of computer science that addresses questions like "what problems can we solve using a computing device?" and "if we can solve this problem on a computer, how efficiently can we do so?".

No comments:

Post a Comment