Upload
andre-vellino
View
355
Download
0
Embed Size (px)
Citation preview
Why Machines Can’t Think (logically)
André [email protected]
Carleton UniversityCognitive Science Program
2
Outlinen General Question:
What do Logic, Complexity Theory and Automated Theorem Proving have to say about the question “can machines think?” (or at least, “can machines reason?”)
n The role of “Logics” in AIn Results in the Complexity of Automated
Theorem Proving Proceduresn Why Machines Can’t Think: The Argumentn The Logicist Response
3
Role of “Logics” in AI“[AI is] the study of the computations that make it possible to perceive, reason and act”
Pat Winston
Role of “Logics” is to:n (a) to provide a formal system powerful
enough to model various representations of knowledge, belief and action;
n (b) to characterize mechanisms that specify permissible (aka “valid”) inferences.
4
Examples of “Logics” for AIn 2-valued Propositional Calculusn First Order Predicate Calculusn Modal Logic (possibility and necessity)n Deontic Logic (permissions and obligations)n Relevance Logic (logic of “relevant” implication)n Conditional Logic (counterfactuals)n Default Logic (“common sense” reasoning)n Epistemic Logic (beliefs and knowledge)n Description Logics (knowledge representation)
5
Example: Defeasible Reasoning
if the traffic light is red then stop (defeasible rule)[in the absence of any further information, i.e. under normal conditions]
Red ⊃ Stop
if the light for going straight is green, then go (straight) (absolute rule)
Green → Go
6
Expressive Power of a Logic
n Depends on the complexity of the semantics.
Expressive power of model theory
Other 1st-order Theories
2-valued Propositional Calculus
1st-order Predicate Calculus
Other Propositional Calculi
7
Propositional Calculus (PC)PC is the language whose well-formed formulas are composed of a finite combination of:Logical constants:
{ ∨, &, ≡, → }
An infinite set of atomic propositional variables: {a, b, c,..., a1, b1, c1, ....}.e.g. (p → (q → p)) & ((~a ∨ b) ≡ (a → b))
Without Loss of Generality, consider only formulas in Conjunctive Normal Form or “sets of clauses” (clauses are disjunctions)
e.g. {((p ∨ q ∨ r), (~p ∨ s), (r ∨ t)}
8
Satisfiability / Unsatisfiability
a set of clauses Σ = {C1, C2, ...Cn} is satisfiable if ∃ an assignment of truth values to literals in Σ such that
C1 & C2 & ...&Cn is true SAT
a set of clauses Σ = {C1, C2, ...Cn} is unsatisfiable if no
assignments of truth values to literals in Σ are such that
C1 & C2 & ...&Cn is true Co-SAT
9
Theorem Provers for co-SAT
n To prove T is a tautology, assume ~T and prove that ∅ follows using a theorem prover such as:n Truth Tables (Wittgenstein / Frege / Carroll)n Semantic Tableaux (Beth)n Resolution (Robinson / Davis-Putnam)n Sequent Calculus (Gentzen Systems)n Axioms w/ substitution (Frege Systems)
10
Example 1: Semantic Tableaux
Simple example: prove the inconsistency of
(a v b) & (e v f) & (~a v b) & ~b
i.e. {ab, ef,~ab, ~b}
bX
~a
~bX
bX
~a ~a bX
~aX
~cX~b
ϑ
a b
~bX
fe
11
Example 2: ResolutionResolution:
a ∪ Β & ~a ∪ C
∴ Β ∪ CFor the set of clauses {ab, ef,~ab,~b}
1) ab premise2) ~ab premise3) ~b premise4) b by resolving on a in 1 & 25) ∅ by resolving on b in 4 & 3
12
Computability, Decidability and Feasibility
n Computablen There exists a Turing Machine (“decision
procedure” / “algorithm”) that halts.
n Decidablen Given {Σ, T} it is computable whether Σ |− T or
whether Σ |− ∼ T
n Feasibly Decidablen Decidable by a Turing Machine in polynomial time.
13
Polynomial vs. Exponential
n Polynomial complexityn Time (space) grows as a function nk where
n is proportional to the size of the input and k is a constant
n Exponential complexityn Time (space) grows as a function kn where
n is proportional to the size of the input and k is a constant
14
The Class Pn P is the class of languages recognizable by a
deterministic Turing Machine in polynomial time.
Example:n tautology (falsifiability) of propositional biconditionals
without negation ((a ≡ b) ≡ (c ≡ b)) ≡ (a ≡ c)
n Integer divisibility (indivisibility) by 2n co-P is the complement of P. P = co-P
15
The Class NP / NP-CompleteNP is the class of languages recognizable by a non-deterministicTuring machine in polynomial time
e.g.:all problems in Pall "guess and verify" problems such as
SAT, 3-SATTraveling Salesman, Subgraph Isomorphism
co-NP is the class of languages in the complement of NPe.g.: co-SAT
L is in NP-complete if, for every problem L' in NP there exists a polynomial time transformation from L' to L.
16
P
NP
NP-complete
Open Problem: is P =NP ?
n Steve Cook (1971)
P
NP
NP-complete
NP-I
P = NP ?oror
17
Strategy for Proof that P ≠ NP
if P = NP then co-NP = NP (since co-P = P )
∴ co-NP ≠ NP implies P ≠ NP
∃ an efficient proof method for TAUT iff co-NP = NP.
∴ if no theorem proving procedure can produce proofs for all tautologies that are a polynomial function of the length of the tautology (i.e. the lengths of all proofs for theorems are exponentially long), then P ≠ NP.
18
Summary
n Verify SAT Pp ∨ q & r ∨ ~qT F T T
n Find SAT NPp ∨ q & r ∨ ~q? ? ? ?
n Prove UNSAT co-NPa ∨ b & ~a ∨ b & ~b
19
Complexity vs. AI
n Complexity Game (co-NP=NP?)n To find “hard examples” for increasingly
general propositional theorem proving procedures.
n AI Reasoning Game n To find “efficient” and practical theorem-
proving procedures in Logics for AI
20
Hard Problems for Resolutionn Pigeon Hole Clauses (Haken ‘85)
n balls can't fit into n-1 holes
~ball_1_is_in_hole_1 v ~ball_2_is_in_hole_1~ball_1_is_in_hole_1 v ~ball_3_is_in_hole_1~ball_2_is_in_hole_1 v ~ball_3_is_in_hole_1~ball_1_is_in_hole_2 v ~ball_2_is_in_hole_2~ball_1_is_in_hole_2 v ~ball_3_is_in_hole_2~ball_2_is_in_hole_2 v ~ball_3_is_in_hole_2
each hole can fit only one ball
n x (n-1)2 clauses
ball_1_is_in_hole_1 v ball_1_is_in_hole_2ball_2_is_in_hole_1 v ball_2_is_in_hole_2ball_3_is_in_hole_1 v ball_3_is_in_hole_2
3 balls can fit into 2 holes
n clauses
22
Search-Space vs. Proof Length
n For problems in NP (SAT), the search space is exponentially large but the proof is polynomial
n For problems in Co-NP (co-SAT), the minimal length proof is exponential and the search space even larger
23
Why Machines Can’t Think
n If (any) “reasoning” is done by “logical rule-following” and
n If any problems that people solve (feasibly) can’t be solved (feasibly) by following rules of logic
Then, eithern people don't reason logicallyorn logic is no foundation for artificial intelligence
24
A Few Responses
1) Worst-case complexity is irrelevant because average-case complexity is what matters in practice;
2) Exponential growth is irrelevant if the exponent is small for all realistic inputs
3) There are efficient theorem proving methods that are sound but incomplete;
4) Computational complexity can be overcome by increasing the power of the logic;
Selman, Mitchell & Levesque ‘96
26
“Exponential” isn’t bad if exponent is small
27
Devise Sound, Tractable but Incomplete ATPs
n Vivid Reasoning (Levesque)n Wants to make “believers out of computers” and
devise incomplete but tractable logics that are psychologically realistic (e.g. capture the logic of “mental models” theory – Johnson-Laird)
n Bounded Rationality (Cherniak)n “Rational agents” need to use “a better than
random, but not perfect, gambling strategy for identifying sound inferences”
28
Use “Stronger” Logics
n People don’t map ordinary problems (e.g. pigeon-hole problem) into languages (PC) that are computationally hard
n Use a different, more powerful logic in which propositionally-hard-to-prove formulae are easy to prove (e.g. extended resolution)n Problem: punt the exponential-length-of-proof
constraint to a search-for-a-short-proof problem
29
Concluding Remarks
n If “language of thought” has a structure that can represented as or even modeled by a logic then you need to characterize what is “infeasibly computable” about it and why;
n If you can understand what inferences are “cognitively hard” for people experimentally, then you can test hypotheses about what “logics” are being used in people to draw inferences.