Applied Logic in Engineering

Size: px
Start display at page:

Download "Applied Logic in Engineering"

Transcription

1 Applied Logic in Engineering Logic Programming Technische Universität München Institut für Informatik Software & Systems Engineering Dr. Maria Spichkova M. Spichkova WS 2012/13: Applied Logic in Engineering 1

2 Logic Programs Logic programs: set of (definite Horn) clauses Programming language ProLog: based on Horn clauses Restriction to the Horn form: Why? Efficiency of the algorithms Simpler answer situations Most of the mathematical theories seem to be axiomatizable in terms of Horn formulas (i.e. this does not seem to be a real restriction in practice) M. Spichkova WS 2012/13: Applied Logic in Engineering 2

3 Clausal Form CNF: (L 11 L 1n1 ) (L m1 L mnm ) Clausal form: set notation of formulas in CNF {{L 11,..., L 1n1 },..., {L m1,..., L mnm }} clauses Empty clause: Halting clause Unit clause: clause which contains only one literal. Horn clause: clause which contain only one (at most one) positive literal M. Spichkova WS 2012/13: Applied Logic in Engineering 3

4 Clausal Form (2) Definite clause: horn clause which contains a positive literal Fact: definite unit clause Fact: just one positive literal {L} Procedure clause: clause which contain only one positive literal ProLog: L. L 1 L n L (L 1 L n ) L (L 1 L n ) L L (L 1 L n ) {L, L 1,..., L n } ProLog: Procedure head Procedure body L : L 1,..., L n. Procedure call M. Spichkova WS 2012/13: Applied Logic in Engineering 4

5 Clausal Form (3) Goal clause (query clause): horn clause which contains only negative literals (L 1 L n ) L 1 L n ProLog:? L 1,..., L n. L 1 L n 0 (L 1 L n ) 0 { L 1,..., L n } M. Spichkova WS 2012/13: Applied Logic in Engineering 5

6 Horn Clause Programs Configuration: a pair (G, sub) where G is a goal clause and sub is a substitution Transition relation for configurations: G 1 has a form there is a clause C in the logic program F after that its variables are renamed so that G 1 and C do not have variables in common B and A i are unifiable (G 1, sub 1 ) F (G 2, sub 2 ) G 1 = { A 1, A 2,..., A k } (k 1) i {1,..., k} C = {B, C 1, C 2,..., C n } (n 0) Then the G 2 has the form (s is here a most general unifier) G 2 = { A 1,..., A i 1, C 1, C 2,..., C n, A i+1,..., A k }s sub 2 = sub 1 s M. Spichkova WS 2012/13: Applied Logic in Engineering 6

7 Horn Clause Programs (2) A computation of the logical program F on input is a (finite or infinite) sequence of the form If the sequence is final, and the last configuration of it has the form then this computation is called successful, and the formula G = { A 1, A 2,..., A k } (k 1) (G, []) F (G 1, sub 1 ) F (G 2, sub 2 ) F... (A 1 A k )sub (, sub) is called the result of the computation Logic programs are nondeterministic: Each configuration can have more than one successor configuration M. Spichkova WS 2012/13: Applied Logic in Engineering 7

8 Example from [Schöning1989] Logic program: ProLog notation: F = { {P (x, z), Q(x, y), P (y, z)}, {P (u, u)}, {Q(a, b)} } p(x, Z) :- q(x, Y), p(y, Z). p(u, U). q(a, b). Find the computations for the following goal clauses: G = { P (v, b)}? - p(v, b). M. Spichkova WS 2012/13: Applied Logic in Engineering 8

9 ProLog: Programm direct_flight(munich, berlin). direct_flight(munich, dresden). direct_flight(berlin, toronto). direct_flight(toronto, montreal). Facts connection(x, Y) :- direct_flight(x, Y). connection(x, Y) :- direct_flight(x, Z), connection(z, Y). Rules M. Spichkova WS 2012/13: Applied Logic in Engineering 9

10 ProLog: Queries direct_flight(munich, berlin). direct_flight(munich, dresden). direct_flight(berlin, toronto). direct_flight(toronto, montreal). connection(x, Y) :- direct_flight(x, Y). connection(x, Y) :- direct_flight(x, Z), connection(z, Y).?- connection(montreal, dresden). no M. Spichkova WS 2012/13: Applied Logic in Engineering 10

11 ProLog: Queries (2) direct_flight(munich, berlin). direct_flight(munich, dresden). direct_flight(berlin, toronto). direct_flight(toronto, montreal). connection(x, Y) :- direct_flight(x, Y). connection(x, Y) :- direct_flight(x, Z), connection(z, Y).?- connection(munich, dresden). yes M. Spichkova WS 2012/13: Applied Logic in Engineering 11

