Decidability and Decision Procedures –Some Historical Notes–

Total Page:16

File Type:pdf, Size:1020Kb

Decidability and Decision Procedures –Some Historical Notes– Satisfiability Checking Decidability and Decision Procedures –Some Historical Notes– Prof. Dr. Erika Ábrahám RWTH Aachen University Informatik 2 LuFG Theory of Hybrid Systems WS 19/20 Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 1 / 26 Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 branch and bound, Omega test Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 Peano arithmetic (N with + and ∗) undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University) WS 19/20 2 / 26 undecidable - But actually what does it mean “decidable” or “undecidable”? FO theories and their decidability Some first-order theories: Logic decidability algorithm Propositional logic decidable SAT-solving Equational logic decidable SAT-encoding Equational logic with uninterpr. functions decidable SAT-encoding Linear real algebra (R with +) decidable Simplex Real algebra (R with + and ∗) decidable CAD virtual substitution Presburger arithmetic (N with +) decidable branch and bound, Omega test Peano arithmetic (N with + and ∗) Satisfiability Checking — Prof. Dr. Erika Ábrahám (RWTH Aachen University)
Recommended publications
  • The Consistency of Arithmetic
    The Consistency of Arithmetic Timothy Y. Chow July 11, 2018 In 2010, Vladimir Voevodsky, a Fields Medalist and a professor at the Insti- tute for Advanced Study, gave a lecture entitled, “What If Current Foundations of Mathematics Are Inconsistent?” Voevodsky invited the audience to consider seriously the possibility that first-order Peano arithmetic (or PA for short) was inconsistent. He briefly discussed two of the standard proofs of the consistency of PA (about which we will say more later), and explained why he did not find either of them convincing. He then said that he was seriously suspicious that an inconsistency in PA might someday be found. About one year later, Voevodsky might have felt vindicated when Edward Nelson, a professor of mathematics at Princeton University, announced that he had a proof not only that PA was inconsistent, but that a small fragment of primitive recursive arithmetic (PRA)—a system that is widely regarded as implementing a very modest and “safe” subset of mathematical reasoning—was inconsistent [11]. However, a fatal error in his proof was soon detected by Daniel Tausk and (independently) Terence Tao. Nelson withdrew his claim, remarking that the consistency of PA remained “an open problem.” For mathematicians without much training in formal logic, these claims by Voevodsky and Nelson may seem bewildering. While the consistency of some axioms of infinite set theory might be debatable, is the consistency of PA really “an open problem,” as Nelson claimed? Are the existing proofs of the con- sistency of PA suspect, as Voevodsky claimed? If so, does this mean that we cannot be sure that even basic mathematical reasoning is consistent? This article is an expanded version of an answer that I posted on the Math- Overflow website in response to the question, “Is PA consistent? do we know arXiv:1807.05641v1 [math.LO] 16 Jul 2018 it?” Since the question of the consistency of PA seems to come up repeat- edly, and continues to generate confusion, a more extended discussion seems worthwhile.
    [Show full text]
  • Arxiv:1311.3168V22 [Math.LO] 24 May 2021 the Foundations Of
    The Foundations of Mathematics in the Physical Reality Doeko H. Homan May 24, 2021 It is well-known that the concept set can be used as the foundations for mathematics, and the Peano axioms for the set of all natural numbers should be ‘considered as the fountainhead of all mathematical knowledge’ (Halmos [1974] page 47). However, natural numbers should be defined, thus ‘what is a natural number’, not ‘what is the set of all natural numbers’. Set theory should be as intuitive as possible. Thus there is no ‘empty set’, and a single shoe is not a singleton set but an individual, a pair of shoes is a set. In this article we present an axiomatic definition of sets with individuals. Natural numbers and ordinals are defined. Limit ordinals are ‘first numbers’, that is a first number of the Peano axioms. For every natural number m we define ‘ωm-numbers with a first number’. Every ordinal is an ordinal with a first ω0-number. Ordinals with a first number satisfy the Peano axioms. First ωω-numbers are defined. 0 is a first ωω-number. Then we prove a first ωω-number notequal 0 belonging to ordinal γ is an impassable barrier for counting down γ to 0 in a finite number of steps. 1 What is a set? At an early age you develop the idea of ‘what is a set’. You belong to a arXiv:1311.3168v22 [math.LO] 24 May 2021 family or a clan, you belong to the inhabitants of a village or a particular region. Experience shows there are objects that constitute a set.
    [Show full text]
  • The Continuum Hypothesis, Part I, Volume 48, Number 6
    fea-woodin.qxp 6/6/01 4:39 PM Page 567 The Continuum Hypothesis, Part I W. Hugh Woodin Introduction of these axioms and related issues, see [Kanamori, Arguably the most famous formally unsolvable 1994]. problem of mathematics is Hilbert’s first prob- The independence of a proposition φ from the axioms of set theory is the arithmetic statement: lem: ZFC does not prove φ, and ZFC does not prove φ. ¬ Cantor’s Continuum Hypothesis: Suppose that Of course, if ZFC is inconsistent, then ZFC proves X R is an uncountable set. Then there exists a bi- anything, so independence can be established only ⊆ jection π : X R. by assuming at the very least that ZFC is consis- → tent. Sometimes, as we shall see, even stronger as- This problem belongs to an ever-increasing list sumptions are necessary. of problems known to be unsolvable from the The first result concerning the Continuum (usual) axioms of set theory. Hypothesis, CH, was obtained by Gödel. However, some of these problems have now Theorem (Gödel). Assume ZFC is consistent. Then been solved. But what does this actually mean? so is ZFC + CH. Could the Continuum Hypothesis be similarly solved? These questions are the subject of this ar- The modern era of set theory began with Cohen’s ticle, and the discussion will involve ingredients discovery of the method of forcing and his appli- from many of the current areas of set theoretical cation of this new method to show: investigation. Most notably, both Large Cardinal Theorem (Cohen). Assume ZFC is consistent. Then Axioms and Determinacy Axioms play central roles.
    [Show full text]
  • Coq in a Hurry Yves Bertot
    Coq in a Hurry Yves Bertot To cite this version: Yves Bertot. Coq in a Hurry. Types Summer School, also used at the University of Nice Goteborg, Nice, 2006. inria-00001173v2 HAL Id: inria-00001173 https://cel.archives-ouvertes.fr/inria-00001173v2 Submitted on 24 May 2006 (v2), last revised 19 Oct 2017 (v6) HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Coq in a Hurry Yves Bertot May 24, 2006 These notes provide a quick introduction to the Coq system and show how it can be used to define logical concepts and functions and reason about them. It is designed as a tutorial, so that readers can quickly start their own experiments, learning only a few of the capabilities of the system. A much more comprehensive study is provided in [1], which also provides an extensive collection of exercises to train on. 1 Expressions and logical formulas The Coq system provides a language in which one handles formulas, verify that they are well-formed, and prove them. Formulas may also contain functions and limited forms of computations are provided for these functions. The first thing you need to know is how you can check whether a formula is well- formed.
    [Show full text]
  • Computation and Reflection in Coq And
    Computation and reflection in Coq and HOL John Harrison Intel Corporation, visiting Katholieke Universiteit Nijmegen 20th August 2003 0 What is reflection? Stepping back from the straightforward use of a formal system and reasoning about it (‘reflecting upon it’). • Exploiting the syntax to prove general/meta theorems • Asserting consistency or soundness Similar concept in programming where programs can examine and modify their own syntax [Brian Cantwell Smith 1984]. The ‘reflection principle’ in ZF set theory is rather different. 1 Logical power of reflection The process of reflection may involve: • Adding new theorems that were not provable before • Adding a new, but conservative, rule to the logic • Making no extension of the logic [Giunchiglia and Smail 1989] use ‘reflection principles’ to refer to logic-strengthening rules only, but use ‘reflection’ to describe the process in all cases. 2 Reflection principles The classic reflection principle is an assertion of consistency. More generally, we can assert the ‘local reflection schema’: ⊢ Pr(pφq) ⇒ φ By Godel’s¨ Second Incompleteness Theorem, neither is provable in the original system, so this makes the system stronger. The addition of reflection principles can then be iterated transfinitely [Turing 1939], [Feferman 1962], [Franzen´ 2002]. 3 A conservative reflection rule Consider instead the following reflection rule: ⊢ Pr(pφq) ⊢ φ Assuming that the original logic is Σ-sound, this is a conservative extension. On the other hand, it does make some proofs much shorter. Whether it makes any interesting ones shorter is another matter. 4 Total internal reflection We can exploit the syntax-semantics connection without making any extensions to the logical system.
    [Show full text]
  • A Complete Proof of Coq Modulo Theory
    EPiC Series in Computing Volume 46, 2017, Pages 474–489 LPAR-21. 21st International Conference on Logic for Programming, Artificial Intelligence and Reasoning Coq without Type Casts: A Complete Proof of Coq Modulo Theory Jean-Pierre Jouannaud1;2 and Pierre-Yves Strub2 1 INRIA, Project Deducteam, Université Paris-Saclay, France 2 LIX, École Polytechnique, France Abstract Incorporating extensional equality into a dependent intensional type system such as the Calculus of Constructions provides with stronger type-checking capabilities and makes the proof development closer to intuition. Since strong forms of extensionality lead to undecidable type-checking, a good trade-off is to extend intensional equality with a decidable first-order theory T , as done in CoqMT, which uses matching modulo T for the weak and strong elimination rules, we call these rules T -elimination. So far, type-checking in CoqMT is known to be decidable in presence of a cumulative hierarchy of universes and weak T -elimination. Further, it has been shown by Wang with a formal proof in Coq that consistency is preserved in presence of weak and strong elimination rules, which actually implies consistency in presence of weak and strong T -elimination rules since T is already present in the conversion rule of the calculus. We justify here CoqMT’s type-checking algorithm by showing strong normalization as well as the Church-Rosser property of β-reductions augmented with CoqMT’s weak and strong T -elimination rules. This therefore concludes successfully the meta-theoretical study of CoqMT. Acknowledgments: to the referees for their careful reading. 1 Introduction Type checking for an extensional type theory being undecidable, as is well-known since the early days of Martin-Löf’s type theory [16], most proof assistants implement an intensional type theory.
    [Show full text]
  • THE PEANO AXIOMS 1. Introduction We Begin Our Exploration
    CHAPTER 1: THE PEANO AXIOMS MATH 378, CSUSM. SPRING 2015. 1. Introduction We begin our exploration of number systems with the most basic number system: the natural numbers N. Informally, natural numbers are just the or- dinary whole numbers 0; 1; 2;::: starting with 0 and continuing indefinitely.1 For a formal description, see the axiom system presented in the next section. Throughout your life you have acquired a substantial amount of knowl- edge about these numbers, but do you know the reasons behind your knowl- edge? Why is addition commutative? Why is multiplication associative? Why does the distributive law hold? Why is it that when you count a finite set you get the same answer regardless of the order in which you count the elements? In this and following chapters we will systematically prove basic facts about the natural numbers in an effort to answer these kinds of ques- tions. Sometimes we will encounter more than one answer, each yielding its own insights. You might see an informal explanation and then a for- mal explanation, or perhaps you will see more than one formal explanation. For instance, there will be a proof for the commutative law of addition in Chapter 1 using induction, and then a more insightful proof in Chapter 2 involving the counting of finite sets. We will use the axiomatic method where we start with a few axioms and build up the theory of the number systems by proving that each new result follows from earlier results. In the first few chapters of these notes there will be a strong temptation to use unproved facts about arithmetic and numbers that are so familiar to us that they are practically part of our mental DNA.
    [Show full text]
  • Elementary Higher Topos and Natural Number Objects
    Elementary Higher Topos and Natural Number Objects Nima Rasekh 10/16/2018 The goal of the talk is to look at some ongoing work about logical phenom- ena in the world of spaces. Because I am assuming the room has a topology background I will therefore first say something about the logical background and then move towards topology. 1. Set Theory and Elementary Toposes 2. Natural Number Objects and Induction 3. Elementary Higher Topos 4. Natural Number Objects in an Elementary Higher Topos 5. Where do we go from here? Set Theory and Elementary Toposes A lot of mathematics is built on the language of set theory. A common way to define a set theory is via ZFC axiomatization. It is a list of axioms that we commonly associate with sets. Here are two examples: 1. Axiom of Extensionality: S = T if z 2 S , z 2 T . 2. Axiom of Union: If S and T are two sets then there is a set S [T which is characterized as having the elements of S and T . This approach to set theory was developed early 20th century and using sets we can then define groups, rings and other mathematical structures. Later the language of category theory was developed which motivates us to study categories in which the objects behave like sets. Concretely we can translate the set theoretical conditions into the language of category theory. For example we can translate the conditions above as follows: 1 1. Axiom of Extensionality: The category has a final object 1 and it is a generator.
    [Show full text]
  • Prof. V. Raghavendra, IIT Tirupati, Delivered a Talk on 'Peano Axioms'
    Prof. V. Raghavendra, IIT Tirupati, delivered a talk on ‘Peano Axioms’ on Sep 14, 2017 at BITS-Pilani, Hyderabad Campus Abstract The Peano axioms define the arithmetical properties of natural numbers and provides rigorous foundation for the natural numbers. In particular, the Peano axioms enable an infinite set to be generated by a finite set of symbols and rules. In mathematical logic, the Peano axioms, also known as the Dedekind–Peano axioms or the Peano postulates, are a set of axioms for the natural numbers presented by the 19th century Italian mathematician Giuseppe Peano. These axioms have been used nearly unchanged in a number of metamathematical investigations, including research into fundamental questions of whether number theory is consistent and complete. The need to formalize arithmetic was not well appreciated until the work of Hermann Grassmann, who showed in the 1860s that many facts in arithmetic could be derived from more basic facts about the successor operation and induction.[1] In 1881, Charles Sanders Peirce provided an axiomatization of natural-number arithmetic.[2] In 1888, Richard Dedekind proposed another axiomatization of natural-number arithmetic, and in 1889, Peano published a more precisely formulated version of them as a collection of axioms in his book, The principles of arithmetic presented by a new method (Latin: Arithmetices principia, nova methodo exposita). The Peano axioms contain three types of statements. The first axiom asserts the existence of at least one member of the set of natural numbers. The next four are general statements about equality; in modern treatments these are often not taken as part of the Peano axioms, but rather as axioms of the "underlying logic".[3] The next three axioms are first- order statements about natural numbers expressing the fundamental properties of the successor operation.
    [Show full text]
  • CONSTRUCTION of NUMBER SYSTEMS 1. Peano's Axioms And
    CONSTRUCTION OF NUMBER SYSTEMS N. MOHAN KUMAR 1. Peano's Axioms and Natural Numbers We start with the axioms of Peano. Peano's Axioms. N is a set with the following properties. (1) N has a distinguished element which we call `1'. (2) There exists a distinguished set map σ : N ! N. (3) σ is one-to-one (injective). (4) There does not exist an element n 2 N such that σ(n) = 1. (So, in particular σ is not surjective). (5) (Principle of Induction) Let S ⊂ N such that a) 1 2 S and b) if n 2 S, then σ(n) 2 S. Then S = N. We call such a set N to be the set of natural numbers and elements of this set to be natural numbers. Lemma 1.1. If n 2 N and n 6= 1, then there exists m 2 N such that σ(m) = n. Proof. Consider the subset S of N defined as, S = fn 2 N j n = 1 or n = σ(m); for some m 2 Ng: By definition, 1 2 S. If n 2 S, clearly σ(n) 2 S, again by definition of S. Thus by the Principle of Induction, we see that S = N. This proves the lemma. We define the operation of addition (denoted by +) by the following two recursive rules. (1) For all n 2 N, n + 1 = σ(n). (2) For any n; m 2 N, n + σ(m) = σ(n + m). Notice that by lemma 1.1, any natural number is either 1 or of the form σ(m) for some m 2 N and thus the defintion of addition above does define it for any two natural numbers n; m.
    [Show full text]
  • Calculi for Program Incorrectness and Arithmetic Philipp Rümmer
    Thesis for the Degree of Doctor of Philosophy Calculi for Program Incorrectness and Arithmetic Philipp R¨ummer Department of Computer Science and Engineering Chalmers University of Technology and G¨oteborg University SE-412 96 G¨oteborg Sweden G¨oteborg, 2008 Calculi for Program Incorrectness and Arithmetic Philipp R¨ummer ISBN 978-91-628-7242-7 c Philipp R¨ummer, 2008 Technical Report no. 50D Department of Computer Science and Engineering Research Group: Formal Methods Department of Computer Science and Engineering Chalmers University of Technology and G¨oteborg University SE-412 96 G¨oteborg, Sweden Telephone +46 (0)31–772 1000 Printed at Chalmers, G¨oteborg, 2008 II Abstract This thesis is about the development and usage of deductive methods in two main areas: (i) the deductive dis-verification of programs, i.e., how techniques for deductive verification of programs can be used to detect program defects, and (ii) reasoning modulo integer arithmetic, i.e., how to prove the validity (and, in special cases, satisfiability) of first-order formulae that involve integer arithmetic. The areas of program verification and of testing are traditionally considered as complementary: the former searches for a formal proof of program correctness, while the latter searches for witnesses of program incorrectness. Nevertheless, de- ductive verification methods can discover bugs indirectly: the failure to prove the absence of bugs is interpreted as a sign for the incorrectness of the program. This approach is bound to produce “false positives” and bugs can be reported also for correct programs. To overcome this problem, I investigate how techniques that are normally used for verification can be used to directly prove the incorrectness of programs.
    [Show full text]
  • Presburger Arithmetic: Cooper’S Algorithm Top- Ics in Em- Michael R
    02917 Ad- 02917 Advanced Topics in Embedded Systems vanced Presburger Arithmetic: Cooper’s algorithm Top- ics in Em- Michael R. Hansen bed- ded Sys- tems Michael R. Hansen 1 DTU Informatics, Technical University of Denmark Presburger Arithmetic: Cooper’s algorithm MRH 17/06/2010 Introduction 02917 Ad- vanced Presburger Arithmetic (introduced by Mojzesz Presburger in 1929), is Top- the first-order theory of natural numbers with addition. ics in Em- Examples of formulas are: ∃x.2x = y and ∃x.∀y.x + y > z. bed- ded Unlike Peano Arithmetic, which also includes multiplication, Sys- Presburger Arithmetic is a decidable theory. tems Michael R. Hansen We shall consider the algorithm introduced by D.C Cooper in 1972. The presentation is based on: Chapter 7: Quantified Linear Arithmetic of The Calculus of Computation by Bradley and Manna. 2 DTU Informatics, Technical University of Denmark Presburger Arithmetic: Cooper’s algorithm MRH 17/06/2010 Introduction 02917 Ad- vanced Presburger Arithmetic (introduced by Mojzesz Presburger in 1929), is Top- the first-order theory of natural numbers with addition. ics in Em- Examples of formulas are: ∃x.2x = y and ∃x.∀y.x + y > z. bed- ded Unlike Peano Arithmetic, which also includes multiplication, Sys- Presburger Arithmetic is a decidable theory. tems Michael R. Hansen We shall consider the algorithm introduced by D.C Cooper in 1972. The presentation is based on: Chapter 7: Quantified Linear Arithmetic of The Calculus of Computation by Bradley and Manna. 3 DTU Informatics, Technical University of Denmark Presburger Arithmetic: Cooper’s algorithm MRH 17/06/2010 Introduction 02917 Ad- vanced Presburger Arithmetic (introduced by Mojzesz Presburger in 1929), is Top- the first-order theory of natural numbers with addition.
    [Show full text]