Deduction and Induction. Stephan Schulz. The Inference Engine. Machine Learning. A Match Made in Heaven

Size: px
Start display at page:

Download "Deduction and Induction. Stephan Schulz. The Inference Engine. Machine Learning. A Match Made in Heaven"

Transcription

1 Deduction and Induction A Match Made in Heaven Stephan Schulz The Inference Engine Machine Learning

2 Deduction and Induction A Match Made in Heaven Stephan Schulz or a Deal with the Devil? The Inference Engine Machine Learning

3 Agenda Search and choice points in saturating theorem proving Basic questions about learning Learning from performance data Classification and heuristic selection Parameters for clause selection Learning from proofs and search graphs Proof extraction Learning clause evaluations (?) Conclusion 2

4 Theorem Proving: Big Picture Real World Problem Formalized Problem 8X : human(x)! mortal(x) 8X : philosopher(x)! human(x) philosopher(socrates)? = mortal(socrates) Proof or Countermodel or Timeout ATP Proof Search 3

5 Contradiction and Saturation Proof by contradiction Assume negation of conjecture Show that axioms and negated conjecture imply falsity Saturation Convert problem to Clause Normal Form Systematically enumerate logical consequences of axioms and negated conjecture Goal: Explicit contradiction (empty clause) Redundancy elimination Use contracting inferences to simplify or eliminate some clauses Formula set Clausifier Equisatisfiable clause set 4

6 Contradiction and Saturation Proof by contradiction Assume negation of conjecture Show that axioms and negated conjecture imply falsity Saturation Convert problem to Clause Normal Form Systematically enumerate logical consequences of axioms and negated conjecture Goal: Explicit contradiction (empty clause) Redundancy elimination Use contracting inferences to simplify or eliminate some clauses Search control problem: How and in which order do we enumerate consequences? Formula set Clausifier Equisatisfiable clause set 4

7 Proof Search and Choice Points First-order logic is semi-decidable Provers search for proof in infinite space... of possible derivations... of possible consequences Major choice points of Superposition calculus: Term ordering (which terms are bigger) (Negative) literal selection Selection of clauses for inferences (with the given clause algorithm) 5

8 Term Ordering and Literal Selection Negative Superposition with selection C s t D u v (C D u [p t] v) σ if σ = mgu(u p, s) and (s t) σ is -maximal in (C s t) σ and s is -maximal in (s t) σ and u v is selected in D u v and u is -maximal in (s t) σ Choice points: is a ground-total rewrite ordering Consistent throughout the proof search I.e. in practice determined up-front Any negative literal can be selected Current practice: Fixed scheme picked up-front 6

9 The Given-Clause Algorithm g=? P (processed clauses) Aim: Move everything from U to P g U (unprocessed clauses) 7

10 The Given-Clause Algorithm g=? Generate g P (processed clauses) Aim: Move everything from U to P Invariant: All generating inferences with premises from P have been performed U (unprocessed clauses) 7

11 The Given-Clause Algorithm g=? g Simplify P (processed clauses) Generate Simplifiable? Aim: Move everything from U to P Invariant: All generating inferences with premises from P have been performed Invariant: P is interreduced U (unprocessed clauses) 7

12 The Given-Clause Algorithm g=? g Simplify P (processed clauses) Generate Simplifiable? U (unprocessed clauses) Cheap Simplify Aim: Move everything from U to P Invariant: All generating inferences with premises from P have been performed Invariant: P is interreduced Clauses added to U are simplified with respect to P 7

13 Choice Point Clause Selection P (processed clauses) g=? Generate Simplifiable? g Cheap Simplify Simplify U (unprocessed clauses) U (unprocessed clauses) 8

14 Choice Point Clause Selection P (processed clauses) g=? Generate Simplifiable? g Cheap Simplify Simplify Choice Point U (unprocessed clauses) U (unprocessed clauses) 8

15 Induction for Deduction Question 1: What to learn from? Performance data (prover is a black box) Proofs (only final result of search is visible) Proof search graphs (most of search is visible) Question 2: What to learn? Here: Learn strategy selection Here: Learn parameterization for clause selection heuristics Here: Learn new clause evaluation functions...? 9

16 Automatic Strategy Selection 10

17 Strategy Selection Definition: A strategy is a collection of all search control parameters Term ordering Literal selection scheme Clause selection heuristic... (minor parameters) 11

18 Strategy Selection Definition: A strategy is a collection of all search control parameters Term ordering Literal selection scheme Clause selection heuristic... (minor parameters) Observation: Different problems are simple for different strategies Question: Can we determine a good heuristic (or set of heuristics) up-front? Original: Manually coded automatic modes Based on developer intuition/insight/experience Limited success, high maintenance State of the art: Automatic generation of automatic modes 11

19 Learning Heuristic Selection TPTP problem library 12

20 Learning Heuristic Selection TPTP problem library 12

21 Learning Heuristic Selection Feature-based classification TPTP problem library 12

22 Learning Heuristic Selection Feature-based classification TPTP problem library Assign strategies to classes based on collected performance data from previous experiments Simplest: Always pick best strategy in class If no data, pick globally best 12

23 Learning Heuristic Selection Feature-based classification TPTP problem library Assign strategies to classes based on collected performance data from previous experiments Simplest: Always pick best strategy in class If no data, pick globally best Example features Number of clausse Arity of symbols Unit/Horn/Non-horn 12

24 Auto Mode Performance E 1.8 Auto E 1.8 Best TPTP CNF&FOF problems 13

25 A Caveat Feature-based classification TPTP problem library Assign strategies to classes based on collected performance data from previous experiments Simplest: Always pick best strategy in class If no data, pick globally best Example features Number of clausse Arity of symbols Unit/Horn/Non-horn 14

26 A Caveat Feature-based classification TPTP problem library Assign strategies to classes based on collected performance data from previous experiments Simplest: Always pick best strategy in class If no data, pick globally best Example features Number of clausse Arity of symbols Unit/Horn/Non-horn Features based on developer intuition insight experience 14

27 : me Current Work: Learning Classification.. Characterize problems by performance vectors Which strategy solved the problem how fast? Unsupervised clustering of problems based om performance Each cluster contains problems on which the Literature would be same strategies perform well Something on clustering Feature extraction: Try to find characterization of clusters Quite ford for a stat! Thanks E.g. based on feature set E.g. using nearest-neighbour approaches My Bachelor Student Ayatallah just started work on this topic - results in 6 months structure in the input data and automatically group them are many clustering algorithms. One of the most popular is K-Means algorithm. More reading and understanding of for the clustering algorithm needed will decide which algor Figure 2: Clustering Example food here, e.g. the E - paper S C 1.8 a 15

28 Learning parameterization for clause selection heuristics 16

29 Reminder: Choice Point Clause Selection P (processed clauses) g=? Generate Simplifiable? g Cheap Simplify Simplify Choice Point U (unprocessed clauses) U (unprocessed clauses) 17

30 Basic Approaches to Clause Selection Symbol counting Pick smallest clause in U {f (X ) a, P(a) $true, g(y ) = f (a)} = 10 FIFO Always pick oldest clause in U Flexible weighting Symbol counting, but give different weight to different symbols E.g. lower weight to symbols from goal! E.g. higher weight for symbols in inference positions Combinations Interleave different schemes 18

31 Given-Clause Selection in E (1) Domain Specific Language (DSL) for clause selection scheme Arbitrary number of priority queues Each queue ordered by: Unparameterized priority function Parameterized heuristic evaluation function Clauses picked using weighted round-robin scheme Example (5 queues): (1*ConjectureRelativeSymbolWeight(SimulateSOS, 0.5, 100, 100, 100, 100, 1.5, 1.5, 1), 4*ConjectureRelativeSymbolWeight(ConstPrio, 0.1, 100, 100, 100, 100,1.5, 1.5, 1.5), 1*FIFOWeight(PreferProcessed), 1*ConjectureRelativeSymbolWeight(PreferNonGoals, 0.5, 100, 100, 100,100, 1.5, 1.5, 1), 4*Refinedweight(SimulateSOS,3,2,2,1.5,2)) 19