12 ProLog: Queries direct_flight(munich, berlin). direct_flight(munich, dresden). direct_flight(berlin, toronto). direct_flight(toronto, montreal). connection(x, Y) :- direct_flight(x, Y). connection(x, Y) :- direct_flight(x, Z), connection(z, Y).?- connection(munich, X) berlin dresden toronto montreal no M. Spichkova WS 2012/13: Applied Logic in Engineering 12

13 ProLog: Syntax Correct? Animal(baer, mammal) animal(tiger, mammal)). Animal(sparrow) animal(bird, _flamingo). animal(salmon. fish); Plant(rose) plant[palm]. plant(tulip). is flower (tulip). Creature(x) = animal(x), plant(x) Correct! animal(baer, mammal). animal(tiger, mammal). animal(sparrow). animal(sparrow, bird). animal(_flamingo, bird). animal(flamingo, bird). animal(salmon, fish). plant(rose). plant(palm). Without warnings plant(tulip). creature(x) :- animal(x, _). creature(x) :- plant(x). is_flower(tulip). creature(x) :- animal(x), plant(x). M. Spichkova WS 2012/13: Applied Logic in Engineering 13

14 ProLog: Queries (4) animal(baer, mammal). animal(tiger, mammal). animal(sparrow, bird). animal(flamingo, bird). animal(salmon, fish). plant(rose). plant(palm). plant(tulip). is_flower(tulip). creature(x) :- animal(x, _). creature(x) :- plant(x).?- animal(animal, X). Animal = baer X = mammal ; Animal = tiger X = mammal ; Animal = sparrow X = bird ; Animal = flamingo X = bird ; Animal = salmon X = fish ; M. Spichkova WS 2012/13: Applied Logic in Engineering 14

15 ProLog: Queries (5) animal(baer, mammal). animal(tiger, mammal). animal(sparrow, bird). animal(flamingo, bird). animal(salmon, fish). plant(rose). plant(palm). plant(tulip). is_flower(tulip). creature(x) :- animal(x, _). creature(x) :- plant(x).?- animal(_, X). X = mammal ; X = mammal ; X = bird ; X = bird ; X = fish ; M. Spichkova WS 2012/13: Applied Logic in Engineering 15

16 ProLog: Queries (6) animal(baer, mammal). animal(tiger, mammal). animal(sparrow, bird). animal(flamingo, bird). animal(salmon, fish). plant(rose). plant(palm). plant(tulip). is_flower(tulip). creature(x) :- animal(x, _). creature(x) :- plant(x).?- animal(tiger, X). X = mammal ; no?- animal. WARNING: undefined predicate: animal/0 However there are definitions for: animal/2 M. Spichkova WS 2012/13: Applied Logic in Engineering 16

17 ProLog: Order p(x, Z) :- q(x,y), p(y, Z). p(x, X). q(a,b). p(x, Z) :- p(y, Z), q(x,y). p(x, X). q(a,b).?- p(t,b).?- p(t,b). M. Spichkova WS 2012/13: Applied Logic in Engineering 17

ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS

ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS PROCEEDINGS OF THE YEREVAN STATE UNIVERSITY Physical and Mathematical Sciences 2012 1 p. 43 48 ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS I nf or m at i cs L. A. HAYKAZYAN * Chair of Programming and Information

More information

Lecture 8: Resolution theorem-proving

Lecture 8: Resolution theorem-proving Comp24412 Symbolic AI Lecture 8: Resolution theorem-proving Ian Pratt-Hartmann Room KB2.38: email: ipratt@cs.man.ac.uk 2014 15 In the previous Lecture, we met SATCHMO, a first-order theorem-prover implemented

More information

Chapter 7 Uncomputability

Chapter 7 Uncomputability Chapter 7 Uncomputability 190 7.1 Introduction Undecidability of concrete problems. First undecidable problem obtained by diagonalisation. Other undecidable problems obtained by means of the reduction

More information

AUTOMATED REASONING SLIDES 3: RESOLUTION The resolution rule Unification Refutation by resolution Factoring Clausal Form and Skolemisation

AUTOMATED REASONING SLIDES 3: RESOLUTION The resolution rule Unification Refutation by resolution Factoring Clausal Form and Skolemisation AUTOMATED REASONING SLIDES 3: RESOLUTION The resolution rule Unification Refutation by resolution Factoring Clausal Form and Skolemisation KB - AR - 09 Resolution Resolution is a clausal refutation system

More information

Algorithmic Software Verification

Algorithmic Software Verification Algorithmic Software Verification (LTL Model Checking) Azadeh Farzan What is Verification Anyway? Proving (in a formal way) that program satisfies a specification written in a logical language. Formal

More information

CHAPTER 7 GENERAL PROOF SYSTEMS

CHAPTER 7 GENERAL PROOF SYSTEMS CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes

More information

The Point-Slope Form

The Point-Slope Form 7. The Point-Slope Form 7. OBJECTIVES 1. Given a point and a slope, find the graph of a line. Given a point and the slope, find the equation of a line. Given two points, find the equation of a line y Slope

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence ICS461 Fall 2010 1 Lecture #12B More Representations Outline Logics Rules Frames Nancy E. Reed nreed@hawaii.edu 2 Representation Agents deal with knowledge (data) Facts (believe

