logic as the calculus of computer sciencepeople.na.infn.it/~murano/sicsi/baselice.pdf · logic as...

19
Intro Historical Steps Classes of Logics Conlusion Logic as The Calculus of Computer Science noneng. S. Baselice (I have no stamp) 1 Ottobre, 2007 1 Universit ` a di Napoli Federico II noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

Upload: ledan

Post on 19-Feb-2019

231 views

Category:

Documents


0 download

TRANSCRIPT

IntroHistorical Steps

Classes of LogicsConlusion

Logic as The Calculus of Computer Science

noneng. S. Baselice (I have no stamp) 1

Ottobre, 2007

1Universita di Napoli Federico IInoneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

What is a Logic?

A Logic is a formalism witha sintaxa semanticsan inference mechanism for reasoning

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

Historical Diagram

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

The First Age of Logic: Symbolic Logic(500 B.C. - 19th Century)

Originally, Logic dealt with arguments in the natural languagesused by humans.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

The First Age of Logic: Symbolic Logic(500 B.C. - 19th Century)

The Surprise Paradox:

Natural language is too ambiguous!It is needed a Symbolic Language.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

The 2nd Age of Logic: Algebraic Logic(Mid to Late 19th Century)

In 1847, George Boole attempted to formulate logic in termsof mathematical language.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

The 3rd Age of Logic: Mathematical Logic(Late 19th Century to Mid 20th Century)

As mathematical proofs became more sophisticated, paradoxesbegan to show up in them just as they did in natural language.Hilbert proposed logic for computing each mathematical problem.

Godel’s Incompleteness Theorems proved that logic cannot proveevery statement and it cannot prove its own consistency.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

The 4th Age of Logic: Logic in Computer Science

”Logic occupacy a central place in computer science so that logichas been called the calculus of computer science. ... Computerscience started as Logic.” (M. Y. Vardi)

”I expected that digital computing machines will eventuallystimulate a considerable interest in symbolic logic. ... Thelanguage in which one communicates with these machines ...forms a sort of symbolic logic.” (A. Turing)

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

Propositional Logic

A formalism for modeling statements that are either true or false.

Boolean Logic

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

First Order Logic

A formalism for specifying properties of mathematical structures,such as graphs, Database System,...

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

Modal Logic

A formalism for modeling necessity and possibility.

Model Checking: ψ ≡”there is a deadlock”

Mψ, is it possible there will be a deadlock?

L¬ψ, it is necessary there is no deadlock

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

Nonmonotonic Logics

A Nonmonotonic Logic L is s.t. adding a new axiom to a theory T on Lmay cause the lost of a theorem proved in T .

Access Control Policies:

P = {...,aut(Sogg,Act ,Ogg,−)← notaut(Sogg,Act ,Ogg,+), ...}

P � aut(john, read , file,−)

⇓P ∪ {aut(john, read , file,+)} 2 aut(john, read , file,−)

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

Nonmonotonic Logics

A Nonmonotonic Logic L is s.t. adding a new axiom to a theory T on Lmay cause the lost of a theorem proved in T .

Commonsense Knowledge and Reasoning:

”My car is in garage.”

..oops..! ”My car is not in garage”

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

Impact of Logic in Computer Science

Computer-Aided Verification (model checking)Database System (SQL, relational algebra)Computational Complexity (complexity and expressivity)Programming Languages (formal semantics, type theory, rewritingsystems,...)Computer Security (access control policies, negotiation policies,...)Artificial Intelligence (commonsese knowledge and reasoning)Distributed Systems (domain description)Logic Programming (inference)Software Engineering (modeling)

...

[7, 8, 2, 6, 19, 15, 4, 10, 16, 3, 9, 12, 5, 1, 13, 11, 14, 18, 17]noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

References I

C. Baral.Knowledge Representation, Reasoning and Declarative Problem Solving.Cambridge University Press, Cambridge, 2003.

L. C. Aiello and F. Massacci.Verifying security protocols as planning in logic programming.ACM Trans. Comput. Logic, 2(4):542–580, 2001.

K. L. Clark.Negation as failure.In Logic and Data Bases, pages 293–322, 1977.

T. Eiter, W. Faber, and M. Truszczynski, editors.Logic Programming and Nonmonotonic Reasoning, 6th International Conference,LPNMR 2001, Vienna, Austria, September 17-19, 2001, Proceedings, volume2173 of Lecture Notes in Computer Science. Springer, 2001.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

References II

M.H. Van Emden and R.A. Kowalski.The semantics of predicate logic as a programming language.J. ACM, 23(4):733–742, 1976.

M. Gabbrielli and G. Gupta, editors.Logic Programming, 21st International Conference, ICLP 2005, Sitges, Spain,October 2-5, 2005, Proceedings, volume 3668 of Lecture Notes in ComputerScience. Springer, 2005.

M. Gelfond and V. Lifschitz.The stable model semantics for logic programming.In Proc. of the 5th ICLP, pages 1070–1080. MIT Press, 1988.

M. Gelfond and V. Lifschitz.Classical negation in logic programs and disjunctive databases.New Generation Computing, 9(3-4):365–386, 1991.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

References III

M. L. Ginsberg and D. E. Smith.Possible worlds and the qualification problem.In AAAI, pages 212–217, 1987.

J. W. Lloyd.Foundations of Logic Programming, 1st Edition.Springer, 1984.

W. Marek and M. Truszczynski.Autoepistemic logic.J. ACM, 38(3):587–618, 1991.

J. McCarthy.Programs with common sense.In Proceedings of the Teddington Conference on the Mechanization of ThoughtProcesses, pages 75–91, London, 1959. Her Majesty’s Stationary Office.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

References IV

R. Reiter.A logic for default reasoning.Artificial Intelligence, 13:81–132, 1980.

J. R. Shoenfield.Mathematical Logic.Series in Logic. Addison-Wesley, Reading, MA, 1967.

P. Simons, I. Niemela, and T. Soininen.Extending and implementing the stable model semantics.Artif. Intell., 138(1-2):181–234, 2002.

P. J. Stuckey, editor.Logic Programming, 18th International Conference, ICLP 2002, Copenhagen,Denmark, July 29 - August 1, 2002, Proceedings, volume 2401 of Lecture Notesin Computer Science. Springer, 2002.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science

IntroHistorical Steps

Classes of LogicsConlusion

References V

M.Y. Vardi.Logic as the calculus of computer science.Technical report, Rice University.

M.Y. Vardi.A brief history of logic.Technical report, Rice University, 2003.

M. De Vos and A. Provetti, editors.Answer Set Programming, Advances in Theory and Implementation, Proceedingsof the 3rd Intl. ASP’05 Workshop, Bath, UK, September 27-29, 2005, volume 142of CEUR Workshop Proceedings. CEUR-WS.org, 2005.

noneng. S. Baselice (I have no stamp) Logic as The Calculus of Computer Science