Why machines can't think (logically)

Post on 28-Jun-2015

356 views 0 download

Tags:

Transcript of Why machines can't think (logically)

Why Machines Can’t Think (logically)

André Vellinovellino@sympatico.ca

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.