More information

Example: Backward Chaining. Inference Strategy: Backward Chaining. First-Order Logic. Knowledge Engineering. Example: Proof

Example: Backward Chaining. Inference Strategy: Backward Chaining. First-Order Logic. Knowledge Engineering. Example: Proof Inference Strategy: Backward Chaining Idea: Check whether a particular fact q is true. Backward Chaining: Given a fact q to be proven, 1. See if q is already in the KB. If so, return TRUE. 2. Find all

More information

The Modal Logic Programming System MProlog

The Modal Logic Programming System MProlog The Modal Logic Programming System MProlog Linh Anh Nguyen Institute of Informatics, University of Warsaw ul. Banacha 2, 02-097 Warsaw, Poland nguyen@mimuw.edu.pl Abstract. We present the design of our

More information

Lecture 7: NP-Complete Problems

Lecture 7: NP-Complete Problems IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 7: NP-Complete Problems David Mix Barrington and Alexis Maciel July 25, 2000 1. Circuit

More information

1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)

1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification) Some N P problems Computer scientists have studied many N P problems, that is, problems that can be solved nondeterministically in polynomial time. Traditionally complexity question are studied as languages:

More information

http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86

http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86 Atlantic Electronic http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86 AUTOMATED RECOGNITION OF STUTTER INVARIANCE OF LTL FORMULAS Jeffrey Dallien 1 and Wendy

More information

Algorithms are the threads that tie together most of the subfields of computer science.

Algorithms are the threads that tie together most of the subfields of computer science. Algorithms Algorithms 1 Algorithms are the threads that tie together most of the subfields of computer science. Something magically beautiful happens when a sequence of commands and decisions is able to

More information

Propositional Logic. A proposition is a declarative sentence (a sentence that declares a fact) that is either true or false, but not both.

Propositional Logic. A proposition is a declarative sentence (a sentence that declares a fact) that is either true or false, but not both. irst Order Logic Propositional Logic A proposition is a declarative sentence (a sentence that declares a fact) that is either true or false, but not both. Are the following sentences propositions? oronto

More information

Today s Agenda. Automata and Logic. Quiz 4 Temporal Logic. Introduction Buchi Automata Linear Time Logic Summary

Today s Agenda. Automata and Logic. Quiz 4 Temporal Logic. Introduction Buchi Automata Linear Time Logic Summary Today s Agenda Quiz 4 Temporal Logic Formal Methods in Software Engineering 1 Automata and Logic Introduction Buchi Automata Linear Time Logic Summary Formal Methods in Software Engineering 2 1 Buchi Automata

More information

Computational Methods for Database Repair by Signed Formulae

Computational Methods for Database Repair by Signed Formulae Computational Methods for Database Repair by Signed Formulae Ofer Arieli (oarieli@mta.ac.il) Department of Computer Science, The Academic College of Tel-Aviv, 4 Antokolski street, Tel-Aviv 61161, Israel.

More information

Language. Johann Eder. Universitat Klagenfurt. Institut fur Informatik. Universiatsstr. 65. A-9020 Klagenfurt / AUSTRIA

Language. Johann Eder. Universitat Klagenfurt. Institut fur Informatik. Universiatsstr. 65. A-9020 Klagenfurt / AUSTRIA PLOP: A Polymorphic Logic Database Programming Language Johann Eder Universitat Klagenfurt Institut fur Informatik Universiatsstr. 65 A-9020 Klagenfurt / AUSTRIA February 12, 1993 Extended Abstract The

More information

Generating models of a matched formula with a polynomial delay

Generating models of a matched formula with a polynomial delay Generating models of a matched formula with a polynomial delay Petr Savicky Institute of Computer Science, Academy of Sciences of Czech Republic, Pod Vodárenskou Věží 2, 182 07 Praha 8, Czech Republic

More information

Logic in general. Inference rules and theorem proving

Logic in general. Inference rules and theorem proving Logical Agents Knowledge-based agents Logic in general Propositional logic Inference rules and theorem proving First order logic Knowledge-based agents Inference engine Knowledge base Domain-independent

More information

COMPUTER SCIENCE TRIPOS

COMPUTER SCIENCE TRIPOS CST.98.5.1 COMPUTER SCIENCE TRIPOS Part IB Wednesday 3 June 1998 1.30 to 4.30 Paper 5 Answer five questions. No more than two questions from any one section are to be answered. Submit the answers in five

More information

2. The Language of First-order Logic

2. The Language of First-order Logic 2. The Language of First-order Logic KR & R Brachman & Levesque 2005 17 Declarative language Before building system before there can be learning, reasoning, planning, explanation... need to be able to

More information

Oracle Database 10g: Introduction to SQL

Oracle Database 10g: Introduction to SQL Oracle University Contact Us: 1.800.529.0165 Oracle Database 10g: Introduction to SQL Duration: 5 Days What you will learn This course offers students an introduction to Oracle Database 10g database technology.

More information

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Martin Leucker Technische Universität München (joint work with Andreas Bauer, Christian Schallhart et. al) FLACOS

More information

Theoretical Computer Science (Bridging Course) Complexity

Theoretical Computer Science (Bridging Course) Complexity Theoretical Computer Science (Bridging Course) Complexity Gian Diego Tipaldi A scenario You are a programmer working for a logistics company Your boss asks you to implement a program that optimizes the

More information

simplicity hides complexity

simplicity hides complexity flow of control backtracking reasoning in logic and in Prolog 1 simplicity hides complexity simple and/or connections of goals conceal very complex control patterns Prolog programs are not easily represented

More information

Satisfiability Checking

Satisfiability Checking Satisfiability Checking SAT-Solving Prof. Dr. Erika Ábrahám Theory of Hybrid Systems Informatik 2 WS 10/11 Prof. Dr. Erika Ábrahám - Satisfiability Checking 1 / 40 A basic SAT algorithm Assume the CNF

More information

µz An Efficient Engine for Fixed points with Constraints

µz An Efficient Engine for Fixed points with Constraints µz An Efficient Engine for Fixed points with Constraints Kryštof Hoder, Nikolaj Bjørner, and Leonardo de Moura Manchester University and Microsoft Research Abstract. The µz tool is a scalable, efficient

More information

Certamen 1 de Representación del Conocimiento

Certamen 1 de Representación del Conocimiento Certamen 1 de Representación del Conocimiento Segundo Semestre 2012 Question: 1 2 3 4 5 6 7 8 9 Total Points: 2 2 1 1 / 2 1 / 2 3 1 1 / 2 1 1 / 2 12 Here we show one way to solve each question, but there

More information

15-780: Graduate AI Lecture 3. FOL proofs. Geoff Gordon (this lecture) Tuomas Sandholm TAs Erik Zawadzki, Abe Othman

15-780: Graduate AI Lecture 3. FOL proofs. Geoff Gordon (this lecture) Tuomas Sandholm TAs Erik Zawadzki, Abe Othman 15-780: Graduate AI Lecture 3. FOL proofs Geoff Gordon (this lecture) Tuomas Sandholm TAs Erik Zawadzki, Abe Othman Admin 2 HW1 Out today Due Tue, Feb. 1 (two weeks) hand in hardcopy at beginning of class

More information

Introduction to NP-Completeness Written and copyright c by Jie Wang 1

Introduction to NP-Completeness Written and copyright c by Jie Wang 1 91.502 Foundations of Comuter Science 1 Introduction to Written and coyright c by Jie Wang 1 We use time-bounded (deterministic and nondeterministic) Turing machines to study comutational comlexity of

More information

(LMCS, p. 317) V.1. First Order Logic. This is the most powerful, most expressive logic that we will examine.

