A function f is computable =def there is an algorithm that computes f;
i.e., there is an algorithm A such that for all input i, A(i)=f(i)
and A specifies how f's input and output are related.
algorithm for P =def a finite procedure (i.e., a finite set of
instructions) for solving P that is:
unambiguous for the computer or human who will execute it;
i.e., all steps of the procedure must be clear and well-defined for the
executor, and
effective;
i.e., it must eventually halt,
and it must output a correct solution to P.
Turing Machines
history of term "computable"
Turing's Thesis: a function is computable iff it is TM-computable.
Church's Thesis: a function is computable iff it is lambda-definable (= recursive)
What is a computer? -- II
Searle, "Is the Brain a Digital Computer?"
Yes; because everything is a digital computer
Hayes et al. symposium
computer = machine that can take as I/P
patterns that describe changes to themselves
& other patterns, and that causes the
described changes to occur
What is an algorithm? -- II
Preston on difference between recipes and algorithms
recipes are more like specifications
Cleland:
Mundane procedures (causal processes,
including recipes) are effective procedures
that are not TM-computable
Effectiveness of mundane procedures depends on external
world
What is hypercomputation?
=def computation of functions that can't be TM-computed
Turing's "oracle" machines
Putnam's & Gold's "trial & error" machines (TM, but last answer counts)
Kugel 2002: Putnam-Gold machines may be needed for AI to succeed
What is a computer program?
What is implementation?
Chalmers: implementation is isomorphism
argument against Searle
a computer is an implementation
of a computation or of a UTM
Rapaport: implementation is semantic interpretation
of an Abstraction in some medium
syntax vs. semantics of formal systems
Are programs scientific theories?
programs are (a language for expressing) theories,
which can then be their own models
theory vs. model, simulation vs. real thing,
simulation vs. emulation
philosophical theories of scientific explanation
philosophical theories of scientific models
What is software?
Moor: software is a computer program that is
changeable by a person
Suber: software is syntactic form
Colburn: software is a concrete abstraction
has a "medium of description": text in
a formal language (abstraction)
has a "medium of execution": circuits &
semiconductors (concrete)
Can software be patented? Or should it be copyrighted?
copyrights vs. patents
Newell: need to devise good models
("ontologies") of algorithms & other CS entities
Koepsell: need to revise the models of legal protection.
Can programs be verified?
Smith, "Limits of Correctness"
There is a gap between the world and our models of it.
Computers rely on models of the models,
but must act in the real world.
Fetzer: programs can't be verified
...because you can't logically prove
that causal systems won't fail.
at best, can verify an algorithm
Philosophy of AI: Could we build artificial intelligences?
Turing Test:
A computer will be said to be able to
think if we cannot distinguish a computer's cognitive behavior
from a human's
Searle's Chinese Room Argument:
A computer could pass a Turing Test without
really being able to think.
Rapaport's way out of the Chinese Room:
Syntax can suffice for semantic interpretation
of the kind needed for computational cognition
Computer Ethics
What is ethics?
Moor on "what is computer ethics":
Need to have
metaphysical/ontological theories of computers and related phenomena
in order to answer ethical and social questions about their nature
and use.
In particular, computers are "logically malleable"
Moor: "Are there decisions computers should
never make?"
No, at least, not as long as their track record is better than that of humans
But it's up to us to accept/reject their decisions
Friedman & Kahn: Yes, because only humans are capable of
being moral agents
But: "to err is human"--the case of the
airline crash caused by following a human's decision instead of a
computer's.
Should we build artificial intelligences?
Lem: We may someday have to pull the plug
Lachat: Maybe we shouldn't even begin
But considering the possibilities
enables us to deal with important issues: