Computer Science: A Very Short Introduction
Latest Publications


TOTAL DOCUMENTS

8
(FIVE YEARS 0)

H-INDEX

0
(FIVE YEARS 0)

Published By Oxford University Press

9780198733461, 9780191798146

Author(s):  
Subrata Dasgupta

Many ordinary problems and everyday activities are not conducive to algorithmic solutions. Yet, people do perform these tasks and solve such problems, so what other computational means are available to perform such tasks? The answer is to resort to a mode of computing that deploys heuristics—rules, precepts, principles, hypotheses based on common sense, experience, judgement, analogies, informed guesses, etc., which offer promise but are not guaranteed to solve problems. Heuristic computing encompasses both heuristic search and heuristic algorithms. ‘Heuristic computing’ explains a meta-heuristic called ‘satisficing’; the difference between exact and heuristic algorithms; how heuristics is used in artificial intelligence; weak and strong methods; and how to interpret heuristic rules.


Author(s):  
Subrata Dasgupta

The Epilogue concludes that although computer science is a science of the artificial, one centred on symbol processing, it also serves as a bridge between the world of computational artefacts and the natural world, specifically, that of biological molecules, human cognition, and neuronal processes. Could it be that computation embraces both the natural and artificial and is, therefore, a universal science? What is certain is that computer science has given us a remarkably distinctive way of perceiving, thinking about, and solving a breathtakingly broad spectrum of problems—spanning natural, social, cultural, technological, and economic realms.


Author(s):  
Subrata Dasgupta

The modern computer is a hierarchically organized system of computational artefacts. Inventing, understanding, and applying rules and principles of hierarchy is a subdiscipline of computer science. ‘Computational artefacts’ explains the concepts of compositional hierarchy, the abstraction/refinement principle, and hierarchy by construction. There are three classes of computational artefacts—abstract, material, and liminal. An important example of an abstract artefact is the Turing machine. Sciences involving artefacts are sciences of the artificial, entailing the study of the relationship between means and ends. The ‘science’ in computer science is, thus, a science of means and ends. It asks: how can a computational artefact demonstrably achieve a given human need, goal, or purpose?


Author(s):  
Subrata Dasgupta

Algorithmic thinking is sometimes not enough—programming is also required. A computer program is the specification of a desired computation in a language communicable to physical computers. The act of constructing such computations is called programming and the languages for specifying programs are called programming languages. Programs are liminal artefacts and the consequences of this liminality are both huge and controversial, including the development of artificial intelligence (AI) and cognitive science. ‘The art, science, and engineering of programming’ explains language, thought, and reality in programming; the concepts and categories of programming languages; and programming as art, as a mathematical science, and as software engineering.


Author(s):  
Subrata Dasgupta

What is computational thinking? The AI researcher Paul Rosenbloom’s interpretation focuses on two relationships: interaction (a ‘reciprocal action, effect or influence’ between two entities); and implementation (to ‘put into effect’ a system A at a higher abstraction level in terms of interacting processes within a system B at a lower level of abstraction). ‘Computational thinking’ explains how computational thinking entails more than analytical and problem solving skills. It encompasses a way of imagining, by way of seeing analogies and constructing metaphors. The influence of computational thinking on cognitive psychology and connectionism, and the emergence of cognitive science and its impact on understanding human creativity and molecular information processing are discussed.


Author(s):  
Subrata Dasgupta

The physical computer is itself complex enough to have its own internal hierarchy, designed and described at multiple levels of abstraction. A significant aspect of this hierarchy is the distinction of the physical computer, as a symbol processing computational artefact, from the physical components obeying the laws of physics realizing this artefact: the computer’s architecture. ‘The discipline of computer architecture’ describes the areas of computer science concerned with design, descriptions, analysis, and study of the logical organization, behaviour, and functional elements of a physical computer. Outer and inner architectures are explained along with the control unit, microprogramming, and parallel computing. Computer architecture is an experimental, heuristic science of the artificial.


Author(s):  
Subrata Dasgupta

Algorithms are at the epicentre of computer science—thinking computationally is forming the habit of algorithmic thinking. In order for a procedure to qualify as an algorithm, it must possess the following attributes: finiteness, definiteness, effectiveness, and having one or more inputs and one or more outputs. Algorithms are determinate, abstract artifacts, and procedural knowledge. ‘Algorithmic thinking’ explains the process of designing algorithms, the ‘goodness’ of algorithms as utilitarian artefacts, and why the aesthetics of algorithms matter. The performance of algorithms can be estimated in terms of time (or space) complexity. A computational problem is intractable if all known algorithms to solve the problem are of at least exponential time complexity.


Author(s):  
Subrata Dasgupta

Computer science is the study of computers and their associated phenomena, but what are ‘computers’ and ‘associated phenomena’? ‘The “stuff” of computing’ explains that a computer is an automaton—an artefact designed to simulate and imitate certain kinds of human thought processes. The fundamental stuff of computer science is information and an alternative term for computing is ‘information processing’. This information can be ‘meaningless’ or ‘meaningful’. The unit of information in information theory is the bit (short for ‘binary digit’) and a byte consists of eight bits. But is information knowledge or data? Information, knowledge, and data can all be expressed by symbol structures and so computing is symbol processing.


Sign in / Sign up

Export Citation Format

Share Document