Quick Course Overview Quick review of logic and computational problems

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness
Advertisements

1 First order theories (Chapter 1, Sections 1.4 – 1.5)
Modal Logic with Variable Modalities & its Applications to Querying Knowledge Bases Evgeny Zolin The University of Manchester
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
Linked List Implementation class List { private List next; private Object data; private static List root; private static int size; public static void addNew(Object.
Hybrid Systems Presented by: Arnab De Anand S. An Intuitive Introduction to Hybrid Systems Discrete program with an analog environment. What does it mean?
Computability and Complexity 8-1 Computability and Complexity Andrei Bulatov Logic Reminder.
1 First order theories. 2 Satisfiability The classic SAT problem: given a propositional formula , is  satisfiable ? Example:  Let x 1,x 2 be propositional.
Predicates & Quantifiers Goal: Introduce predicate logic, including existential & universal quantification Introduce translation between English sentences.
SAT and SMT solvers Ayrat Khalimov (based on Georg Hofferek‘s slides) AKDV 2014.
LDK R Logics for Data and Knowledge Representation Modeling First version by Alessandro Agostini and Fausto Giunchiglia Second version by Fausto Giunchiglia.
Course Overview and Road Map Computability and Logic.
Propositional Calculus CS 270: Mathematical Foundations of Computer Science Jeremy Johnson.
Integrating high-level constructs into programming languages Language extensions to make programming more productive Underspecified programs –give assertions,
Bertram Ludäscher Department of Computer Science & Engineering University of California, San Diego CSE-291: Ontologies in Data Integration.
Great Theoretical Ideas in Computer Science.
CS6133 Software Specification and Verification
LDK R Logics for Data and Knowledge Representation First Order Logics (FOL) Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto.
Lecture 7: Foundations of Query Languages Tuesday, January 23, 2001.
1 First order theories (Chapter 1, Sections 1.4 – 1.5) From the slides for the book “Decision procedures” by D.Kroening and O.Strichman.
Lecture 1 Overview Topics 1. Proof techniques: induction, contradiction Proof techniques June 1, 2015 CSCE 355 Foundations of Computation.
Computation Motivating questions: What does “computation” mean? What are the similarities and differences between computation in computers and in natural.
1 Reasoning with Infinite stable models Piero A. Bonatti presented by Axel Polleres (IJCAI 2001,
Donghyun (David) Kim Department of Mathematics and Physics North Carolina Central University 1 Chapter 0 Introduction Some slides are in courtesy of Prof.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View Basic Concepts and Background.
Lecture 041 Predicate Calculus Learning outcomes Students are able to: 1. Evaluate predicate 2. Translate predicate into human language and vice versa.
1 Finite Model Theory Lecture 5 Turing Machines and Finite Models.
Lecture 9: Query Complexity Tuesday, January 30, 2001.
Second case study: Guarded Fragment
CSCE 355 Foundations of Computation
CIS Automata and Formal Languages – Pei Wang
From Classical Proof Theory to P vs. NP
Propositional Logic.
tautology checking continued
L is in NP means: There is a language L’ in P and a polynomial p so that L1 ≤ L2 means: For some polynomial time computable map r :  x: x  L1 iff.
Discrete Mathematics for Computer Science
Propositional Calculus: Boolean Functions and Expressions
Knowledge Representation and Reasoning
Chapter 3 The Logic of Quantified Statements
Predicates & Quantifiers
SS 2017 Software Verification LTL monitoring
Revisiting Predicate Logic LN chapters 3,4
Great Theoretical Ideas in Computer Science
Propositional Calculus: Boolean Functions and Expressions
CSCE 355 Foundations of Computation
Jaya Krishna, M.Tech, Assistant Professor
Lecture 2 Propositional Logic
Propositional Calculus: Boolean Algebra and Simplification
CSE 311 Foundations of Computing I
Alternating tree Automata and Parity games
Logic Use mathematical deduction to derive new knowledge.
Binary Decision Diagrams
The Satisfiability Problem
Automatic Verification of Industrial Designs
Formal Methods in software development
Formal Methods in software development
Formal Methods in software development
Finite Model Theory Lecture 6
Thales’ and Gödel’s Legacy: Proofs and Their Limitations
Lecture 10: Query Complexity
MA/CSSE 474 More Math Review Theory of Computation
Computer Security: Art and Science, 2nd Edition
Teori Bahasa dan Automata Lecture 1: Course Overview and Introduction
CSCI1600: Embedded and Real Time Software
Great Theoretical Ideas in Computer Science
Search techniques.
Predicates and Quantifiers
Chapter 1: Propositional and First-Order Logic
Logics for Data and Knowledge Representation
The Satisfiability Problem
Presentation transcript:

Quick Course Overview Quick review of logic and computational problems What the course is about

First-order Logic 8 x Student(x) ! Honest(x) Every student is honest Some student is honest 8 x Student(x) ! 9 y Professor(y) Æ Advises(y,x) Every student is advised by a professor

Student(x), Professor(y), Semantics of FO Logic Student(x), Professor(y), Advises(x,y) In FO logic we have a signature (aka vocabulary): set of predicates, functions, constants Each signature has many possible interpretations Student Professor Advises Jones Joe Jim Smith Kathy

Semantics of FO: By Example 8x [Student(x)  9 y (Advises(y,x) Æ Professor(y))] 9x (Student(x) Æ Professor(x)) 9x 9y Student(x) Æ Student(y) Æ : (x=y) Æ 9z (Advises(z,x) Æ Advises(z,y)) Student Professor Advises Jones Joe Jim Smith Kathy

Notation Given structure M and elements c1....cn and a formula ½ with variables x1...xn we write M, c1...cn ² ½ We say: ½ holds of M and c1...cn or c1 ...cn satisfies ½ in M

Computational Problems for FO A sentence  is satisfiable if there is some interpretation M where  is true A sentence  is valid (or, is a tautology) if Á is true in every interpretation A sentence  is a contradiction if it is false in every interpretation Two sentences 1 and 2 are equivalent if they are true in exactly the same interpretations

Examples 8x (A(x) Ç : A(x)) Valid A(c) ! 9y A(y) Valid 8x (Man(x)! Mortal(x)) 8z z+z>z

History The question of decidability of satisfiability and validity of first order logic was introduced by the mathematician David Hilbert in the 1920’s, with the goal of using logic as a way of automatically verifying mathematics.

History Kurt Godel created the first complete proof system for first order logic. Using proofs, he gave a semi-decision procedure (one-way test) for validity, equivalence, implication of first-order logic sentences.

History Alonzo Church and Alan Turing showed that the decision problem for first-order logic is undecidable. Cannot decide if Á is satisifiable Cannot decide if Á is valid Cannot decide if Á1 implies Á2

Why is FO satisfiability undecidable? We want to know if there is a structure that satisfies Á Infinitely many structures to check Á may be satisfied, but only in a structure with a very complex shape

What is to be Done? Satisfiability and Validity are undecidable. Response 1) Restrict structures: there are classes of interpretations, where the satisfiability problem relative to that set of structures is decidable. Response 2) Restrict to special first-order sentences: Find fragments of FO (restricted kinds of sentences) for which satisfiability and/or validity are decidable.

Restricting Shape of Models E.g. Vocabulary={Advises(x,y)} Restrict structures to be linear orders. There are algorithms that will take a first-order sentence Á using just < and decide if it holds in all linear orders, and similarly whether it holds on some linear order. Advises Advises Advises Joe Susan David Marcelo

Restricting Models E.g. Vocabulary={Advises(x,y), a1(x) … an(x): ={a1 …an}} < is required to be a linear order, labels a1 … an are restricted to be disjoint, one of them must be true for each element of the order. There are algorithms that will take a first-order sentence Á using just < and a1 … an decide if it holds in all labelled linear orders. These are based on converting the sentence to a word automaton and deciding if the language of the automaton is non-empty. Advises Advises Advises Joe Susan David Marcelo Student Professor

Restricting Models E.g. Vocabulary={Advises(x,y), a1(x) … an(x): ={a1 …an}} Restrict to finite labeled trees : Advises required to be a tree, a1 … an are restricted to be disjoint, one of them must be true for each element of the domain. These are based on converting the sentence to a tree automaton and deciding if the language of the automaton is non-empty. Advises

Restricting Models E.g. Vocabulary={Advises(x,y), a1(x) … an(x): ={a1 …an}} Restrict to finite labeled tree-like graphs : Advises required to be a graph of some fixed tree-width while a1 … an are restricted as before. These are based on converting the sentence to a tree automaton running over tree codes of the structures and deciding if the language of the automaton is non-empty. Advises

Satisfiability and Validity are undecidable. What is to be Done? Satisfiability and Validity are undecidable. Response 2: Restrict sentences. Find fragments of first-order logic (restricted kinds of sentences) for which satisfiability and/or validity are decidable. Many examples: Modal Logic Guarded Fragment Guarded Negation Fragment Unary Negation Fragment ...

Example: Guarded Fragment 1995 Guarded Fragment (Andreka, Nemeti, Van Bentham) Start with basic relations (as in general FO), and close under boolean operations (Æ, :, Ç) as before guarded quantifiers 8 x1 … xn R(x1 … xn) ! Á(x1 …. xn) 9 x1 … xn R(x1 … xn)Æ Á(x1 … xn)

Guarded Fragment 8 x Artist(x) ! Person(x) 8 x y Man(x) Æ Marriedto(x,y) $ Husband(x) Can be converted to GF

Decidability of GF One can get an algorithm that decides whether a GF formula is satisfiable, valid, etc. Main idea behind decidability: GF sentences cannot force a structure to be complicated. If a GF sentence Á over graphs is satisfied, it is satisfied in a graph which is tree-like (has tree-width bounded by a number computable from Á) Now use previous results on “special structures”.

This course Go through examples of restricted logics that are decidable by this technique. Tree model property: Show that any satisfiable sentence has a tree-like model. Translation: Show that sentence Á in the logic can be translated effectively into a sentence Á’ such that: evaluating Á’ on the tree code of a tree-like model is equivalent to evaluating Á over the model. Decision procedures over trees: decide whether Á’ is satisfiable over trees that encode models using decision procedures for logics over trees (goes via converting Á’ to an automaton and checking non-emptiness). Variation: directly translate Á into an automaton Á’ with the property above.

First case study: Modal Logic Modal logic has a signature with one binary relation R(x,y) and unary relations A1 .... An Formulas Ai(x) are in modal logic Modal formulas are closed under boolean operations If Á(x) is a modal formula, then so is 8 y R(x,y) ! Á(y) 9 y R(x,y) Æ Á(y)

Examples of ML sentences 8 x Artist(x) ! Person(x) 8 x y Man(x) Æ R(x,y) $ Husband(x) Can be converted to ML

First case study: Modal Logic Proposition: for every structure M and for binary relation R and unary relations a1.... an, and any x 2 M there is a structure M’ and x’2 M’ such that R is interpreted in M’ by a tree rooted at x’ and every modal formula true of x in M is true of x’in M’ ... ...

First case study: Modal Logic Proposition: for every structure M and for binary relation R and unary relations a1.... an, and any x 2 M there is a structure M’ and x’2 M’ such that R is interpreted in M’ by a tree rooted at x’ and every modal formula true of x in M is true of x’in M’ Define the unravelling of M at x – make fresh copies of nodes.