(LMCS, p. 317) V.1. First Order Logic. This is the most powerful, most expressive logic that we will examine. (LMCS, p. 317) V.1 First Order Logic This is the most powerful, most expressive logic that we will examine. Our version of first-order logic will use the following symbols: variables connectives (,,,,

More information

Resolution. Informatics 1 School of Informatics, University of Edinburgh

Resolution. Informatics 1 School of Informatics, University of Edinburgh Resolution In this lecture you will see how to convert the natural proof system of previous lectures into one with fewer operators and only one proof rule. You will see how this proof system can be used

More information

Sound and Complete Inference Rules in FOL

Sound and Complete Inference Rules in FOL Sound and Complete Inference Rules in FOL An inference rule i is called sound if KB = α whenever KB i α An inference rule i is called complete if KB i α whenever KB = α Generalised Modus-Ponens (equivalently,

More information

Chapter. NP-Completeness. Contents

Chapter. NP-Completeness. Contents Chapter 13 NP-Completeness Contents 13.1 P and NP......................... 593 13.1.1 Defining the Complexity Classes P and NP...594 13.1.2 Some Interesting Problems in NP.......... 597 13.2 NP-Completeness....................

More information

Predicate Logic. For example, consider the following argument:

Predicate Logic. For example, consider the following argument: Predicate Logic The analysis of compound statements covers key aspects of human reasoning but does not capture many important, and common, instances of reasoning that are also logically valid. For example,

More information

CS510 Software Engineering

CS510 Software Engineering CS510 Software Engineering Propositional Logic Asst. Prof. Mathias Payer Department of Computer Science Purdue University TA: Scott A. Carr Slides inspired by Xiangyu Zhang http://nebelwelt.net/teaching/15-cs510-se

More information

Eventia Log Parsing Editor 1.0 Administration Guide

Eventia Log Parsing Editor 1.0 Administration Guide Eventia Log Parsing Editor 1.0 Administration Guide Revised: November 28, 2007 In This Document Overview page 2 Installation and Supported Platforms page 4 Menus and Main Window page 5 Creating Parsing

More information

Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson

Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement

More information

Probabilità e Nondeterminismo nella teoria dei domini

Probabilità e Nondeterminismo nella teoria dei domini Probabilità e Nondeterminismo nella teoria dei domini Daniele Varacca ENS, Paris BRICS, Aarhus Parma, 15 giugno 2004 Probabilità e Nondeterminismo nella teoria dei domini p.1 Road Map Motivation Domain

More information

Second-Order Characterizations of Definientia in Formula Classes

Second-Order Characterizations of Definientia in Formula Classes Faculty of Computer Science Institute of Artificial Intelligence Knowledge Representation and Reasoning Second-Order Characterizations of Definientia in Formula Classes Christoph Wernhard KRR Report 14-03

More information

Answers G53KRR 2009-10

Answers G53KRR 2009-10 s G53KRR 2009-10 1. (a) Express the following sentences in first-order logic, using unary predicates Fragile, Break, Fall, TennisBall. S1 Fragile things break if they fall S2 Tennis balls are not fragile

More information

Technical Report. Identifying meaningless parameterized linear-temporallogic. Nr. TUD-CS-2012-0014 January 17 th, 2012

Technical Report. Identifying meaningless parameterized linear-temporallogic. Nr. TUD-CS-2012-0014 January 17 th, 2012 Technical Report Nr. TUD-CS-2012-0014 January 17 th, 2012 Identifying meaningless parameterized linear-temporallogic formulas Authors Eric Bodden (EC SPRIDE, CASED) Identifying meaningless parameterized

More information

Fixed-Point Logics and Computation

Fixed-Point Logics and Computation 1 Fixed-Point Logics and Computation Symposium on the Unusual Effectiveness of Logic in Computer Science University of Cambridge 2 Mathematical Logic Mathematical logic seeks to formalise the process of

More information

Summary of Last Lecture. Automated Reasoning. Outline of the Lecture. Definition. Example. Lemma non-redundant superposition inferences are liftable

Summary of Last Lecture. Automated Reasoning. Outline of the Lecture. Definition. Example. Lemma non-redundant superposition inferences are liftable Summary Automated Reasoning Georg Moser Institute of Computer Science @ UIBK Summary of Last Lecture C A D B (C D)σ C s = t D A[s ] (C D A[t])σ ORe OPm(L) C s = t D u[s ] v SpL (C D u[t] v)σ C s t Cσ ERR

More information

NP-Completeness and Cook s Theorem

NP-Completeness and Cook s Theorem NP-Completeness and Cook s Theorem Lecture notes for COM3412 Logic and Computation 15th January 2002 1 NP decision problems The decision problem D L for a formal language L Σ is the computational task:

More information

ML for the Working Programmer

ML for the Working Programmer ML for the Working Programmer 2nd edition Lawrence C. Paulson University of Cambridge CAMBRIDGE UNIVERSITY PRESS CONTENTS Preface to the Second Edition Preface xiii xv 1 Standard ML 1 Functional Programming

More information

Semantic Description of Distributed Business Processes

Semantic Description of Distributed Business Processes Semantic Description of Distributed Business Processes Authors: S. Agarwal, S. Rudolph, A. Abecker Presenter: Veli Bicer FZI Forschungszentrum Informatik, Karlsruhe Outline Motivation Formalism for Modeling

More information

The Classes P and NP

The Classes P and NP The Classes P and NP We now shift gears slightly and restrict our attention to the examination of two families of problems which are very important to computer scientists. These families constitute the

More information

10.2 Series and Convergence

10.2 Series and Convergence 10.2 Series and Convergence Write sums using sigma notation Find the partial sums of series and determine convergence or divergence of infinite series Find the N th partial sums of geometric series and

More information

Lehrstuhl für Informatik 2

Lehrstuhl für Informatik 2 Analytical Learning Introduction Lehrstuhl Explanation is used to distinguish the relevant features of the training examples from the irrelevant ones, so that the examples can be generalised Introduction

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 Now that we have a basic understanding

More information

Algorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha

Algorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha Algorithm & Flowchart & Pseudo code Staff Incharge: S.Sasirekha Computer Programming and Languages Computers work on a set of instructions called computer program, which clearly specify the ways to carry

More information

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented

More information

Copy in your notebook: Add an example of each term with the symbols used in algebra 2 if there are any.

Copy in your notebook: Add an example of each term with the symbols used in algebra 2 if there are any. Algebra 2 - Chapter Prerequisites Vocabulary Copy in your notebook: Add an example of each term with the symbols used in algebra 2 if there are any. P1 p. 1 1. counting(natural) numbers - {1,2,3,4,...}

More information

First-Order Stable Model Semantics and First-Order Loop Formulas

First-Order Stable Model Semantics and First-Order Loop Formulas Journal of Artificial Intelligence Research 42 (2011) 125-180 Submitted 03/11; published 10/11 First-Order Stable Model Semantics and First-Order Loop Formulas Joohyung Lee Yunsong Meng School of Computing,

More information

LTL Model Checking with Logic Based Petri Nets

LTL Model Checking with Logic Based Petri Nets LTL Model Checking with Logic Based Petri Nets Tristan M. Behrens and Jürgen Dix IfI Technical Report Series IfI-07-04 Impressum Publisher: Institut für Informatik, Technische Universität Clausthal Julius-Albert

More information

The countdown problem

The countdown problem JFP 12 (6): 609 616, November 2002. c 2002 Cambridge University Press DOI: 10.1017/S0956796801004300 Printed in the United Kingdom 609 F U N C T I O N A L P E A R L The countdown problem GRAHAM HUTTON

More information

Formalization of the CRM: Initial Thoughts

Formalization of the CRM: Initial Thoughts Formalization of the CRM: Initial Thoughts Carlo Meghini Istituto di Scienza e Tecnologie della Informazione Consiglio Nazionale delle Ricerche Pisa CRM SIG Meeting Iraklio, October 1st, 2014 Outline Overture:

More information

How To Understand The Theory Of Computer Science

How To Understand The Theory Of Computer Science Theory of Computation Lecture Notes Abhijat Vichare August 2005 Contents 1 Introduction 2 What is Computation? 3 The λ Calculus 3.1 Conversions: 3.2 The calculus in use 3.3 Few Important Theorems 3.4 Worked

More information

On Abduction and Answer Generation through Constrained Resolution

On Abduction and Answer Generation through Constrained Resolution Deutsches Forschungszentrum für Künstliche Intelligenz GmbH Research Report RR-92-51 On Abduction and Answer Generation through Constrained Resolution Hans-Jürgen Bürckert, Werner Nutt October 1992 Deutsches

More information

A Knowledge-based System for Translating FOL Formulas into NL Sentences

A Knowledge-based System for Translating FOL Formulas into NL Sentences A Knowledge-based System for Translating FOL Formulas into NL Sentences Aikaterini Mpagouli, Ioannis Hatzilygeroudis University of Patras, School of Engineering Department of Computer Engineering & Informatics,

More information

Exercise Design and Implementation in Active Math

Exercise Design and Implementation in Active Math Interactivity of Exercises in ActiveMath Giorgi Goguadze a, Alberto González Palomo b, Erica Melis c, a University of Saarland, Saarbrücken, Germany b German Research Institute for Artificial Intelligence

More information

Elementary Number Theory and Methods of Proof. CSE 215, Foundations of Computer Science Stony Brook University http://www.cs.stonybrook.

Elementary Number Theory and Methods of Proof. CSE 215, Foundations of Computer Science Stony Brook University http://www.cs.stonybrook. Elementary Number Theory and Methods of Proof CSE 215, Foundations of Computer Science Stony Brook University http://www.cs.stonybrook.edu/~cse215 1 Number theory Properties: 2 Properties of integers (whole

More information

One More Decidable Class of Finitely Ground Programs

One More Decidable Class of Finitely Ground Programs One More Decidable Class of Finitely Ground Programs Yuliya Lierler and Vladimir Lifschitz Department of Computer Sciences, University of Texas at Austin {yuliya,vl}@cs.utexas.edu Abstract. When a logic

More information

Relational Calculus. Module 3, Lecture 2. Database Management Systems, R. Ramakrishnan 1

Relational Calculus. Module 3, Lecture 2. Database Management Systems, R. Ramakrishnan 1 Relational Calculus Module 3, Lecture 2 Database Management Systems, R. Ramakrishnan 1 Relational Calculus Comes in two flavours: Tuple relational calculus (TRC) and Domain relational calculus (DRC). Calculus

More information

Knowledge-Based Synthesis of Distributed Systems Using Event Structures

Knowledge-Based Synthesis of Distributed Systems Using Event Structures Knowledge-Based Synthesis of Distributed Systems Using Event Structures Mark Bickford, Robert C. Constable, Joseph Y. Halpern, and Sabina Petride Department of Computer Science Cornell University Ithaca,

More information

We used attributes in Chapter 3 to augment a context-free grammar

We used attributes in Chapter 3 to augment a context-free grammar Chapter 4 TWO-LEVEL GRAMMARS We used attributes in Chapter 3 to augment a context-free grammar in order to verify context sensitivity. This chapter will focus on twolevel grammars, another formal technique

More information

Secrecy for Bounded Security Protocols With Freshness Check is NEXPTIME-complete

Secrecy for Bounded Security Protocols With Freshness Check is NEXPTIME-complete Journal of Computer Security vol 16, no 6, 689-712, 2008. Secrecy for Bounded Security Protocols With Freshness Check is NEXPTIME-complete Ferucio L. Țiplea a), b), Cătălin V. Bîrjoveanu a), Constantin

