Skip to main content

Currently Skimming:

Adapting to Computer Science
Pages 141-170

The Chapter Skim interface presents what we've algorithmically identified as the most significant single chunk of text within every page in the chapter.
Select key terms on the right to highlight them within pages of the chapter.


From page 141...
... . We are also familiar with the enormously intricate prosthetic devices mathematicians added to their computational effectors, the general symbol manipulators called computers.
From page 142...
... Some knowledge-oriented disciplines are mainly concerned with producing theories In what we might call their "object language," reserving their programmatic statements to the discussion of their methodology, in what we might call their "meta-language"; examples are pure mathematics (where We methodological language is that of logical programs) and the empirical sciences (where the methodological language is that of experimental programs)
From page 143...
... To see how engineers must adapt to computer science, we wart first see how the engineering aspect of mathematics was originally computational. Then we will see how Hose computational aspects of mathematics developed to involve not only physical engineering but also psycho-linguistic aspects.
From page 144...
... Interested not only in pure mathematics He fundamental theorem of algebra, number theory, and differential geometry but also in applied mathematics (astronomy and physics) and in symbolic invention and new extensions to computation-the congruence notation in number theory, algorithms for solving systems of linear equations, the method of least squares, and error statistics Gauss was a formidable calculator and programmer.
From page 145...
... On the other hand, he described a formal algebra of logical "and," "or," and "not" as well as predicted the future formal logical algebra that he called a "universal characteristic. " In any event, by the end of Me eighteenth century the informal concepts of "infinitesimal," "infinite summation," "continued," and "differentiability" became disturbingly paradoxical; and yet they had such fertile applications to physics that something had to be done to verify what could be verified in the symbolic procedures and to formalize them so as to safeguard them from paradoxical misuse.
From page 146...
... The law of thought, modus pollens, is not in the Boolean expression language; rather, it is a valid procedure In a prescriptive meta-language that Balks about the production of proofs in the Boolean object language. The tautologous symbolic expression had been designed to symbolize modus ponens, and the symbol was confused with what it symbolized.
From page 147...
... . But Be symbolic procedures suggested at meta-language symbol level might not have valid meaning in the operations at object language level.
From page 148...
... Now general symbol manipulation includes the pragmatic effects of deliberate ambiguity caused by shifting interpretation-for example, between object language and meta-language. General computer programming must therefore include what mathematical logic programming must forbid.
From page 149...
... The development of He physical aids and their psycho-linguistic aspects into machines; He physical aids development is the obvious engineering aspect, He psycho-linguistic the more subtle one; The theoretical aspect beginning with mathematics as a whole, but nay ng down to formal proofs, and then to formal logic itself; and Forming a spiral, the psycho-linguistic development of naming and specifying the data structures (at first, He number representation systems) and the expressions of the procedures for handling diem (their programs or algorithms)
From page 150...
... This second phrase structure language used the position of the numeral to represent the position of the wire and thereby avoided the necessity of using a larger and larger alphabet for more and more wires. Moreover, the algorithm for addition in this language had a considerably simpler desa~pnon than did that for addinon In the Roman numeral phrase structure language.
From page 151...
... Then, through the Renaissance, it resulted in the invention of the next imaginary class, the negative numbers, yielding the solution to all equations of the form ax + b = 0, except, of course, for a = 0. Then a unified solution to all quadratic equations-ax2 + bx + c = Was found as a function of a, b, and c, provided the invention of numbers was extended to include another imaginary class, first called imaginary numbers and finally accepted as the "complex numbers"; and the unified solution called for addition, subtraction, multiplication, division, and, die Pythagorean crisis having long been understood (?
From page 152...
... In this class, some years later, was Markov's theory of algorithms. The second approach presented formalization s of the meta-language of such syntactical symbol manipulation; the characters in the meta-language had meanings (semantic content)
From page 153...
... Rutishauser even contemplated making the programn.ung process itself pardy automatic, foreseeing the extension of the meaning of the word "computation" that the succession of generations of machines were about to add to mathematical general symbol manipulation, namely the construction of computer programs themselves. The first electronic, general purpose calculating machine, the ENIAC, was at first programmed for special problems by hand-plugg~ng tile interconnection of the registers from which and into which data were to be moved and operated on.
From page 154...
... This led to dynamic storage allocation and advanced the development of the area called artificial intelligence. Mathematical linguistics introduced the Chomsky hierarchy of phrase structure languages (Luce et al., 1963)
From page 155...
... recursively defined functions in such higher-level programming languages as ALGOL and LISP and (2) the unpredictable storage necessary in the automatic simulation of human problem solving in the new area of artificial intelligence.
From page 156...
... In summary, the word "computation" now means "any precisely specified process of symbol manipulation," even pictorial. When restricted to computer progIalrmiing, the semantics (i.e., the meanings of symbols)
From page 157...
... Definition matrix for the computing discipline. and logical symbol manipulation, together with the modern threads of electronics and electronic representation of information, that gave birth to the discipline of computing." Each of these nine areas has "substantial design and implementation issues" in the purview of engineering.
From page 158...
... Because of the professional change syndrome and the solved-problem syndrome the variety of types of engineering of Be past and present is due to the variety of knowledge-or~ented and actiononented disciplines they bndge. Essentially an the engineering types have had their share of applied mathematics, both In their theory and in their computational practice.
From page 159...
... 1982. Elementary Computability, Formal Languages, and Automata.
From page 160...
... Penzias, A
From page 161...
... In the 1920, Bush constructed an electronic analog computer for solving general systems of differential equations. In the same period, electromechanical calculating machines capable of addition, subtraction, multiplication, division, and square root computation became available.
From page 162...
... 1.1 Theory Major elements of theory in the area of algorithms and data structures are: 1. Computability theory, which defines what machines can and cannot do.
From page 163...
... Parallel and distributed algorithms; methods of partitioning problems into tasks Hat can be executed in separate processors. 1.3 Design Major elements of design and experimentation in the area of algorithms and data structures are: 1.
From page 164...
... 2.3 Design Major elements of design and experimentation in the area of programming languages are: 1. Specific languages that bring together a particular abstract machine (semantics)
From page 165...
... 4.3 Design Major elements of design and experimentation in the area of numerical and symbolic computation are: 1. High-level problem formulation systems such as CHUM and WEB.
From page 166...
... axiomatic semantics, and cognitive psychology. 6.2 Abstraction Major elements of abstraction in the area of software methodology and tools are: Specification methods, such as predicate transformers, programming calculi, abstract data types, and Floyd-Hoare axiomatic notations.
From page 167...
... 6.3 Design Major elements of design and experimentation in the area of software methodology and tools are: 1. Specification languages (e.g., PSL 2, IMA JO)
From page 168...
... Models of human memory, autonomous learning, and other elements of robot systems. 8.3 Design Major elements of design and experimentation in artificial intelligence and robotics include: 2.
From page 169...
... productivity. 9.3 Design Major elements of design and expenmenwion in the area of human-compu~ communication are: 1.
From page 170...
... Structure and Interpretation of Computer Programs. MIT Press, Cambridge, Mass., 1983 2.


This material may be derived from roughly machine-read images, and so is provided only to facilitate research.
More information on Chapter Skim is available.