32 Given-Clause Selection in E (2) Example clause selection heuristic (1*ConjectureRelativeSymbolWeight(SimulateSOS, 0.5, 100, 100, 100, 100, 1.5, 1.5, 1), 4*ConjectureRelativeSymbolWeight(ConstPrio, 0.1, 100, 100, 100, 100,1.5, 1.5, 1.5), 1*FIFOWeight(PreferProcessed), 1*ConjectureRelativeSymbolWeight(PreferNonGoals, 0.5, 100, 100, 100,100, 1.5, 1.5, 1), 4*Refinedweight(SimulateSOS,3,2,2,1.5,2)) Infinitely many possibilities Several integer and floating point parameters per evaluation function Arbitrary combinations of individual evaluation functions 20

33 Given-Clause Selection in E (2) Example clause selection heuristic (1*ConjectureRelativeSymbolWeight(SimulateSOS, 0.5, 100, 100, 100, 100, 1.5, 1.5, 1), 4*ConjectureRelativeSymbolWeight(ConstPrio, 0.1, 100, 100, 100, 100,1.5, 1.5, 1.5), 1*FIFOWeight(PreferProcessed), 1*ConjectureRelativeSymbolWeight(PreferNonGoals, 0.5, 100, 100, 100,100, 1.5, 1.5, 1), 4*Refinedweight(SimulateSOS,3,2,2,1.5,2)) Infinitely many possibilities Several integer and floating point parameters per evaluation function Arbitrary combinations of individual evaluation functions How do we find good clause selection heuristics (without relying on developer intuition, insight, experience)? 20

34 Genetic Algorithms Optimization based on evolving population of individuals Optimization is organized in generations In each generation, individuals compete to reproduce Each individual is a candidate solution (i.e. search heuristic) Individuals are assigned a fitness score based on performance More fit individuals are more likely to reproduce into the next generation The next generation: Mutation - randomly modify individual Crossover - create new individual from two parents Survivors 21

35 Applying Genetic Algorithms to Clause Selection Encoding: DSL translated into S-Expressions Mutation: Randomly modify parameters of one heuristic Crossover: Compose individual by randomly inserting evaluation functions from both parents If the same generic evaluation function occurs in both, randomly exchange parameters Fitness: How many medium difficulty problems are solved... on smallish sample set... with short time limit Selection: Tournament selection (n 5) 22

36 Evolution in Action 120 Fitness over generations Fitness (solved problems) Generations 23

37 (Very) Preliminary Results Evolution finds good clause selection heuristics from random initial population Convergence in 200 generations Time per generation 45 CPU hours minutes on 24 core server Best evolved heuristic beats best conventional heuristic Evaluation on problems from TPTP second time limit, 2.6GHz Intel Xeon machines, enough memory Evolved: 8814 solutions found Manual: 8750 solutions found Unique solutions: 466 evolved vs. 386 manual 24

38 Current Work: Diversity Beats Ferocity 25

39 Current Work: Diversity Beats Ferocity 25

40 Current Work: Diversity Beats Ferocity 25

41 Current Work: Diversity Beats Ferocity 25

42 Current Work: Diversity Beats Ferocity 25

43 Current Work: Diversity Beats Ferocity 25

44 Current Work: Diversity Beats Ferocity 25

45 Current Work: Diversity Beats Ferocity 25

46 Current Work: Diversity Beats Ferocity 25

47 Current Work: Diversity Beats Ferocity Idea: Modify fitness function Problems are prey Individual heuristics are predators If several predators catch the same prey, they have to share the benefit = problems solved by no or few heuristics are more valuable = Force diversity of the ecosystem 26

48 Current Work: Diversity Beats Ferocity Idea: Modify fitness function Problems are prey Individual heuristics are predators If several predators catch the same prey, they have to share the benefit = problems solved by no or few heuristics are more valuable = Force diversity of the ecosystem My Bachelor Student Ahmed just started work on this topic - results in 6 months 26

49 Proof Extraction and Learning 27

50 c8 c9 c30 c3 c24 c6 c21 c2 c13 c28 c10 c26 c29 c1 c17 c27 c0 c16 c25 c19 c22 c12 c4 c14 c18 c20 c11 c23 c5 c15 c7 Learning from Proofs and Proof Search Graphs Intuition: Previous proof searches are useful to guide new proof attempts Naive approach: Clauses in the proof tree are positive examples (All other clauses are negative examples) Initial attempts DISCOUNT (Schulz 1995, Schulz&Denzinger 1996) - UEQ, patterns E (Schulz 2000, 2001) - CNF, patterns Overall, modest successes Mostly with positive examples only - compare Otter s hints 28

51 Problems and Solutions Problem: Search protocol size Initial approach: Store all intermediate steps Bad time and space performance Borderline impossible in 2000, still hard today Problem: Not all examples represent search decisions Many intermediate results Also: Vastly unbalanced ratio of positive/negative examples Common solution: Internal proof object (re-)construction Compact representation of the search graph Actually evaluated and picked clauses are recorded Minimal overhead (0.24%) in time Small overhead in memory (due to structure sharing and early discarding of many redundant clauses) 29

52 Proof Generation with Limited Archiving DISCOUNT loop: Only clauses in P are used for inferences U is subject to simplification, but is passive Only clauses in P need to be available in the proof tree g= g? Simplify P (processed clauses) Generate Simplifiable? Cheap Simplify U (unprocessed clauses) 30

53 g=? Simplify Generate Simplifiable? Cheap Simplify Proof Generation with Limited Archiving DISCOUNT loop: Only clauses in P are used for inferences U is subject to simplification, but is passive Only clauses in P need to be available in the proof tree Backward simplification is rare Only clauses in P can be backwards-simplified (and P is small) Heuristically, newer clauses are larger (and big clauses rarely simplify small clauses) g P (processed clauses) U (unprocessed clauses) U (unprocessed clauses) 30

54 g=? Simplify Generate Simplifiable? Cheap Simplify Proof Generation with Limited Archiving DISCOUNT loop: Only clauses in P are used for inferences U is subject to simplification, but is passive Only clauses in P need to be available in the proof tree Backward simplification is rare Only clauses in P can be backwards-simplified (and P is small) Heuristically, newer clauses are larger (and big clauses rarely simplify small clauses) Solution: Non-destructive backwards-simplification Clauses in P are archived on simplification Simplified new clause is build from fresh copy g P (processed clauses) U (unprocessed clauses) U (unprocessed clauses) 30

55 Proof Generation P (processed clauses) g=? Generate Simplifiable? g Cheap Simplify Simplify U (unprocessed clauses) 31

56 Proof Generation P (processed clauses) g=? Generate Simplifiable? A (archive) g Cheap Simplify Simplify U (unprocessed clauses) 31