More information

Copyright 2012 MECS I.J.Information Technology and Computer Science, 2012, 1, 50-63

Copyright 2012 MECS I.J.Information Technology and Computer Science, 2012, 1, 50-63 I.J. Information Technology and Computer Science, 2012, 1, 50-63 Published Online February 2012 in MECS (http://www.mecs-press.org/) DOI: 10.5815/ijitcs.2012.01.07 Using Logic Programming to Represent

More information

The ProB Animator and Model Checker for B

The ProB Animator and Model Checker for B The ProB Animator and Model Checker for B A Tool Description Michael Leuschel and Michael Butler Department of Electronics and Computer Science University of Southampton Highfield, Southampton, SO17 1BJ,

More information

A Little Set Theory (Never Hurt Anybody)

A Little Set Theory (Never Hurt Anybody) A Little Set Theory (Never Hurt Anybody) Matthew Saltzman Department of Mathematical Sciences Clemson University Draft: August 21, 2013 1 Introduction The fundamental ideas of set theory and the algebra

More information

Bounded Treewidth in Knowledge Representation and Reasoning 1

Bounded Treewidth in Knowledge Representation and Reasoning 1 Bounded Treewidth in Knowledge Representation and Reasoning 1 Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien Luminy, October 2010 1 Joint work with G.

More information

Course Syllabus For Operations Management. Management Information Systems

Course Syllabus For Operations Management. Management Information Systems For Operations Management and Management Information Systems Department School Year First Year First Year First Year Second year Second year Second year Third year Third year Third year Third year Third

More information

npsolver A SAT Based Solver for Optimization Problems

npsolver A SAT Based Solver for Optimization Problems npsolver A SAT Based Solver for Optimization Problems Norbert Manthey and Peter Steinke Knowledge Representation and Reasoning Group Technische Universität Dresden, 01062 Dresden, Germany peter@janeway.inf.tu-dresden.de

More information

Software Modeling and Verification

Software Modeling and Verification Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

More information

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms CSCE 310J Data Structures & Algorithms P, NP, and NP-Complete Dr. Steve Goddard goddard@cse.unl.edu CSCE 310J Data Structures & Algorithms Giving credit where credit is due:» Most of the lecture notes

More information

Databases and Information Systems 1 Part 3: Storage Structures and Indices

Databases and Information Systems 1 Part 3: Storage Structures and Indices bases and Information Systems 1 Part 3: Storage Structures and Indices Prof. Dr. Stefan Böttcher Fakultät EIM, Institut für Informatik Universität Paderborn WS 2009 / 2010 Contents: - database buffer -

More information

HECTOR a software model checker with cooperating analysis plugins. Nathaniel Charlton and Michael Huth Imperial College London

HECTOR a software model checker with cooperating analysis plugins. Nathaniel Charlton and Michael Huth Imperial College London HECTOR a software model checker with cooperating analysis plugins Nathaniel Charlton and Michael Huth Imperial College London Introduction HECTOR targets imperative heap-manipulating programs uses abstraction

More information

SQL INJECTION ATTACKS By Zelinski Radu, Technical University of Moldova

SQL INJECTION ATTACKS By Zelinski Radu, Technical University of Moldova SQL INJECTION ATTACKS By Zelinski Radu, Technical University of Moldova Where someone is building a Web application, often he need to use databases to store information, or to manage user accounts. And

More information

Attack Taxonomies and Ontologies

Attack Taxonomies and Ontologies Lehrstuhl Netzarchitekturen und Netzdienste Institut für Informatik Technische Universität München Attack Taxonomies and Ontologies Seminar Future Internet Supervisor: Nadine Herold Natascha Abrek 02.10.2014

More information

CSE 459/598: Logic for Computer Scientists (Spring 2012)

CSE 459/598: Logic for Computer Scientists (Spring 2012) CSE 459/598: Logic for Computer Scientists (Spring 2012) Time and Place: T Th 10:30-11:45 a.m., M1-09 Instructor: Joohyung Lee (joolee@asu.edu) Instructor s Office Hours: T Th 4:30-5:30 p.m. and by appointment

More information

6. SQL/XML. 6.1 Introduction. 6.1 Introduction. 6.1 Introduction. 6.1 Introduction. XML Databases 6. SQL/XML. Creating XML documents from a database

6. SQL/XML. 6.1 Introduction. 6.1 Introduction. 6.1 Introduction. 6.1 Introduction. XML Databases 6. SQL/XML. Creating XML documents from a database XML Databases Silke Eckstein Andreas Kupfer Institut für Informationssysteme Technische Universität http://www.ifis.cs.tu-bs.de in XML XML Databases SilkeEckstein Institut fürinformationssysteme TU 2 Creating

More information

Oracle SQL. Course Summary. Duration. Objectives

Oracle SQL. Course Summary. Duration. Objectives Oracle SQL Course Summary Identify the major structural components of the Oracle Database 11g Create reports of aggregated data Write SELECT statements that include queries Retrieve row and column data

More information

Boolean Algebra Part 1

Boolean Algebra Part 1 Boolean Algebra Part 1 Page 1 Boolean Algebra Objectives Understand Basic Boolean Algebra Relate Boolean Algebra to Logic Networks Prove Laws using Truth Tables Understand and Use First Basic Theorems

More information

2.1 Complexity Classes

2.1 Complexity Classes 15-859(M): Randomized Algorithms Lecturer: Shuchi Chawla Topic: Complexity classes, Identity checking Date: September 15, 2004 Scribe: Andrew Gilpin 2.1 Complexity Classes In this lecture we will look

More information

CS 3719 (Theory of Computation and Algorithms) Lecture 4

CS 3719 (Theory of Computation and Algorithms) Lecture 4 CS 3719 (Theory of Computation and Algorithms) Lecture 4 Antonina Kolokolova January 18, 2012 1 Undecidable languages 1.1 Church-Turing thesis Let s recap how it all started. In 1990, Hilbert stated a

More information

Chapter 3. Cartesian Products and Relations. 3.1 Cartesian Products

Chapter 3. Cartesian Products and Relations. 3.1 Cartesian Products Chapter 3 Cartesian Products and Relations The material in this chapter is the first real encounter with abstraction. Relations are very general thing they are a special type of subset. After introducing

More information

Description and Matching of Services in Mobile Environments

Description and Matching of Services in Mobile Environments Description and Matching of Services in Mobile Environments Johannes Grünbauer 1 and Michael Klein 2 1 Institut für Informatik, Technische Universität München, 85748 Garching, Germany, gruenbau@in.tum.de

More information

How To Pass A Master Degree In Germany

How To Pass A Master Degree In Germany Technische Universität Berlin OFFICIAL GAZETTE Publisher: The President of the Technische Universität Berlin No. 2/2015 Straße des 17. Juni 135, 10623 Berlin, Germany (volume 68) ISSN 0172-4924 Berlin

More information

Lecture 1. Basic Concepts of Set Theory, Functions and Relations

Lecture 1. Basic Concepts of Set Theory, Functions and Relations September 7, 2005 p. 1 Lecture 1. Basic Concepts of Set Theory, Functions and Relations 0. Preliminaries...1 1. Basic Concepts of Set Theory...1 1.1. Sets and elements...1 1.2. Specification of sets...2

More information

XML Databases 6. SQL/XML

XML Databases 6. SQL/XML XML Databases 6. SQL/XML Silke Eckstein Andreas Kupfer Institut für Informationssysteme Technische Universität Braunschweig http://www.ifis.cs.tu-bs.de 6. SQL/XML 6.1Introduction 6.2 Publishing relational

More information

Georg Cantor and Set Theory

Georg Cantor and Set Theory Georg Cantor and Set Theory. Life Father, Georg Waldemar Cantor, born in Denmark, successful merchant, and stock broker in St Petersburg. Mother, Maria Anna Böhm, was Russian. In 856, because of father

More information

Magic Sets and their Application to Data Integration

Magic Sets and their Application to Data Integration Magic Sets and their Application to Data Integration Wolfgang Faber, Gianluigi Greco, Nicola Leone Department of Mathematics University of Calabria, Italy {faber,greco,leone}@mat.unical.it Roadmap Motivation:

More information

Petri Net based Verification and

Petri Net based Verification and Petri Net based Verification and Reconfiguration of BPMN Represented Configured Construction Processes Faikcan Kog PhD candidate, Institute of Construction Informatics, Faculty of Civil Engineering, Technische

More information

Computability Theory

Computability Theory CSC 438F/2404F Notes (S. Cook and T. Pitassi) Fall, 2014 Computability Theory This section is partly inspired by the material in A Course in Mathematical Logic by Bell and Machover, Chap 6, sections 1-10.

More information

How To Understand And Understand Common Lisp

How To Understand And Understand Common Lisp Language-Oriented Programming am Beispiel Lisp Arbeitskreis Objekttechnologie Norddeutschland HAW Hamburg, 6.7.2009 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik und Capgemini sd&m Research

More information

NUMBER SYSTEMS. William Stallings

NUMBER SYSTEMS. William Stallings NUMBER SYSTEMS William Stallings The Decimal System... The Binary System...3 Converting between Binary and Decimal...3 Integers...4 Fractions...5 Hexadecimal Notation...6 This document available at WilliamStallings.com/StudentSupport.html

More information

Factoring Polynomials

Factoring Polynomials Factoring a Polynomial Expression Factoring a polynomial is expressing the polynomial as a product of two or more factors. Simply stated, it is somewhat the reverse process of multiplying. To factor polynomials,

More information

XSLT - A Beginner's Glossary

XSLT - A Beginner's Glossary XSL Transformations, Database Queries, and Computation 1. Introduction and Overview XSLT is a recent special-purpose language for transforming XML documents Expressive power of XSLT? Pekka Kilpelainen

More information