57 cnf(c_0_8, negated_conjecture, (multiply(b,a)!=c), file('/users/schulz/eprover/tptp_6.0.0_flat/rng008-7.p', prove_commutativity)). cnf(c_0_9, negated_conjecture, (multiply(a,b)=c), file('/users/schulz/eprover/tptp_6.0.0_flat/rng008-7.p', a_times_b_is_c)). cnf(c_0_30, negated_conjecture, ($false), inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[c_0_8, c_0_29]), c_0_9])])). cnf(c_0_3, axiom, (add(x1,add(x2,x3))=add(add(x1,x2),x3)), file('/users/schulz/eprover/tptp_6.0.0_flat/axioms/rng005-0.ax', associativity_for_addition)). cnf(c_0_24, plain, (add(x1,add(x2,x3))=add(x3,add(x1,x2))), inference(pm,[status(thm)],[c_0_2, c_0_3])). cnf(c_0_6, axiom, (multiply(add(x1,x2),x3)=add(multiply(x1,x3),multiply(x2,x3))), file('/users/schulz/eprover/tptp_6.0.0_flat/axioms/rng005-0.ax', distribute2)). cnf(c_0_21, hypothesis, (multiply(add(x1,x2),x1)=add(x1,multiply(x2,x1))), inference(pm,[status(thm)],[c_0_6, c_0_1])). cnf(c_0_2, axiom, (add(x1,x2)=add(x2,x1)), file('/users/schulz/eprover/tptp_6.0.0_flat/axioms/rng005-0.ax', commutativity_for_addition)). cnf(c_0_13, hypothesis, (multiply(add(x1,x2),x2)=add(x2,multiply(x1,x2))), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_6, c_0_1]), c_0_2])). cnf(c_0_26, hypothesis, (add(x1,add(x2,x1))=x2), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_24, c_0_25]), c_0_7])). cnf(c_0_28, hypothesis, (add(x1,multiply(x1,x2))=add(x1,multiply(x2,x1))), inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_13, c_0_26]), c_0_17]), c_0_10]), c_0_3]), c_0_27])). cnf(c_0_29, hypothesis, (multiply(x1,x2)=multiply(x2,x1)), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_27, c_0_28]), c_0_27])). cnf(c_0_1, hypothesis, (multiply(x1,x1)=x1), file('/users/schulz/eprover/tptp_6.0.0_flat/rng008-7.p', boolean_ring)). cnf(c_0_10, hypothesis, (multiply(x1,add(x2,x1))=add(x1,multiply(x1,x2))), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_0, c_0_1]), c_0_2])). cnf(c_0_17, hypothesis, (multiply(x1,add(x1,x2))=add(x1,multiply(x1,x2))), inference(pm,[status(thm)],[c_0_0, c_0_1])). cnf(c_0_27, hypothesis, (add(x1,add(x1,x2))=x2), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_3, c_0_25]), c_0_5])). cnf(c_0_0, axiom, (multiply(x1,add(x2,x3))=add(multiply(x1,x2),multiply(x1,x3))), file('/users/schulz/eprover/tptp_6.0.0_flat/axioms/rng005-0.ax', distribute1)). cnf(c_0_16, hypothesis, (add(x1,multiply(additive_identity,x1))=x1), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_13, c_0_5]), c_0_1])). cnf(c_0_25, hypothesis, (add(x1,x1)=additive_identity), inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_21, c_0_4]), c_0_22]), c_0_23])). cnf(c_0_19, hypothesis, (multiply(additive_identity,additive_inverse(x1))=additive_identity), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_11, c_0_16]), c_0_4])). cnf(c_0_22, hypothesis, (multiply(additive_identity,x1)=additive_identity), inference(pm,[status(thm)],[c_0_19, c_0_15])). cnf(c_0_4, axiom, (add(x1,additive_inverse(x1))=additive_identity), file('/users/schulz/eprover/tptp_6.0.0_flat/axioms/rng005-0.ax', right_additive_inverse)). cnf(c_0_12, hypothesis, (add(x1,multiply(x1,additive_identity))=x1), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_10, c_0_5]), c_0_1])). cnf(c_0_14, hypothesis, (multiply(additive_inverse(x1),additive_identity)=additive_identity), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_11, c_0_12]), c_0_4])). cnf(c_0_18, hypothesis, (multiply(x1,additive_identity)=additive_identity), inference(pm,[status(thm)],[c_0_14, c_0_15])). cnf(c_0_20, hypothesis, (add(x1,multiply(x1,additive_inverse(x1)))=additive_identity), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_17, c_0_4]), c_0_18])). cnf(c_0_5, axiom, (add(additive_identity,x1)=x1), file('/users/schulz/eprover/tptp_6.0.0_flat/axioms/rng005-0.ax', left_additive_identity)). cnf(c_0_11, plain, (add(x1,add(additive_inverse(x1),x2))=x2), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_3, c_0_4]), c_0_5])). cnf(c_0_15, plain, (additive_inverse(additive_inverse(x1))=x1), inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_11, c_0_4]), c_0_7])). cnf(c_0_23, hypothesis, (multiply(additive_inverse(x1),x1)=x1), inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(pm,[status(thm)],[c_0_11, c_0_20]), c_0_7]), c_0_15])). cnf(c_0_7, axiom, (add(x1,additive_identity)=x1), file('/users/schulz/eprover/tptp_6.0.0_flat/axioms/rng005-0.ax', right_additive_identity)). The Structure of Proofs: Commutative Rings 32

58 cnf(c_0_8, negated_conjecture, (multiply(b,a)!=c)). cnf(c_0_9, negated_conjecture, (multiply(a,b)=c)). cnf(c_0_30, negated_conjecture, ($false)). cnf(c_0_3, axiom, (add(x1,add(x2,x3))=add(add(x1,x2),x3))). cnf(c_0_24, plain, (add(x1,add(x2,x3))=add(x3,add(x1,x2)))). cnf(c_0_6, axiom, (multiply(add(x1,x2),x3)=add(multiply(x1,x3),multiply(x2,x3)))). cnf(c_0_21, hypothesis, (multiply(add(x1,x2),x1)=add(x1,multiply(x2,x1)))). cnf(c_0_13, hypothesis, (multiply(add(x1,x2),x2)=add(x2,multiply(x1,x2)))). cnf(c_0_26, hypothesis, (add(x1,add(x2,x1))=x2)). cnf(c_0_28, hypothesis, (add(x1,multiply(x1,x2))=add(x1,multiply(x2,x1)))). cnf(c_0_2, axiom, (add(x1,x2)=add(x2,x1))). cnf(c_0_29, hypothesis, (multiply(x1,x2)=multiply(x2,x1))). cnf(c_0_17, hypothesis, (multiply(x1,add(x1,x2))=add(x1,multiply(x1,x2)))). cnf(c_0_27, hypothesis, (add(x1,add(x1,x2))=x2)). cnf(c_0_1, hypothesis, (multiply(x1,x1)=x1)). cnf(c_0_10, hypothesis, (multiply(x1,add(x2,x1))=add(x1,multiply(x1,x2)))). cnf(c_0_25, hypothesis, (add(x1,x1)=additive_identity)). cnf(c_0_0, axiom, (multiply(x1,add(x2,x3))=add(multiply(x1,x2),multiply(x1,x3)))). cnf(c_0_16, hypothesis, (add(x1,multiply(additive_identity,x1))=x1)). cnf(c_0_19, hypothesis, (multiply(additive_identity,additive_inverse(x1))=additive_identity)). cnf(c_0_22, hypothesis, (multiply(additive_identity,x1)=additive_identity)). cnf(c_0_12, hypothesis, (add(x1,multiply(x1,additive_identity))=x1)). cnf(c_0_4, axiom, (add(x1,additive_inverse(x1))=additive_identity)). cnf(c_0_14, hypothesis, (multiply(additive_inverse(x1),additive_identity)=additive_identity)). cnf(c_0_18, hypothesis, (multiply(x1,additive_identity)=additive_identity)). cnf(c_0_20, hypothesis, (add(x1,multiply(x1,additive_inverse(x1)))=additive_identity)). cnf(c_0_5, axiom, (add(additive_identity,x1)=x1)). cnf(c_0_11, plain, (add(x1,add(additive_inverse(x1),x2))=x2)). cnf(c_0_23, hypothesis, (multiply(additive_inverse(x1),x1)=x1)). cnf(c_0_15, plain, (additive_inverse(additive_inverse(x1))=x1)). cnf(c_0_7, axiom, (add(x1,additive_identity)=x1)). The Structure of Proofs: Commutative Rings 32

59 The Structure of Proofs: Commutative Rings c8 c9 c3 c6 c2 c1 c0 c4 c5 c7 c24 c21 c13 c10 c16 c12 c11 c19 c14 c15 c17 c22 c18 c20 c23 c25 c26 c27 c28 c29 c30 32

60 The Structure of Proofs: Commutative Rings c6 c2 c0 c13 c10 c1 c21 c24 c28 c16 c12 c17 c29 c9 c30 c27 c3 c5 c26 c25 c19 c14 c8 c20 c11 c4 c22 c23 c18 c7 c15 32

61 The Structure of Proofs: Commutative Rings c0 c11 c18 c49 c74 c113 c116 c125 c126 c129 c140 c141 c142 c146 c150 c151 c152 c153 c154 c155 c156 c157 c158 c159 c160 c161 c162 c163 c164 c165 c166 c167 c168 c169 c170 c1 c13 c14 c17 c22 c29 c38 c2 c25 c31 c36 c99 c100 c101 c102 c104 c105 c106 c107 c108 c3 c12 c30 c35 c37 c43 c44 c45 c46 c47 c50 c52 c53 c55 c56 c57 c58 c61 c62 c63 c64 c65 c66 c67 c68 c69 c70 c71 c72 c75 c77 c79 c80 c81 c82 c85 c86 c87 c88 c89 c90 c115 c124 c133 c134 c135 c136 c137 c138 c139 c171 c172 c173 c174 c175 c176 c177 c178 c179 c180 c182 c184 c185 c186 c187 c188 c190 c192 c193 c194 c195 c196 c199 c202 c205 c206 c207 c208 c211 c212 c213 c214 c215 c216 c217 c218 c219 c220 c221 c222 c223 c224 c4 c15 c16 c20 c21 c26 c5 c6 c48 c73 c91 c92 c93 c94 c95 c96 c97 c98 c103 c109 c110 c111 c112 c114 c117 c7 c24 c27 c28 c233 c8 c33 c39 c127 c143 c225 c226 c227 c228 c231 c232 c9 c32 c234 c10 c41 c144 c145 c147 c148 c149 c19 c23 c42 c60 c84 c118 c119 c120 c121 c122 c123 c128 c130 c131 c132 c197 c198 c200 c201 c34 c59 c83 c40 c181 c183 c189 c191 c229 c51 c54 c76 c78 c203 c204 c209 c210 c230 32

62 Classification of Search Decisions Proof state at success: All proof clauses are in P A Clauses in U never contribute All clauses in P A have been selected for processing Positive examples: Proof clauses Negative examples: Non-proof clauses g= g? Simplify P (processed clauses) Generate Simplifiable? U (unprocessed clauses) Cheap Simplify A (archive) 33

63 Classification of Search Decisions Proof state at success: All proof clauses are in P A Clauses in U never contribute All clauses in P A have been selected for processing Positive examples: Proof clauses Negative examples: Non-proof clauses Idea: Apply Machine Learning g= g? Simplify P (processed clauses) Generate Simplifiable? U (unprocessed clauses) Cheap Simplify A (archive) 33

64 Example: Proof Objects RNG008-7 c18). c14). c20). c8). c15). c7). c23). c4). c27). c11). c19). c5). c3). c17). c12). c10). c1). c0). c9). c30). c29). c22). c25). c26). c28). c16). c24). c13). c2). c21). c6). 34

65 Example: Proof Objects RNG008-7 c4). c23). c5). c26). c7). c20). c30). c31). c14). c3). c18). c22). c8). c27). c28). c13). c33). c15). c37). c34). c35). c19). c9). c39). c40). c38). c32). c36). c24). c25). c29). c16). c11). c10). c0). c21). c12). c1). c17). c2). c6). 34

66 Example: Proof Objects RNG008-7 c0). c11). c18). c49). c74). c113). c115). c125). c126). c129). c140). c141). c144). c146). c150). c151). c152). c153). c154). c155). c156). c157). c158). c159). c160). c161). c162). c163). c164). c165). c166). c167). c168). c169). c170). c1). c13). c14). c17). c22). c29). c38). c2). c25). c31). c36). c99). c100). c101). c102). c104). c105). c106). c107). c108). c3). c12). c28). c30). c35). c37). c43). c44). c45). c46). c47). c51). c52). c53). c55). c56). c57). c60). c61). c62). c63). c64). c65). c66). c67). c68). c69). c70). c71). c72). c76). c77). c79). c80). c81). c84). c85). c86). c87). c88). c89). c90). c117). c124). c133). c134). c135). c136). c137). c138). c139). c171). c172). c173). c174). c175). c176). c177). c178). c179). c180). c182). c184). c185). c186). c187). c188). c190). c192). c193). c194). c195). c196). c199). c202). c205). c206). c207). c208). c211). c212). c213). c214). c215). c216). c217). c218). c219). c220). c221). c222). c223). c224). c4). c15). c16). c20). c21). c26). c5). c6). c48). c73). c91). c92). c93). c94). c95). c96). c97). c98). c103). c109). c110). c111). c112). c114). c116). c7). c24). c27). c233). c8). c33). c39). c128). c145). c225). c226). c227). c228). c231). c232). c9). c32). c234). c10). c41). c142). c143). c147). c148). c149). c19). c23). c42). c59). c83). c118). c119). c120). c121). c122). c123). c127). c130). c131). c132). c197). c198). c200). c201). c34). c58). c82). c40). c181). c183). c189). c191). c229). c50). c54). c75). c78). c203). c204). c209). c210). c230). 34

67 Example: Proof Objects RNG008-7 c0). c11). c1). c12). c2). c13). c3). c14). c4). c15). c5). c16). c6). c18). c7). c21). c8). c35). c9). c39). c10). c51). c17). c26). c60). c85). c124). c126). c136). c137). c140). c151). c152). c155). c157). c161). c162). c163). c164). c165). c166). c167). c168). c169). c170). c171). c172). c173). c174). c175). c176). c177). c178). c179). c180). c181). c20). c22). c25). c30). c38). c48). c33). c41). c46). c110). c111). c112). c113). c115). c116). c117). c118). c119). c19). c37). c40). c45). c47). c54). c55). c56). c57). c58). c61). c63). c64). c66). c67). c68). c70). c71). c73). c74). c75). c76). c77). c78). c79). c80). c81). c82). c83). c86). c88). c90). c91). c92). c94). c95). c97). c98). c99). c100). c101). c128). c135). c144). c145). c146). c147). c148). c149). c150). c182). c183). c184). c185). c186). c187). c188). c189). c190). c191). c193). c195). c196). c197). c198). c199). c201). c203). c204). c205). c206). c207). c210). c213). c216). c217). c218). c219). c222). c223). c224). c225). c226). c227). c228). c229). c230). c231). c232). c233). c234). c235). c23). c24). c28). c29). c34). c52). c153). c154). c156). c158). c159). c160). c59). c84). c102). c103). c104). c105). c106). c107). c108). c109). c114). c120). c121). c122). c123). c125). c127). c32). c244). c36). c27). c31). c53). c69). c93). c129). c130). c131). c132). c133). c134). c138). c139). c141). c142). c143). c208). c209). c211). c212). c43). c49). c236). c237). c238). c239). c242). c243). c44). c72). c96). c42). c50). c245). c192). c194). c200). c202). c241). c62). c65). c87). c89). c214). c215). c220). c221). c240). 34

68 Some Initial Results Training examples can be cheaply extracted Ratio of utilized to useless given clauses (GCU-ratio) is a good predictor of Heuristic perfomance (Schulz/Möhrmann, IJCAR 2016) Positive training examples can be automatically written into a watch list and used as hints Clauses on the watchlist are preferred over all other clauses First experiments Reproving with much better GCU-ratio (and much faster) Some improvement even for related problems 35

69 Open Questions Abstractions Are concrete function symbols relevant? Is the concrete term structure relevant? Learning methods Folding architecture networks? Feature-based numerical methods?? Pattern-based learning? Deep learning with convoluted networks? Trade-offs Power vs. convenience Speed vs. quality Online vs. offline costs 36

70 Open Questions Abstractions Are concrete function symbols relevant? Is the concrete term structure relevant? Learning methods Folding architecture networks? Feature-based numerical methods?? Pattern-based learning? Deep learning with convoluted networks? Trade-offs Power vs. convenience Speed vs. quality Online vs. offline costs Work in Progress 36

71 (Nearly) The End 37

72 Conclusion Controlling proof search for theorem provers is a rich application for machine learning techniques Inductive techniques can be applied at several different levels of search control Explicit proofs can be generated efficiently... and mined for training examples! Proofs are beautiful and informative Learning from proofs may be the future 38

73 Conclusion Controlling proof search for theorem provers is a rich application for machine learning techniques Inductive techniques can be applied at several different levels of search control Explicit proofs can be generated efficiently... and mined for training examples! Proofs are beautiful and informative Learning from proofs may be the future Thank you! Questions? 38

74 Image Credit Clipart via Hieronimous Bosch via 39

First-Order Theorem Proving and Vampire. Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester)

First-Order Theorem Proving and Vampire. Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester) First-Order Theorem Proving and Vampire Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester) Outline Introduction First-Order Logic and TPTP Inference Systems

More information

First-Order Theorem Proving and Vampire

First-Order Theorem Proving and Vampire First-Order Theorem Proving and Vampire Laura Kovács 1,2 and Martin Suda 2 1 TU Wien 2 Chalmers Outline Introduction First-Order Logic and TPTP Inference Systems Saturation Algorithms Redundancy Elimination

More information

Propositional Resolution

Propositional Resolution Artificial Intelligence Propositional Resolution Marco Piastra Propositional Resolution 1] Deductive systems and automation Is problem decidible? A deductive system a la Hilbert (i.e. derivation using

More information

MAI0203 Lecture 7: Inference and Predicate Calculus

MAI0203 Lecture 7: Inference and Predicate Calculus MAI0203 Lecture 7: Inference and Predicate Calculus Methods of Artificial Intelligence WS 2002/2003 Part II: Inference and Knowledge Representation II.7 Inference and Predicate Calculus MAI0203 Lecture

More information

Intelligent Agents. First Order Logic. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University. last change: 19.

Intelligent Agents. First Order Logic. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University. last change: 19. Intelligent Agents First Order Logic Ute Schmid Cognitive Systems, Applied Computer Science, Bamberg University last change: 19. Mai 2015 U. Schmid (CogSys) Intelligent Agents last change: 19. Mai 2015

More information

LOGIC PROPOSITIONAL REASONING

LOGIC PROPOSITIONAL REASONING LOGIC PROPOSITIONAL REASONING WS 2017/2018 (342.208) Armin Biere Martina Seidl biere@jku.at martina.seidl@jku.at Institute for Formal Models and Verification Johannes Kepler Universität Linz Version 2018.1

More information

Modular Architecture for Proof Advice AITP Components

Modular Architecture for Proof Advice AITP Components Modular Architecture for Proof Advice AITP Components Cezary Kaliszyk 03 April 2016 University of Innsbruck, Austria Talk Overview AI over formal mathematics Premise selection overview The methods tried

More information

6. Logical Inference

6. Logical Inference Artificial Intelligence 6. Logical Inference Prof. Bojana Dalbelo Bašić Assoc. Prof. Jan Šnajder University of Zagreb Faculty of Electrical Engineering and Computing Academic Year 2016/2017 Creative Commons

More information

Propositional Logic: Evaluating the Formulas

Propositional Logic: Evaluating the Formulas Institute for Formal Models and Verification Johannes Kepler University Linz VL Logik (LVA-Nr. 342208) Winter Semester 2015/2016 Propositional Logic: Evaluating the Formulas Version 2015.2 Armin Biere

More information

COMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning

COMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning COMP219: Artificial Intelligence Lecture 20: Propositional Reasoning 1 Overview Last time Logic for KR in general; Propositional Logic; Natural Deduction Today Entailment, satisfiability and validity Normal

More information

Formal Verification Methods 1: Propositional Logic

Formal Verification Methods 1: Propositional Logic Formal Verification Methods 1: Propositional Logic John Harrison Intel Corporation Course overview Propositional logic A resurgence of interest Logic and circuits Normal forms The Davis-Putnam procedure

More information

3 Propositional Logic

3 Propositional Logic 3 Propositional Logic 3.1 Syntax 3.2 Semantics 3.3 Equivalence and Normal Forms 3.4 Proof Procedures 3.5 Properties Propositional Logic (25th October 2007) 1 3.1 Syntax Definition 3.0 An alphabet Σ consists

More information

Knowledge representation DATA INFORMATION KNOWLEDGE WISDOM. Figure Relation ship between data, information knowledge and wisdom.

Knowledge representation DATA INFORMATION KNOWLEDGE WISDOM. Figure Relation ship between data, information knowledge and wisdom. Knowledge representation Introduction Knowledge is the progression that starts with data which s limited utility. Data when processed become information, information when interpreted or evaluated becomes

More information

Pretending to be an SMT Solver with Vampire (and How We Do Instantiation)

Pretending to be an SMT Solver with Vampire (and How We Do Instantiation) Pretending to be an SMT Solver with Vampire (and How We Do Instantiation) Giles Reger 1, Martin Suda 2, and Andrei Voronkov 1,2 1 School of Computer Science, University of Manchester, UK 2 TU Wien, Vienna,

More information

Deductive Systems. Lecture - 3

Deductive Systems. Lecture - 3 Deductive Systems Lecture - 3 Axiomatic System Axiomatic System (AS) for PL AS is based on the set of only three axioms and one rule of deduction. It is minimal in structure but as powerful as the truth

More information

Advanced Topics in LP and FP

Advanced Topics in LP and FP Lecture 1: Prolog and Summary of this lecture 1 Introduction to Prolog 2 3 Truth value evaluation 4 Prolog Logic programming language Introduction to Prolog Introduced in the 1970s Program = collection

More information

Strong AI vs. Weak AI Automated Reasoning

Strong AI vs. Weak AI Automated Reasoning Strong AI vs. Weak AI Automated Reasoning George F Luger ARTIFICIAL INTELLIGENCE 6th edition Structures and Strategies for Complex Problem Solving Artificial intelligence can be classified into two categories:

More information

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models Contents Mathematical Reasoning 3.1 Mathematical Models........................... 3. Mathematical Proof............................ 4..1 Structure of Proofs........................ 4.. Direct Method..........................

More information

Artificial Intelligence Chapter 7: Logical Agents

Artificial Intelligence Chapter 7: Logical Agents Artificial Intelligence Chapter 7: Logical Agents Michael Scherger Department of Computer Science Kent State University February 20, 2006 AI: Chapter 7: Logical Agents 1 Contents Knowledge Based Agents

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 August 28, 2003 These supplementary notes review the notion of an inductive definition and give

More information

Rewriting for Satisfiability Modulo Theories

Rewriting for Satisfiability Modulo Theories 1 Dipartimento di Informatica Università degli Studi di Verona Verona, Italy July 10, 2010 1 Joint work with Chris Lynch (Department of Mathematics and Computer Science, Clarkson University, NY, USA) and

More information

Propositional and Predicate Logic - V

Propositional and Predicate Logic - V Propositional and Predicate Logic - V Petr Gregor KTIML MFF UK WS 2016/2017 Petr Gregor (KTIML MFF UK) Propositional and Predicate Logic - V WS 2016/2017 1 / 21 Formal proof systems Hilbert s calculus

More information

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Today s class will be an introduction

More information

Warm-Up Problem. Is the following true or false? 1/35

Warm-Up Problem. Is the following true or false? 1/35 Warm-Up Problem Is the following true or false? 1/35 Propositional Logic: Resolution Carmen Bruni Lecture 6 Based on work by J Buss, A Gao, L Kari, A Lubiw, B Bonakdarpour, D Maftuleac, C Roberts, R Trefler,

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 September 2, 2004 These supplementary notes review the notion of an inductive definition and

More information

Supplementary Notes on Inductive Definitions

Supplementary Notes on Inductive Definitions Supplementary Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 August 29, 2002 These supplementary notes review the notion of an inductive definition

More information

Price: $25 (incl. T-Shirt, morning tea and lunch) Visit:

Price: $25 (incl. T-Shirt, morning tea and lunch) Visit: Three days of interesting talks & workshops from industry experts across Australia Explore new computing topics Network with students & employers in Brisbane Price: $25 (incl. T-Shirt, morning tea and

More information

Classical Propositional Logic

Classical Propositional Logic Classical Propositional Logic Peter Baumgartner http://users.cecs.anu.edu.au/~baumgart/ Ph: 02 6218 3717 Data61/CSIRO and ANU July 2017 1 / 71 Classical Logic and Reasoning Problems A 1 : Socrates is a

More information

Chapter 3: Propositional Calculus: Deductive Systems. September 19, 2008

Chapter 3: Propositional Calculus: Deductive Systems. September 19, 2008 Chapter 3: Propositional Calculus: Deductive Systems September 19, 2008 Outline 1 3.1 Deductive (Proof) System 2 3.2 Gentzen System G 3 3.3 Hilbert System H 4 3.4 Soundness and Completeness; Consistency

More information

Machine Learning for Automated Theorem Proving

Machine Learning for Automated Theorem Proving Machine Learning for Automated Theorem Proving Bernhard Kragl Machine Learning and Applications Course Spring 2015 Outline Introduction to Automated Theorem Proving Machine Learning Applications Strategy

More information

CS 380: ARTIFICIAL INTELLIGENCE

CS 380: ARTIFICIAL INTELLIGENCE CS 380: RTIFICIL INTELLIGENCE PREDICTE LOGICS 11/8/2013 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2013/cs380/intro.html Summary of last day: Logical gents: The can

More information

Propositional Logic Language

Propositional Logic Language Propositional Logic Language A logic consists of: an alphabet A, a language L, i.e., a set of formulas, and a binary relation = between a set of formulas and a formula. An alphabet A consists of a finite

More information

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Set 6: Knowledge Representation: The Propositional Calculus Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Outline Representing knowledge using logic Agent that reason logically A knowledge based agent Representing

More information

Propositional Logic. Logic. Propositional Logic Syntax. Propositional Logic

Propositional Logic. Logic. Propositional Logic Syntax. Propositional Logic Propositional Logic Reading: Chapter 7.1, 7.3 7.5 [ased on slides from Jerry Zhu, Louis Oliphant and ndrew Moore] Logic If the rules of the world are presented formally, then a decision maker can use logical

More information

Classical Propositional Logic

Classical Propositional Logic The Language of A Henkin-style Proof for Natural Deduction January 16, 2013 The Language of A Henkin-style Proof for Natural Deduction Logic Logic is the science of inference. Given a body of information,

More information

Lecture 25 of 42. PAC Learning, VC Dimension, and Mistake Bounds

Lecture 25 of 42. PAC Learning, VC Dimension, and Mistake Bounds Lecture 25 of 42 PAC Learning, VC Dimension, and Mistake Bounds Thursday, 15 March 2007 William H. Hsu, KSU http://www.kddresearch.org/courses/spring2007/cis732 Readings: Sections 7.4.17.4.3, 7.5.17.5.3,

More information

Logical agents. Chapter 7. Chapter 7 1

Logical agents. Chapter 7. Chapter 7 1 Logical agents Chapter 7 Chapter 7 1 Outline Knowledge-based agents Logic in general models and entailment Propositional (oolean) logic Equivalence, validity, satisfiability Inference rules and theorem

More information

CS 380: ARTIFICIAL INTELLIGENCE PREDICATE LOGICS. Santiago Ontañón

CS 380: ARTIFICIAL INTELLIGENCE PREDICATE LOGICS. Santiago Ontañón CS 380: RTIFICIL INTELLIGENCE PREDICTE LOGICS Santiago Ontañón so367@drexeledu Summary of last day: Logical gents: The can reason from the knowledge they have They can make deductions from their perceptions,

More information

An Introduction to SAT Solving

An Introduction to SAT Solving An Introduction to SAT Solving Applied Logic for Computer Science UWO December 3, 2017 Applied Logic for Computer Science An Introduction to SAT Solving UWO December 3, 2017 1 / 46 Plan 1 The Boolean satisfiability

More information

Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics Lecture notes in progress (27 March 2010)

Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics Lecture notes in progress (27 March 2010) http://math.sun.ac.za/amsc/sam Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics 2009-2010 Lecture notes in progress (27 March 2010) Contents 2009 Semester I: Elements 5 1. Cartesian product

More information

Revised by Hankui Zhuo, March 21, Logical agents. Chapter 7. Chapter 7 1

Revised by Hankui Zhuo, March 21, Logical agents. Chapter 7. Chapter 7 1 Revised by Hankui Zhuo, March, 08 Logical agents Chapter 7 Chapter 7 Outline Wumpus world Logic in general models and entailment Propositional (oolean) logic Equivalence, validity, satisfiability Inference

More information

CLUe Training An Introduction to Machine Learning in R with an example from handwritten digit recognition

CLUe Training An Introduction to Machine Learning in R with an example from handwritten digit recognition CLUe Training An Introduction to Machine Learning in R with an example from handwritten digit recognition Ad Feelders Universiteit Utrecht Department of Information and Computing Sciences Algorithmic Data

More information

Introduction to Metalogic

Introduction to Metalogic Philosophy 135 Spring 2008 Tony Martin Introduction to Metalogic 1 The semantics of sentential logic. The language L of sentential logic. Symbols of L: Remarks: (i) sentence letters p 0, p 1, p 2,... (ii)

More information

Propositional Reasoning

Propositional Reasoning Propositional Reasoning CS 440 / ECE 448 Introduction to Artificial Intelligence Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Spring 2010 Intro to AI (CS

More information

P is the class of problems for which there are algorithms that solve the problem in time O(n k ) for some constant k.

P is the class of problems for which there are algorithms that solve the problem in time O(n k ) for some constant k. Complexity Theory Problems are divided into complexity classes. Informally: So far in this course, almost all algorithms had polynomial running time, i.e., on inputs of size n, worst-case running time

More information

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson SAT Solving 1 / 36 Review: Propositional

More information

a. (6.25 points) where we let b. (6.25 points) c. (6.25 points) d. (6.25 points) B 3 =(x)[ H(x) F (x)], and (11)

a. (6.25 points) where we let b. (6.25 points) c. (6.25 points) d. (6.25 points) B 3 =(x)[ H(x) F (x)], and (11) A1 Logic (25 points) For each of the following either prove it step-by-step using resolution or another sound and complete technique of your stated choice or disprove it by exhibiting in detail a relevant

More information

Automated Reasoning (in First Order Logic) Andrei Voronkov. University of Manchester

Automated Reasoning (in First Order Logic) Andrei Voronkov. University of Manchester Automated Reasoning (in First Order Logic) Andrei Voronkov University of Manchester 1 Overview Automated reasoning in first-order logic. Completeness. Theory of Resolution and Redundancy. From Theory to

More information

1. Courses are either tough or boring. 2. Not all courses are boring. 3. Therefore there are tough courses. (Cx, Tx, Bx, )

1. Courses are either tough or boring. 2. Not all courses are boring. 3. Therefore there are tough courses. (Cx, Tx, Bx, ) Logic FOL Syntax FOL Rules (Copi) 1. Courses are either tough or boring. 2. Not all courses are boring. 3. Therefore there are tough courses. (Cx, Tx, Bx, ) Dealing with Time Translate into first-order

More information

Leonardo de Moura Microsoft Research

Leonardo de Moura Microsoft Research Leonardo de Moura Microsoft Research Logic is The Calculus of Computer Science (Z. Manna). High computational complexity Naïve solutions will not scale Is formula F satisfiable modulo theory T? SMT solvers

More information

Propositional Logic. Methods & Tools for Software Engineering (MTSE) Fall Prof. Arie Gurfinkel

Propositional Logic. Methods & Tools for Software Engineering (MTSE) Fall Prof. Arie Gurfinkel Propositional Logic Methods & Tools for Software Engineering (MTSE) Fall 2017 Prof. Arie Gurfinkel References Chpater 1 of Logic for Computer Scientists http://www.springerlink.com/content/978-0-8176-4762-9/

More information

SAT Solvers: Theory and Practice

SAT Solvers: Theory and Practice Summer School on Verification Technology, Systems & Applications, September 17, 2008 p. 1/98 SAT Solvers: Theory and Practice Clark Barrett barrett@cs.nyu.edu New York University Summer School on Verification

More information

ArgoCaLyPso SAT-Inspired Coherent Logic Prover

ArgoCaLyPso SAT-Inspired Coherent Logic Prover ArgoCaLyPso SAT-Inspired Coherent Logic Prover Mladen Nikolić and Predrag Janičić Automated Reasoning GrOup (ARGO) Faculty of Mathematics University of, February, 2011. Motivation Coherent logic (CL) (also

More information

7. Propositional Logic. Wolfram Burgard and Bernhard Nebel

7. Propositional Logic. Wolfram Burgard and Bernhard Nebel Foundations of AI 7. Propositional Logic Rational Thinking, Logic, Resolution Wolfram Burgard and Bernhard Nebel Contents Agents that think rationally The wumpus world Propositional logic: syntax and semantics

More information

Title: Logical Agents AIMA: Chapter 7 (Sections 7.4 and 7.5)

Title: Logical Agents AIMA: Chapter 7 (Sections 7.4 and 7.5) B.Y. Choueiry 1 Instructor s notes #12 Title: Logical Agents AIMA: Chapter 7 (Sections 7.4 and 7.5) Introduction to Artificial Intelligence CSCE 476-876, Fall 2018 URL: www.cse.unl.edu/ choueiry/f18-476-876

More information

Logical Inference. Artificial Intelligence. Topic 12. Reading: Russell and Norvig, Chapter 7, Section 5

Logical Inference. Artificial Intelligence. Topic 12. Reading: Russell and Norvig, Chapter 7, Section 5 rtificial Intelligence Topic 12 Logical Inference Reading: Russell and Norvig, Chapter 7, Section 5 c Cara MacNish. Includes material c S. Russell & P. Norvig 1995,2003 with permission. CITS4211 Logical

More information

Propositional Logic: Methods of Proof (Part II)

Propositional Logic: Methods of Proof (Part II) Propositional Logic: Methods of Proof (Part II) You will be expected to know Basic definitions Inference, derive, sound, complete Conjunctive Normal Form (CNF) Convert a Boolean formula to CNF Do a short

More information

Need for Deep Networks Perceptron. Can only model linear functions. Kernel Machines. Non-linearity provided by kernels

Need for Deep Networks Perceptron. Can only model linear functions. Kernel Machines. Non-linearity provided by kernels Need for Deep Networks Perceptron Can only model linear functions Kernel Machines Non-linearity provided by kernels Need to design appropriate kernels (possibly selecting from a set, i.e. kernel learning)

More information

Westmoreland County Public Schools Pacing Guide and Checklist Algebra 1

Westmoreland County Public Schools Pacing Guide and Checklist Algebra 1 Westmoreland County Public Schools Pacing Guide and Checklist 2018-2019 Algebra 1 translate algebraic symbolic quantitative situations represent variable verbal concrete pictorial evaluate orders of ops

More information

Search and Lookahead. Bernhard Nebel, Julien Hué, and Stefan Wölfl. June 4/6, 2012

Search and Lookahead. Bernhard Nebel, Julien Hué, and Stefan Wölfl. June 4/6, 2012 Search and Lookahead Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 4/6, 2012 Search and Lookahead Enforcing consistency is one way of solving constraint networks:

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Propositional Logic Marc Toussaint University of Stuttgart Winter 2016/17 (slides based on Stuart Russell s AI course) Motivation: Most students will have learnt about propositional

More information

Proof Methods for Propositional Logic

Proof Methods for Propositional Logic Proof Methods for Propositional Logic Logical equivalence Two sentences are logically equivalent iff they are true in the same models: α ß iff α β and β α Russell and Norvig Chapter 7 CS440 Fall 2015 1

More information

Learning Goals of CS245 Logic and Computation

Learning Goals of CS245 Logic and Computation Learning Goals of CS245 Logic and Computation Alice Gao April 27, 2018 Contents 1 Propositional Logic 2 2 Predicate Logic 4 3 Program Verification 6 4 Undecidability 7 1 1 Propositional Logic Introduction

More information

Automated and Human Proofs in General Mathematics: An Initial Comparison

Automated and Human Proofs in General Mathematics: An Initial Comparison Automated and Human Proofs in General Mathematics: An Initial Comparison Jesse Alama 1, Daniel Kühlwein 2, and Josef Urban 2 24 January 2012, Cambridge Semantics and Syntax: A Legacy of Alan Turing (1)

More information

Introduction to Logic in Computer Science: Autumn 2007

Introduction to Logic in Computer Science: Autumn 2007 Introduction to Logic in Computer Science: Autumn 2007 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Tableaux for First-order Logic The next part of

More information

Syntax of FOL. Introduction to Logic in Computer Science: Autumn Tableaux for First-order Logic. Syntax of FOL (2)

Syntax of FOL. Introduction to Logic in Computer Science: Autumn Tableaux for First-order Logic. Syntax of FOL (2) Syntax of FOL Introduction to Logic in Computer Science: Autumn 2007 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam The syntax of a language defines the way in which

More information

Logical Agents (I) Instructor: Tsung-Che Chiang

Logical Agents (I) Instructor: Tsung-Che Chiang Logical Agents (I) Instructor: Tsung-Che Chiang tcchiang@ieee.org Department of Computer Science and Information Engineering National Taiwan Normal University Artificial Intelligence, Spring, 2010 編譯有誤

More information

Propositional Calculus - Soundness & Completeness of H

Propositional Calculus - Soundness & Completeness of H Propositional Calculus - Soundness & Completeness of H Moonzoo Kim CS Dept. KAIST moonzoo@cs.kaist.ac.kr 1 Review Goal of logic To check whether given a formula Á is valid To prove a given formula Á `

More information

02 Propositional Logic

02 Propositional Logic SE 2F03 Fall 2005 02 Propositional Logic Instructor: W. M. Farmer Revised: 25 September 2005 1 What is Propositional Logic? Propositional logic is the study of the truth or falsehood of propositions or

More information

CS:4420 Artificial Intelligence

CS:4420 Artificial Intelligence CS:4420 Artificial Intelligence Spring 2018 Propositional Logic Cesare Tinelli The University of Iowa Copyright 2004 18, Cesare Tinelli and Stuart Russell a a These notes were originally developed by Stuart

More information

Between proof theory and model theory Three traditions in logic: Syntactic (formal deduction)

Between proof theory and model theory Three traditions in logic: Syntactic (formal deduction) Overview Between proof theory and model theory Three traditions in logic: Syntactic (formal deduction) Jeremy Avigad Department of Philosophy Carnegie Mellon University avigad@cmu.edu http://andrew.cmu.edu/

More information

Knowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system):

Knowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system): Logic Knowledge-based agents Inference engine Knowledge base Domain-independent algorithms Domain-specific content Knowledge base (KB) = set of sentences in a formal language Declarative approach to building

More information

A RESOLUTION DECISION PROCEDURE FOR SHOIQ

A RESOLUTION DECISION PROCEDURE FOR SHOIQ A RESOLUTION DECISION PROCEDURE FOR SHOIQ Yevgeny Kazakov and Boris Motik The University of Manchester August 20, 2006 SHOIQ IS A DESCRIPTION LOGIC! Yevgeny Kazakov and Boris Motik A Resolution Decision

More information

Inferences Critical. Lecture 30: Inference. Application: Question Answering. Types of Inferences

Inferences Critical. Lecture 30: Inference. Application: Question Answering. Types of Inferences Inferences Critical Lecture 30: Inference CS 181O Spring 2016 Kim Bruce Inferences, often using world knowledge, play a big role in understanding utterances John ate the pudding with a fork John ate the

More information

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Wolfram Burgard, Maren Bennewitz, and Marco Ragni Albert-Ludwigs-Universität Freiburg Contents 1 Agents

More information

Implementing Proof Systems for the Intuitionistic Propositional Logic

Implementing Proof Systems for the Intuitionistic Propositional Logic Implementing Proof Systems for the Intuitionistic Propositional Logic Veronica Zammit Supervisor: Dr. Adrian Francalanza Faculty of ICT University of Malta May 27, 2011 Submitted in partial fulfillment

More information

Propositional Logic: Methods of Proof (Part II)

Propositional Logic: Methods of Proof (Part II) Propositional Logic: Methods of Proof (Part II) This lecture topic: Propositional Logic (two lectures) Chapter 7.1-7.4 (previous lecture, Part I) Chapter 7.5 (this lecture, Part II) (optional: 7.6-7.8)

More information

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Joschka Boedecker and Wolfram Burgard and Bernhard Nebel Albert-Ludwigs-Universität Freiburg May 17, 2016

More information

Automated Reasoning Lecture 5: First-Order Logic

Automated Reasoning Lecture 5: First-Order Logic Automated Reasoning Lecture 5: First-Order Logic Jacques Fleuriot jdf@inf.ac.uk Recap Over the last three lectures, we have looked at: Propositional logic, semantics and proof systems Doing propositional

More information

Exercises 1 - Solutions

Exercises 1 - Solutions Exercises 1 - Solutions SAV 2013 1 PL validity For each of the following propositional logic formulae determine whether it is valid or not. If it is valid prove it, otherwise give a counterexample. Note

More information

KE/Tableaux. What is it for?

KE/Tableaux. What is it for? CS3UR: utomated Reasoning 2002 The term Tableaux refers to a family of deduction methods for different logics. We start by introducing one of them: non-free-variable KE for classical FOL What is it for?

More information

2.5.2 Basic CNF/DNF Transformation

2.5.2 Basic CNF/DNF Transformation 2.5. NORMAL FORMS 39 On the other hand, checking the unsatisfiability of CNF formulas or the validity of DNF formulas is conp-complete. For any propositional formula φ there is an equivalent formula in

More information

Topics in Model-Based Reasoning

Topics in Model-Based Reasoning Towards Integration of Proving and Solving Dipartimento di Informatica Università degli Studi di Verona Verona, Italy March, 2014 Automated reasoning Artificial Intelligence Automated Reasoning Computational

More information

Solutions to Sample Problems for Midterm

Solutions to Sample Problems for Midterm Solutions to Sample Problems for Midterm Problem 1. The dual of a proposition is defined for which contains only,,. It is For a compound proposition that only uses,, as operators, we obtained the dual

More information

A Resolution Decision Procedure for the Guarded Fragment with Transitive Guards

A Resolution Decision Procedure for the Guarded Fragment with Transitive Guards A Resolution Decision Procedure for the Guarded Fragment with Transitive Guards Yevgeny Kazakov MPI für Informatik, Saarbrücken, Germany ykazakov@mpi-sb.mpg.de Abstract. We show how well-known refinements

More information

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30) Computational Logic Davide Martinenghi Free University of Bozen-Bolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic - sequent calculus To overcome the problems of natural

More information

A brief introduction to Logic. (slides from

A brief introduction to Logic. (slides from A brief introduction to Logic (slides from http://www.decision-procedures.org/) 1 A Brief Introduction to Logic - Outline Propositional Logic :Syntax Propositional Logic :Semantics Satisfiability and validity

More information

Mathematical Logic Prof. Arindama Singh Department of Mathematics Indian Institute of Technology, Madras. Lecture - 15 Propositional Calculus (PC)

Mathematical Logic Prof. Arindama Singh Department of Mathematics Indian Institute of Technology, Madras. Lecture - 15 Propositional Calculus (PC) Mathematical Logic Prof. Arindama Singh Department of Mathematics Indian Institute of Technology, Madras Lecture - 15 Propositional Calculus (PC) So, now if you look back, you can see that there are three

More information

Propositional Resolution

Propositional Resolution Computational Logic Lecture 4 Propositional Resolution Michael Genesereth Spring 2005 Stanford University Modified by Charles Ling and TA, for CS2209 Use with permission Propositional Resolution Propositional

More information

Direct Proof and Counterexample I:Introduction

Direct Proof and Counterexample I:Introduction Direct Proof and Counterexample I:Introduction Copyright Cengage Learning. All rights reserved. Goal Importance of proof Building up logic thinking and reasoning reading/using definition interpreting :

More information

Description Logics. Deduction in Propositional Logic. franconi. Enrico Franconi

Description Logics. Deduction in Propositional Logic.   franconi. Enrico Franconi (1/20) Description Logics Deduction in Propositional Logic Enrico Franconi franconi@cs.man.ac.uk http://www.cs.man.ac.uk/ franconi Department of Computer Science, University of Manchester (2/20) Decision

More information

Intelligent Agents. Pınar Yolum Utrecht University

Intelligent Agents. Pınar Yolum Utrecht University Intelligent Agents Pınar Yolum p.yolum@uu.nl Utrecht University Logical Agents (Based mostly on the course slides from http://aima.cs.berkeley.edu/) Outline Knowledge-based agents Wumpus world Logic in

More information

Lecture 2: Foundations of Concept Learning

Lecture 2: Foundations of Concept Learning Lecture 2: Foundations of Concept Learning Cognitive Systems II - Machine Learning WS 2005/2006 Part I: Basic Approaches to Concept Learning Version Space, Candidate Elimination, Inductive Bias Lecture

More information

Direct Proof and Counterexample I:Introduction. Copyright Cengage Learning. All rights reserved.

Direct Proof and Counterexample I:Introduction. Copyright Cengage Learning. All rights reserved. Direct Proof and Counterexample I:Introduction Copyright Cengage Learning. All rights reserved. Goal Importance of proof Building up logic thinking and reasoning reading/using definition interpreting statement:

More information

On the Complexity of the Reflected Logic of Proofs

On the Complexity of the Reflected Logic of Proofs On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,

More information

Reading and Writing. Mathematical Proofs. Slides by Arthur van Goetham

Reading and Writing. Mathematical Proofs. Slides by Arthur van Goetham Reading and Writing Mathematical Proofs Slides by Arthur van Goetham What is a proof? Why explanations are not proofs What is a proof? A method for establishing truth What establishes truth depends on

More information

How hard is it to find a good solution?

How hard is it to find a good solution? How hard is it to find a good solution? Simons Institute Open Lecture November 4, 2013 Research Area: Complexity Theory Given a computational problem, find an efficient algorithm that solves it. Goal of

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Propositional Logic Marc Toussaint University of Stuttgart Winter 2015/16 (slides based on Stuart Russell s AI course) Outline Knowledge-based agents Wumpus world Logic in general

More information

Just: a Tool for Computing Justifications w.r.t. ELH Ontologies

Just: a Tool for Computing Justifications w.r.t. ELH Ontologies Just: a Tool for Computing Justifications w.r.t. ELH Ontologies Michel Ludwig Theoretical Computer Science, TU Dresden, Germany michel@tcs.inf.tu-dresden.de Abstract. We introduce the tool Just for computing

More information

Labelled Superposition for PLTL. Martin Suda and Christoph Weidenbach

Labelled Superposition for PLTL. Martin Suda and Christoph Weidenbach Labelled Superposition for PLTL Martin Suda and Christoph Weidenbach MPI I 2012 RG1-001 January 2012 Authors Addresses Martin Suda Max-Planck-Institut für Informatik Campus E1 4 66123 Saarbrücken Germany

More information